阅读 75

ssh远程连接命令,linux文件服务器搭建

一. SSH服务

什么是ssh为远程登录和其他网络服务提供安全性的协议

提供字符接口远程登录管理,默认使用22号端口,以密文形式通过网络传输数据

shh服务验证类型基于密码验证知道服务帐户的密码,并通过ssh连接到帐户

必须基于私钥认证为用户生成私钥对,通过shh连接后,客户端向发出请求,用客户端私钥进行验证,服务器收到后,在用户目录下查找公钥,进行比对,匹配

安装SSH服务官方网站: http://www.openssh.com

服务名称: sshd

服务器端主程序:/usr/sbin/sshd

客户端:/usr/bin/ssh

服务器端主配置文件:/etc/ssh/sshd_config

客户端配置文件:/etc/ssh/ssh_config

配置openssh服务器端sshd服务器的配置文件缺省位于/etc/ssh/sshd_config中

端口22监听的端口(缺省22 )也可以使用多个端口。 也就是说,重用名为Port的设置项目。 #例如,想要将sshd端口开放到22和222时,添加以下内容

端口22

端口222

#然后重新启动sshd就好了。 建议将端口number更改为其他端口。 防止他人暴力解读。

监听器地址0.0.0.0监听的IP地址(缺省为监听所有IP )设置sshd服务器绑定的IP地址,0.0.0.0监听所有地址该值可以写入本地IP地址和所有地址中

SyslogFacility AUTHPRIV当有人使用SSH登录系统时,SSH会记录信息。 此信息为AUTHPRIV类型。 shd服务日志存储在/var/log/secure中

为什么没有在sshd配置文件中指定日志,但日志却保存在/var/log/secure中?

# vim /etc/rsyslog.conf #审核

LogLevel INFO记录级别! INFO水平以上。 禁用usednsnodns反向分析。 通常,为了确定客户机源合法,会使用DNS反向查找客户机的主机名,但如果要通过内部网进行互连,则设置为no会加快连接速度。 PermitRootLogin no禁止限制ROOT用户使用PermitEmptyPasswords no禁止密码为空的用户远程登录LoginGraceTime 2m登录验证流程的时间。 默认值为2分钟。 这意味着,如果在多长时间内无法连接到ssh服务器,将强制断开连接。 没有单位时的默认时间是秒。 实际MaxAuthTries 6限制用户登录验证过程的最大重试次数DenyUsers zhangsan lisi拒绝XX用户的远程登录系统,其他为AllowUsers漫不经心的招牌admin @ 61.23 . 管理员只能在主机61.23.24.25上登录。 其他包括: PasswordAuthentication yes是否启用密码验证,PubkeyAuthentication yes是否启用密钥对验证,authorizedkeysfile.ssh/authord 请勿同时使用AllowUsers和DenyUsers

rintLastLog  yes    显示上次登入的信息,如上次登入的时间、地点等等,默认是yesPrintMotd  yes  登入后是否显示出一些信息,即打印出 /etc/motd这个文档的内容。

例如给sshd服务添加一些警告信息

修改/etc/motd

# cat /etc/motd

# echo '欢迎进入192.168.10.30服务器,注意:“禁止私自”使用“rm -rf”命令,如使用请联经理!请配合!'> /etc/motd

测试:连接ssh,显示结果



配置文件sshd_config修改后,重启sshd服务

#systemctl  restart  sshd

使用SSH客户端程序方式1: ssh 用户名@服务器地址

方式2: ssh -l 用户名  服务器地址

方式3: ssh  服务器地址(缺省时会尝试以当前的本地用户名进行登录)

使用scp命令远程复制文件/目录

方式1: scp 用户名@服务器地址:源文件 目标路径

方式2: scp 本地文件 用户名@服务器地址:目标路径

使用图形客户端软件xshell

安装lrzsz 可以在Linux 和 windows直接相互传文件,

rz命令从本地上传文件到服务器

sz命令件从服务器下载文件到本地


sshd服务防止暴力破解

方法1:配置安全的sshd服务

密码复杂修改端口不允许root登录,添加普通账号,授予root权限不允许密码登录,用秘钥登录

方法2:秘钥认证sshd认证

创建秘钥对

ssh-keygen  -t  rsa

Id_rsa是私钥文件

Id_rsa.pub是公钥

公钥文件上传服务器

ssh-copy-id  -i  root@192.168.1.1 

输入密码

ll  -d  /root/.ssh

ll  /root/.ssh

客户端秘钥对验证

ssh  root@192.168.1.1

sudo  -i

whoami

Xshell使用密钥对验证连接远程主机192.168.1.1

将私钥文件拷贝到windows主机上,执行sz命令(id_rsa)由lrzsz软件包提供

在Xshell新建连接192.168.1.1,在身份验证选择 “Public key”,通过浏览按钮导入拷贝私钥

方法3:通过pam模块来防止暴力破解ssh

# vim /etc/pam.d/sshd

在第一行下面添加一行:

auth  required pam_tally2.so deny=3 unlock_time=600 even_deny_root root_unlock_time=1200

#尝试登陆失败超过3次,普通用户600秒解锁,root用户1200秒解锁

手动解除锁定:

查看某一用户错误登陆次数:

#pam_tally2  --user  用户名

例如,查看zhangsan用户的错误登陆次数:

#pam_tally2  --user  zhangsan

清空某一用户错误登陆次数:

#pam_tally2  --user  用户名  --reset

例如,清空zhangsan用户的错误登陆次数,

#pam_tally2   --user  zhangsan  --reset

在远程计算机上运行命令

输出重定向至本地文件:

#ssh  user@host  ‘command1 ; command2’ > log.local     //单引号

例如:ssh  root@192.168.36.128  ‘hostname;ifconfig’ > log.local

输出重定向至远程文件:

#ssh  user@host  ‘command1 ; command2 > log.remote’   //单引号

例如:ssh  root@192.168.36.128  ‘hostname;ifconfig > log.remote’


文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐