SSH无密码登录

2020-10-23   836 次阅读


原因

为什么要弄SSH无密码方式登录呢?无密码不是谁都可以登录,而是改为密钥的形式登录,这样会稍微安全一点,毕竟黑进来的和你八竿子打不着,不大可能能拿到你的密钥,这样它就得费很大力气去猜这个密钥,几乎是不可能的任务。当然,别忘了禁用密码登录,否则被它猜中了你那脆弱的密码,这个密钥也没什么用,反而被人家轻易拿走。

原理

利用ssh-keygen可以生成一对密码对,就是一个私钥一个公钥。你把公钥给SSH服务器,自己拿着私钥一对,就能验证通过,轻松登录。

公钥需要存在服务器对应用户的~/.ssh/authorized_keys文件中。怎么存?
cat id_ras.pub >> ~/.ssh/authorized_keys,然后chmod 600 ~/.ssh/authorized_keys.

最后把sshd的配置改一下,关闭密码登录。

sudo vi /etc/ssh/sshd_config #把PasswordAuthentication改为no

重启sshd服务,可以测试一下看看有没有成功。

Q.E.D.

知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

No PAINS No GAINS.