step0:关闭防火墙
[root@localhost ~]#chkconfig iptables off #永久关闭防火墙
[root@localhost ~]#chkconfig - -list | grep iptables #查看状态
重启生效。
step1:设置主机名A, B
[root@localhost ~]# vim /etc/sysconfig/network #修改配置文件
NETWORKING=yes
HOSTNAME=A # 或者B
重启生效。
用户:均用sglk,密码:123
主机A: 192.168.31.165
主机B:192.168.31.161
step2: ssh有密码登录
[sglk@A~]$ssh sglk@192.168.31.161 #首次连接会自动生成.ssh/know_hosts文件
[sglk@B ~]$ssh sglk@192.168.31.165 #首次连接会自动生成.ssh/know_hosts文件
step3:ssh无密码登录
在主机A中的操作配置:
[sglk@A~]$ ssh-keygen -t rsa -P '' #生成公钥/私钥对
[sglk@A .ssh]$ scp .ssh/id_rsa.pub sglk@192.168.31.147:/home/sglk/id_rsa.pub #将主机A中的文件id_rsa.pub,复制到主机B中
在主机B中的操作配置:
[sglk@B ~]$ cat id_rsa.pub >> .ssh/authorized_keys #对应的.ssh文件,在step2中即生成了。
【或者
[sglk@B ~]$ ssh-keygen -t rsa -P '' #用A连接主机B时,B生成公钥/私钥,为非必要的。可用它生成.ssh文件】
[sglk@B ~]$ chmod 600 .ssh/authorized_keys #权限开通很重要,必需!
验证:
[sglk@A ~]$ssh sglk@192.168.31.161 # 验证,成功!
注意事项:
(1)[sglk@B ~]$ chmod 600 .ssh/authorized_keys #权限开通很重要,必需!
(2)网络要保持畅通;
(3)[sglk@A~]与[sglk@B ~] 用户名及主机名,要始终保证正确。