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 username@192.168.1.9 "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文件中,查看如图条目的设置

sshd_config.png

Finally
在完成2之后,就可以在A机器上通过ssh |scp之类的命令尝试登录。
ssh username@192.168.0.XXX

参考资料

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容