如果这生命如同一段旅程 总要走过后才完整
分类: LINUX
2013-02-17 17:27:23
在主机A和主机B间建立信任关系,使主机A可以无密码ssh登陆主机B
1. A主机上执行
ssh-keygen -t rsa -b 1024 (也可以使用 ssh-keygen -t dsa -b 1024)
主目录下生成 .ssh目录
2. 进入.ssh目录
3. 执行 cat id_rsa.pub 将显示结果复制 (也可以使用cat id_dsa.pub,这个一般有现成的)
4. B主机上进入主目录下的.ssh(如果没有,则执行ssh-keygen生成)
5. 将复制的结果粘贴到B主机.ssh目录下的authorized_keys文件的最后一行
6. 很简单,信任关系建立了,在主机A上执行 ssh 第一次执行,会提示一个确认
选择yes回车(还是不要输入yes,直接回车????忘了,参看"补充"),结果不用输入
用户密码,登录成功了!
补充:
如果信任关系还是没有建立起来,要看看对应用户在/home路径下到.ssh目录及其下的文件权限,这个权限不能
开得太大,可以把work设为755(如:chmod 755 work),其它的.ssh目录及其下的文件权限可参考信任关系正常的服务器
.ssh目录下可能还有config和known_hosts文件。
config文件是配置本地ssh远程登录时采用的默认用户名,如本地config中配置了:
Host A
User work
则本地执行ssh A 相当于执行 ssh
known_hosts文件记录已知信任关系的主机,信任关系建立后第一次用信任关系登录
还需要用户手动执行一次确认,该确认将把本地主机的信任关系加入到远程主机的
know_hosts中,下次用信任关系登录时便不再需要用户干预。
批量建立多台主机A与多台主机B的信任关系
1. 先建立一台A与所有B的信任关系
2. 同步建成的这台A的信任关系到还未建信任关系的其他A