Linux--ssh免密码登录

机器A免密码登录机器B,这里使用在机器A生成一对秘钥,并将公钥上传到机器B的方法。
1.生成秘钥
在机器A上使用ssh-keygen命令,生成一对rsa秘钥:
ssh-keygen -b 2048 -t rsa
-b 2048 指定加密位数2048,位数越高安全性越高;-t rsa 用来指定加密方式,这里是rsa。
回车会让你输入存放公私钥的路径和名称,默认存放在~/.ssh/目录下;最后会让你输入一个passphrase,直接回车表示不需要(不提倡,毕竟安全性不好)
2.将公钥上传至B主机
放在登录账号下的~/.ssh/authorized_keys文件中,
cat ~/.ssh/id_rsa.pub | ssh [email protected] "cat - >> ~/.ssh/authorized_keys"
id_rsa.pub 是默认公钥名称,username是登录B主机用到的用户名。
3.确定B主机设置
在B主机上,~/.ssh的文件权限应该是700,
chmod 700 ~/.ssh
~/.ssh/authorized_keys 的文件权限需要设置成600,
chmod 600 ~/.ssh/authorized_keys
4.vi /etc/ssh/sshd_config
如果你的机器上之前并没有设置ssh登录,这里可能需要检查一下ssh的设置,在/etc/ssh/sshd_config文件中,查看如图条目的设置

Linux--ssh免密码登录_第1张图片
sshd_config.png

Finally
在完成2之后,就可以在A机器上通过ssh |scp之类的命令尝试登录。
ssh [email protected]

参考资料

你可能感兴趣的:(Linux--ssh免密码登录)