CentOS设置SSH Key登录

SSH是我们登录VPS常用的方式,因此SSH账号的安全至关重要。常见的用户名+密码的登录方式很容易受到暴力破解的影响,为了避免影响,我们可以直接禁止用户名+密码登录VPS的方式,改用密钥登录,既保证了安全,又方便快捷。下面就介绍一下配置ssh key登录的方法。


一、PuttyGen以及Putty软件的下载

这一步看似简单,其实有着至关重要的作用。大家一定要到官方网站进行下载(putty官网可能被墙,请科学上网),一些中文版及不安全链接下载的软件可能会存有后门,带来极大的安全隐患。

我们需要下载的是putty.exe和puttygen.exe两个程序



二、密钥的生成

首先利用用户名+密码登录VPS,在终端中利用以下命令生成RSA密钥

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

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

进入密钥生成的目录,可以看见两个文件id_rsa和id_rsa.pub,将这两个文件下载下来,保存好为后面做准备。


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

[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  

注:CentOS7中的firewall配置

firewall中默认ssh端口为22,在修改端口后需要对其进行设置才能正常登录

复制 firewalld 有关 sshd 的配置文件:

[plain]  view plain  copy
  1. cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/  
[plain]  view plain  copy
  1. vi /etc/firewalld/services/ssh.xml  
修改<port protocol="tcp" port="22"/>将“22”改为所需的端口

保存后重载sshd服务

[plain]  view plain  copy
  1. firewall-cmd --reload  

三、密钥配置

打开puttygen.exe软件,将下载的id_rsa文件载入(Load),如果刚才设置了密码,则需要输入密码才能载入,载入成功后如图

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


四、Putty客户端配置

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


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


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

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


最后,修改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账户,建议还是为密钥设置密码以防万一。遇到问题查看/var/log。

No supported authentication methods available [preauth]
Feb  2 01:30:07 ip-172-31-8-90 su: pam_unix(su:session): session closed for user easy.yan
Feb  2 01:31:08 ip-172-31-8-90 sshd[6084]: Authentication refused: bad ownership or modes for directory /home/easy.yan/.ssh
Feb  2 01:31:09 ip-172-31-8-90 sshd[6084]: Received disconnect from 58.177.123.225: 11: No supported authentication methods available [preauth]
 Authentication refused: bad ownership or modes for directory /home/easy.yan/.ssh

注意keys 文件权限要600. /home/XX/.ssh 权限要600. ower to XX


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值