在生产模式下,使用账号密码的方式登录Linux是极其不安全的行为,下面我们介绍一下证书的登录方式。
1、windows平台下,打开PuTTYgen生成密钥:
- 默认RSA 2048位即可;
- 生成过程中任意移动鼠标产生随机数;
- 将公钥和私钥分别保存好。
2、Linux平台相关设置:
- 执行 vi ~/.ssh/authorized_keys 将公钥中AAAAB..........................的内容复制到authorized_keys 中,把这几行内容组成一行,在最前面添加"ssh-rsa ",最后添加" rsa-key";
---- BEGIN SSH2 PUBLIC KEY ----
Comment: "rsa-key-20191018"
AAAAB..........................
---- END SSH2 PUBLIC KEY ----
- 接下来修改sshd_config,配置如下:
vim /etc/ssh/sshd_config
# sshd_config
# 禁用root账户登录,非必要,但为了安全性,请配置
PermitRootLogin no
# 是否让 sshd 去检查用户家目录或相关档案的权限数据,
# 这是为了担心使用者将某些重要档案的权限设错,可能会导致一些问题所致。
# 例如使用者的 ~.ssh/ 权限设错时,某些特殊情况下会不许用户登入
StrictModes no
# 是否允许用户自行使用成对的密钥系统进行登入行为,仅针对 version 2。
# 自制的公钥数据就放置于用户家目录下的 .ssh/authorized_keys 内
RSAAuthentication yes # 找不到这个可以不管它
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
# 有了证书登录,就可以禁用密码登录了
PasswordAuthentication no
OK,重启一下服务 service sshd restart 。
好了,设置完成,打开PuTTY,将 用户名@IP 填好,Connection-SSH-Auth 中将private key(私钥)添加进来后,回到Session页面,将这个session保存下来,方便后续使用。赶快试一试,扔掉你手中的账号和密码吧。
网友评论