基于ssk key 登陆服务器
1. 在服务器生成key
ssh-keygen
密钥默认会生成在~/.ssh目录, 生成 id_rsa
, id_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