Linux 服务器之间建立互信,实现scp命令免密复制

  Linux下,要想使用scp在两台服务器之间拷贝文件,如果两台服务器之间没有建立信任关系,则使用scp命令时系统会要求填写服务器的密码,如果想不输入密码完成服务器之间的文件拷贝,则建立服务器之间的互信关系是不错的选择。
  简单的来说,两台服务器之间的互信关系,就是通过公钥私钥来进行标识的。
  假设:有两台Linux服务器172.22.5.01 和 172.22.5.02,如果你想在172.22.5.01服务器复制172.22.5.02上面的文件(前提两个服务器之间网络联通)。
  当你使用复制命令:scp root@172.22.5.02:/data/temp.txt /data 时,系统会提示你输入172.22.5.02的密码才能进行复制操作。
  接下来通过命令对两台服务器建立互信关系,在172.22.5.01操作步骤如下:
    1、在172.22.5.01服务器生成认证RSA密钥:

      命令:ssh-keygen -b 1024 -t rsa

      中间过程直接回车。最后会在/root/.ssh/目录下,生成了两个文件:

      id_rsa(私钥文件放在本地) 和 id_rsa.pub(公钥文件放在172.22.5.02服务器)

    2、 将公钥文件id_rsa.pub拷贝172.22.5.02服务器上:

      scp /root/.ssh/id_rsa.pub root@172.22.5.02:/root/.ssh

    3、 登录172.22.5.02服务器

      到/root/.ssh目录下并执行 cat id_rsa.pub >> ~/.ssh/authorized_keys

  这样就完成两台服务器之间互信关系的建立,这样你想在172.22.5.01服务器复制172.22.5.02上面的文件就不需要输入密码了。

posted on 2020-09-23 15:54  Finger_S  阅读(2086)  评论(0编辑  收藏  举报