创建密钥文件
1 | ssh-keygen -t rsa |
传输密钥文件
使用命令
1 | ssh-copy-id -i LocalRoche.pub root@192.168.15.112 |
或者直接讲 LocalRoche.pub文件放置于/root/.ssh/目录下的id_rsa.pub文件中,如果该文件中已经存在其他用户公钥,只要追加即可。
1 | cat >>/root/.ssh/id_rsa.pub<<EOF |
修改sshd配置文件
通过命令已经将公钥文件传递到Linux,之后,则需要修改ssh server的配置文件。配置文件位置在于/etc/ssh/sshd_config,需要修改文件内的以下几行内容。
1 | PubkeyAuthentication yes # 开启密钥登入的认证方式 |
PS:关键修改参数一些说明(安全等级更高):
#禁用root账户登录,非必要,但为了安全性,请配置
PermitRootLogin no# 是否让 sshd 去检查用户家目录或相关档案的权限数据,
# 这是为了担心使用者将某些重要档案的权限设错,可能会导致一些问题所致。
# 例如使用者的 ~.ssh/ 权限设错时,某些特殊情况下会不许用户登入
StrictModes no# 是否允许用户自行使用成对的密钥系统进行登入行为,仅针对 version 2。
# 至于自制的公钥数据就放置于用户家目录下的 .ssh/authorized_keys 内
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys#有了证书登录了,就禁用密码登录吧,安全要紧
PasswordAuthentication no
重启sshd服务
1 | service sshd restart #最后,重启 SSH 服务: |
查看sshd状态是否正常
1 | service sshd status |