基于ssk key 登陆服务器

1. 在服务器生成key

ssh-keygen

密钥默认会生成在~/.ssh目录, 生成 id_rsaid_rsa.pub 两个文件,分别是 私钥/公钥

2.客户端的 公钥需保存到远程服务器 ~/.ssh/authorized_keys 里,私钥由客户端本地留存

要保证 .ssh 和 authorized_keys 都只有用户自己有写权限。否则验证无效

$ chmod -R 700 ~/.ssh/
$ chmod 600 ~/.ssh/authorized_keys

3. 设置配置

$ vim /etc/ssh/sshd_config

# 禁用root账户登录,非必要,但为了安全性,请配置
PermitRootLogin no

# 是否让 sshd 去检查用户家目录或相关档案的权限数据,这是为了担心使用者将某些重要档案的权限设错,可能会导致一些问题所致。例如使用者的 ~/.ssh/ 权限设错时,某些特殊情况下会不许用户登入
StrictModes no

# 是否允许用户自行使用成对的密钥系统进行登入行为,仅针对 version 2。至于自制的公钥数据就放置于用户家目录下的 .ssh/authorized_keys 内
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys

# 有了证书登录了,就禁用密码登录吧,安全要紧
PasswordAuthentication no
原文地址:https://www.cnblogs.com/dj0325/p/13129325.html