#环境 主机a: 172.25.254.100 主机b:172.25.254.200 (且rm -rf ~.ssh/)
默认无法使用远程主机的图形
(如打开一个gedit,此时这个进程属于b主机)
#当a远程连接b,输入yes后,b会给a发送一个 身份公钥(key),a会把这个key存放在~/.ssh/known_hosts这个目录中。b持有私钥,当a再次连接b时,b会对a进行身份确认。
如下:如果key匹配失败,身份验证失败,则会拒绝连接
解决方案
#ssh常用参数(-l指定登录用户,-X开启图形)
注:以上认证类型属于对称加密(加密和解密时同一串字符),容易泄露,遗忘,可暴力破解等
#非对称加密(加密用公钥,解密用私钥)不会被盗用,攻击者无法通过无秘钥方式登录服务器
( 200主机中存放密钥的文件目录/root/.ssh/authorized keys,实际上就是把100主机中 的/root/.ssh/id_rsa.pub(公钥)通过 ssh-copy-id -i命令复制了过来。)
#sshd安全优化
关闭火墙,在文件中修改端口号port,重启sshd服务,(netstat -antlupe | grep sshd命令查看端口,-a为所有,-n不做解析,-l正在活跃的端口,-tu为tcp与udp协议,-p显示端口进程,-e显示扩展信息)此时a登录b主机需要加上端口号才可登录成功(ssh -l root 172.25.254.200 -p 端口号)
默认为yes,改为no则root用户被禁止使用sshd服务的认证(如下图)
DenyUsers设置用户黑名单,此时远程登录主机时使用westos用户将失败,但其他用户可以登录
AllowUsers设置用户白名单,此时则只有白名单中的用户可以登录,其他用户无法登录