SSH使用证书登录CentOS

2019-01-11 20:30:00    赵勤松    2270    原创
摘要: 一般情况下,我们使用用户名+密码的方式来远程登录服务器,密码难记,而且有别人在场的情况下,也容易泄漏,因此,我们推荐使用证书+密码(也可免密)的方式,提高系统的安全性。

使用环境:CentOS

连接工具:Termius(配置RSA私钥)


一、生成证书


# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): y
Enter passphrase (empty for no passphrase): 你需要设置的密码,或为空
Enter same passphrase again: 重复之前的密码
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:iYbJrgoqNtdTIY+613aFWb538yMH65SuC6awog7w0H4 root@someapp
The key's randomart image is:
+---[RSA 2048]----+
|                 |
|                 |
|                 |
| . . + o . .     |
|o . + * S =      |
|.+ . o o o o ..  |
|o o E.o  o. .oo  |
|=o * +ooo...o+ = |
|*+=.+.o..  o=o+ =|
+----[SHA256]-----+


执行完以后,在/root/.ssh/目录下,将生成id_rsa(私钥)和id_rsa.pub(公钥)文件


二、配置证书

将id_rsa.pub文件,放到想要进行证书验证的服务器上

# cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys

id_rsa私钥文件,可先保存到用户本地,以便配置到SSH连接客户端中


三、修改sshd配置

编辑/etc/ssh/sshd_config文件,确保以下信息正确

1.HostKey /etc/ssh/ssh_host_rsa_key处于打开状态

2.AuthorizedKeysFile      .ssh/authorized_keys处于打开状态,且文件名一致

3.PasswordAuthentication no禁止使用密码验证方式登录

修改完成后,使用systemctl restart sshd重启服务


四、远程连接

1.在Termius客户端中,配置下载的id_rsa文件,即可使用root账号和密码成功连接(如果没有设密码则直接登录)


京ICP备15015023号-1
蝉知7.4.1