美文网首页
linux多台虚拟机间互相信任ssh设置

linux多台虚拟机间互相信任ssh设置

作者: 源码互助空间站 | 来源:发表于2020-01-13 16:00 被阅读0次

背景: 有时候我们在两个主机之间复制文件的时候,提示输入密码,很不方便,那如何免密码复制呢?,就是使用通过linux公钥和秘钥,建立双机信任关系。

在整理之前,我先说下ssh免密码的要点 :
你想免密码登陆到哪个主机哪个用户, 就把你自己的公钥文件内容追加到远程主机对应用户下的authorized_keys文件中(对面可能没有这个文件,创建即可)。

一 生成秘钥,并添加信任

我的环境中node1的ip是192.168.168.201,node2的ip是192.168.168.202.

[root@node1 ~]# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa         #生成rsa
[root@node1 ~]# ssh-copy-id -i  ~/.ssh/id_rsa.pub root@192.168.168.202  #复制201的公钥到202机器上,这样就可以使用在201机器上免密码登录202机器了。

[root@node2 ~]# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa         #生成rsa
[root@node2 ~]# ssh-copy-id -i  ~/.ssh/id_rsa.pub root@192.168.168.201  #复制202的公钥到201机器上,这样就可以使用在202机器上免密码登录201机器了。

注意:

  1. 如果远程主机的端口非22端口,需要指定-p port选项。
  2. ssh-copy-id是由openssh-clients包提供,没有这个命令可以安装这个包。
  3. centos6,7使用ssh-copy-id的时候可以不用指定-i选项,centos5必须指定的。

2.信任自己主机

[root@node1 ~]# ssh-copy-id -i  ~/.ssh/id_rsa.pub root@192.168.168.201 
[root@node2 ~]# ssh-copy-id -i  ~/.ssh/id_rsa.pub root@192.168.168.202 

3.测试

[root@node1 ~]# ssh 192.168.168.202 'ip addr show dev eth0 '
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:50:56:3f:42:13 brd ff:ff:ff:ff:ff:ff
    inet 192.168.168.202/24 brd 192.168.168.255 scope global eth0
    inet6 fe80::250:56ff:fe3f:4213/64 scope link 
       valid_lft forever preferred_lft forever

[root@node2 ~]# ssh 192.168.168.201 'ip addr show dev eth0'
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:c9:20:88 brd ff:ff:ff:ff:ff:ff
    inet 192.168.168.201/24 brd 192.168.168.255 scope global eth0
    inet 192.168.168.200/24 brd 192.168.168.255 scope global secondary eth0
    inet6 fe80::20c:29ff:fec9:2088/64 scope link 
       valid_lft forever preferred_lft forever

相关文章

网友评论

      本文标题:linux多台虚拟机间互相信任ssh设置

      本文链接:https://www.haomeiwen.com/subject/jvfnactx.html