在上一篇的确保linux vps及服务器更加安全之xshell设置密钥登录文章中已经分享到xshell使用密钥登陆我们的vps服务器确保机器的安全,但是很多同学们并不是都像老左一样用xshell,而还是有很多使用putty登陆ssh,所以重新起一篇文章单独再分享用putty设置密钥登陆linux vps主机的方法。
ps:我们如果需要使用putty一定要到正规的下载站最好是官方网站下载,所谓的破解版、绿色版、中文精简版等等可能有被人植入木马,这样会影响我们的账户安全。
第一步、生成密钥
看到很多教程有提到用puttygen.exe文件可以生成密钥的,但是可能会出现server refused our key这样的登陆错误,所以我们这里直接使用vps远程设置密钥,然后下载到本地。
根据上图的演示,登陆到ssh之后,我们先输入ssh-keygen -t rsa 然后会要求我们确定 路径我们直接回车会自动创建/root/.ssh文件夹目录,然后回车后出入密钥密码,输入两次继续回车密钥就可以在目录中看到。
我们把root/.ssh目录中的id_rsa和id_rsa.pub下载到本地备份等会需要使用。
第二步、修改sshd配置文件
a - 将root/.ssh中的id_rsa.pub修改名字为authorized_keys 并且用chmod 600 authorized_keys设置权限。
b - 找到/etc/ssh/sshd_config ,把rsaauthentication和pubkeyauthentication两行前面的#注释去掉。
c - 重启sshd服务。
1
2
|
debian/ubuntu执行:/etc/init.d/ssh restart centos执行:/etc/init.d/sshd restart |
第三步、客户端配置密钥
我们打开puttygen.exe文件,载入密钥。
输入在ssh中设置的密钥密码。
保存私钥。
保存的文件名可以设置为id_rsa.ppk,也可以自定义名字但后缀必须是ppk,后面我们有需要用到。
第四步、设置putty认证链接
正常的登陆,开始可能需要我们输入密钥密码。
第五步、再次修改sshd配置文件
修改/etc/ssh/sshd_config 文件中找到passwordauthentication后面的yes改成no
然后重启sshd
1
2
|
debian/ubuntu执行:/etc/init.d/ssh restart centos执行:/etc/init.d/sshd restart |
这样我们的putty登陆使用密钥也配置完成,即便他们知道我们的root密码也不好登陆,所以到本地的几个文件需要确保安全,只要你本机电脑安全,你的vps就相对足够的安全。