Linux中通过ssh将客户端与服务端的远程连接
前提需要:
1.在VMware中装上两台linux虚拟机,本博客使用的都是CentOS 7.
2.两部虚拟机可以通过命令ping通.
3.两部虚拟机中已经通过yum本地仓库安装了sshd服务.
首先 1.执行命令 :yum install sshd 安装sshd服务
2.启动sshd服务 命令:systemctl start sshd
3.查看是否有22号端口因为以后要用到 命令:netstat -an|more
再来介绍一下我使用的虚拟机以及所配置的IP
1. hbza IP: 192.168.37.100
2.CentOS 7 IP: 192.168.37.200
3.yum IP:192.168.37.10
事先我们已经ping通各个虚拟机
在这里我介绍两种方法:
1.通过基于linux口令的安全认证,我们将hbza作为服务端,以CentOS7为客户端,在CentOS7上执行命令:ssh 192.168.37.100
通过输入密码可以登录服务端在这里我们看到主机名称已经变为CZS_hbza
第二种方法:基于秘钥的安全认证 在本地生成秘钥对后将公钥传送至服务端,进行比较配对。
第一步:在服务端hbza上生成秘钥对 输入命令: ssh-keygen 需要注意的是需要敲击两次回车
第二步:将生成的秘钥传输到远程主机hbza中,输入命令:ssh-copy-id 192.168.37.100 在稍后的提醒中输入hbza的密码,出现所示界面,表明已经传输成功。
第三步:在远程主机hbza中修改sshd的配置文件 输入命令: vi /etc/ssh/sshd_config 命令中就是配置文件的所在地
修改:1.将允许密码验证的参数设置改为no yes→no
2.将允许密钥验证的参数设置为yes
3.保存退出 ESC :wq
第四步:保存退出后 输入命令:systemctl restart sshd 重启sshd服务进程
第五步:在客户端尝试尝试无密码的远程登录 输入ssh 192.168.37.100