实验目的:掌握SSH密钥登录的配置与应用
实验环境:
两台centos服务器
一台作为SSH服务器
一台作为SSH客户端,使用密钥连接SSH服务器
实验原理:SSH登录除了传统的密码登录,可以使用密钥文件登录,结合PAM模块,也可以实现双因子登录等。
实验步骤:
配置服务器SSH密钥登录
以下操作使用服务器进行
1、编辑SSH配置文件
vim /etc/ssh/sshd_config
2、删除#号
删除PubkeyAuthentication yes此行前面的#号
此行表示,允许密钥登陆
保存并退出
重启ssh服务
systemctl restart sshd
二、使用客户端生成密钥
以下操作使用客户端进行
1、生成SSH登录的密钥对
ssh-keygen -t rsa
查看生成的密钥
ls -l /root/.ssh/
确保以下两个文件是新生成的。
三、上传客户端公钥证书到服务器
以下操作使用客户端进行
1、使sftp连接服务器
sftp root@192.168.0.6
输入yes
输入服务器密码
2、上传公钥文件
put /root/.ssh/id_rsa.pub
3、退出sftp客户端
exit
四、配置服务器公钥
以下操作使用服务器进行
通过第三步,我们已经将公钥证书放到了/root/id_rsa.pub
这里我们将公钥文件输出到服务器配置文件中
cat /root/id_rsa.pub >> ~/.ssh/authorized_keys
五、验证密钥登录
以下操作使用客户端登录
1、指定私钥文件登录
ssh -i /root/.ssh/id_rsa root@192.168.0.6
此时我们可以看到直接登录进了服务器,并没有输入密码。因为我们使用了证书验证
总结
在使用私钥证书登录时,我们也可以给私钥证书加上密码,此时不是验证服务器的密码,而是验证私钥证书的加密密码。
同理在Windows下,也可以使用ssh工具,如xshell实现ssh的密钥登录,有兴趣同学可以自己尝试。
更多推荐
密码学之使用密钥登录SSH服务器
发布评论