使用Putty等远程连接工具操作远程的服务器,固然简单方便。但是每次都要明文输入root用户的密码,不免存在泄密的风险。这就需要用到一种叫做“秘钥认证”的技术,使用该技术可以实现两个主机之间的免密码登录,大大提高了操作的安全性。下面本文就来以putty远程连接工具为例,详细介绍“秘钥认证”的配置过程。
这里提供一个putty的工具包集合:
pputty-32bit.zip,提取码:ljcl
putty-64bit.zip,提取码:v4sb
Step 1:打开putty工具包中的puttygen.exe秘钥生成工具,点击“Generate”按钮,然后鼠标在puttygen工具的窗口上来回移动,以采集更多的随机点。
Step 2:待秘钥对生成以后,点击“Save private key”保存私钥到文件,如:E:/centos7.ppk;点击“Save public key”保存公钥到文件,如:E:/centos7.pub。
注:这里可以设置秘钥的密码,注意不要与root用户的密码相同。设置了秘钥密码后,登录系统时需要提供该密码才能认证通过;即使私钥文件丢失,没有秘钥密码也是无法访问系统的。
Step 3:以root用户登录centos7操作系统,然后创建秘钥存放的目录:/root/.ssh,并授于权限700(即只有root用户有权限);
Step 4:创建公钥的文件:vi /root/.ssh/authorized_keys
,将公钥文件E:/centos7.pub中的内容复制粘贴到/root/.ssh/authorized_keys文件并保存退出。
Step 5:使用 “setenforce 0” 临时关闭selinux防火墙(重启失效);编辑selinux配置文件:vi /etc/selinux/config,将SELINUX的值设置为disabled。
Step 6:打开putty工具,加载我们之前保存的centos7会话,点击左边窗口中的Connection–SSH–Auth,点击右边“Browse(浏览)”选择刚才保存的私钥文件E:/centos7.ppk。然后点击左边窗口的Session,回到会话界面,保存centos7会话(这样我们的配置才能永久生效)。
Step 7:现在打开centos7会话,输入root用户将直接登录系统,不需要输入root用户的密码。如果Step 2中设置了秘钥的密码,则需要输入秘钥的密码登录系统。
至此,秘钥认证已经配置完成,祝您玩的愉快!