CentOS设置SSH Key登录

下载putty.exeputtygen.exe两个程序



SSH登录,在终端中利用以下命令生成RSA密钥

[plain]  view plain  copy
  1. ssh-keygen -t rsa  

CentOS设置SSH Key登录_第1张图片


生成密钥时选择默认位置即可,同时可以选择为密钥增加密码(设置密码后,使用密钥时还需要输入密码)

[plain]  view plain  copy
  1. cd /root/.ssh
  2. ls


密钥生成的目录中将其重命名,并且设置权限

[plain]  view plain  copy
  1. mv id_rsa.pub authorized_keys  
  2. chmod 600 authorized_keys

编辑sshd_config,将RSAAuthentication和PubkeyAuthentication两行前面的 # 去掉

[plain]  view plain  copy
  1. vi /etc/ssh/sshd_config  

为了安全还可以修改默认的SSH端口,找到#port 22,去掉前面的#,然后修改port后的数字。


保存后重启SSHD服务(CentOS7中为systemctl restart sshd.service)

[plain]  view plain  copy
  1. /etc/init.d/sshd restart  

配置秘钥

使用WINSCP,把文件id_rsa下载到我们的电脑

打开puttygen.exe软件,将下载的id_rsa文件载入(Load),如果刚才设置了密码,则需要输入密码才能载入,载入成功后如图CentOS设置SSH Key登录_第2张图片

同样,在Key passphrase中可以设置密钥的密码,如不想设置,直接点击Save private key即可,根据提示保存为*.ppk文件


打开putty客户端,输入VPS的IP地址和SSH连接的端口号

CentOS设置SSH Key登录_第3张图片

进入SSH选项,点击Browse选择刚才保存的*.ppk文件

CentOS设置SSH Key登录_第4张图片

然后返回Session选项,点击Load保存配置。

正常进行登录,若刚才设置了密钥密码,则输入密码后可以正常登录

CentOS设置SSH Key登录_第5张图片

最后,修改sshd_config,将PasswordAuthentication后面的yes改成no,并且重启SSHD(CentOS7中为systemctl restart sshd.service)

[plain]  view plain  copy
  1. vi /etc/ssh/sshd_config  
  2. /etc/init.d/sshd restart  



到这里设置就完成了


最后,一定要保存好自己的密钥,任何拿到该密钥的人都可以登录你的root账户,建议还是为密钥设置密码以防万一。


你可能感兴趣的:(LINUX)