为啥加了ssh信任关系不管用呢

先说正常的添加两台linux机器之间ssh信任关系的方法:

假设主机A用来连接到主机B

1. 在主机A上执行如下命令来生成配对密钥:

ssh-keygen -t rsa

显示信息如下:
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory ‘/root/.ssh’.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
45:13:ec:31:f9:3d:25:54:7b:5f:03:40:ba:e9:76:cd root@bindiry-ubuntu

按三次回车。

这个命令生成一个密钥对:id_rsa(私钥文件)和id_rsa.pub(公钥文件)。默认被保存在~/.ssh/目录下。

2. 将 .ssh 目录中的 id_rsa.pub 文件复制到 主机B 的 ~/.ssh/ 目录中,并改名为 authorized_keys

如果已经存在authorized_keys, 则直接编辑,将主机A的~/.ssh/id_rsa.pub的内容(只有一行)添加到authorized_keys

***注意内容没有换行符!!!

好了, 信任关系建立好了. 理论上直接在A机器就可以无密码ssh到B机器了, 但是实际上, 经常发现这个会失效

99.999%的可能性是由于目标机器的文件&目录权限导致!!

1)~, ~/.ssh这两个文件夹的权限必须是755 (chmod 755 ~; chmod 755 ~/.ssh)

2)~/.ssh/authorized_keys这个文件的权限必须是600

3)如果是非root用户, 需要使用ssh登陆, 比如是work用户, 则以上两个目录&一个文件的所有者必须是work用户(可使用chown work:work authorized_keys这样的方式修改文件所属)

 


本文链接:https://www.poisonbian.com/post/412.html 转载需授权!

分享到:
原文链接:,转发请注明来源!
「为啥加了ssh信任关系不管用呢」评论列表

发表评论