linux服务器间scp不输入密码

1. 在机器Client上root用户执行ssh-keygen命令,生成建立安全信任关系的证书。
   [root@Client root]# ssh-keygen -b 1024 -t rsa
    一路回车
   [root@Client root]#
2.将公钥证书id_rsa.pub复制到机器Server的root家目录的.ssh子目录中,同时将文件名更换为authorized_keys。
   [root@Client root]# scp -p ./id_rsa.pub [email protected]:/devop/.ssh/authorized_keys
   [email protected]'s password:          <-- 输入机器Server的devop用户密码

注意:
1.【.ssh】文件夹的权限必须是 755。
2.在执行【第一次执行复制命令】时,两台机器的root用户之间还【未建立安全信任关系】,所以还【需要输入机器Server的root用户密码】。经过以上步骤,就在机器Client的root和机器Server的root之间建立安全信任关系,当【再次执行复制的时候】就不需要输入密码了。

3.如果把【A的公钥给了B】,那么,可以在【A上SCP不输入密码,向B传输数据】;但 【B上SCP时,仍需要密码】,如果需要双方不输入 密码,则也要把B的公钥给A。
4.如果想让B,C同时可以SCP不输入密码,传输A中的数据;则要把B、C的公钥都给 A。把B、C两机器的id_rsa.pub中的数据都拷贝到A的/root/.ssh/authorized_keys文件中,一行表示一条。

5.如果【authorized_keys文件已经存在则追加】:cat ~/id_rsa.pub >> ~/.ssh/authorized_keys。

猜你喜欢

转载自zhoupinheng.iteye.com/blog/2275502