Centos6 做服务器间免密登录

今天收到一个需求,开通6台服务器,服务器之间做免密登录。

所有服务器的统一配置:1-3

1、修改hosts文件,把所有服务器的hostname命和ip地址对应写到/etc/hosts 里面。
10.1.1.1 ip-10-1-1-1
10.1.1.2 ip-10-1-1-2

2、修改/etc/ssh/sshd_conf
#>vi /etc/ssh/sshd_config
        找到以下内容,并去掉注释符”#“
  RSAAuthentication yes
  PubkeyAuthentication yes
  AuthorizedKeysFile      .ssh/authorized_keys
       重启ssh服务
  #>service sshd restart

3、关闭selinux ,把SELINUX= 改成 disabled
#> cat /etc/selinux/config 

SELINUX=disabled
SELINUXTYPE=targeted


秘钥文件处理: A(10.1.1.1)要免密登录B(10.1.1.2)
以下操作都要在想免密登录使用的用户下操作。
1.在A服务器操作:
生成秘钥文件并发公钥分发到被登录的服务器端:
$> ssh-keygen -t rsa
一路敲回车,什么都不用输入
会生成两个秘钥文件
$> ll /home/dmadmin/.ssh/
authorized_keys -----------ssh服务会找的秘钥文件,里面存档的是锁文件,
id_rsa -----------这是私钥文件(钥匙),A服务器需要此文件。
id_rsa.pub -----------这是公钥文件(锁),需要写到B服务器的authorized_keys里面。
$>cat ~/.ssh/id_rsa.pub >> /home/dmadmin/.ssh/authorized_keys
$>chmod 400 /home/dmadmin/.ssh/authorized_keys
$>ssh-copy-id -i .ssh/id_rsa.pub [email protected] 把锁文件传送到被登录的服务器里面。

2.在B服务器操作
登录到要被登录的服务器,修改秘钥文件的权限
$>chmod 400 /home/dmadmin/.ssh/authorized_keys

3.回到A服务器测试免密登录:可以连接计算机名也可以连接IP地址
A~$>ssh 10.1.1.2
A~$>ssh ip-10-1-1-2
此时不需要密码,A服务器可以直接登录到B服务器。

 ---------------------------------------------------------------------
 B服务器免密登录到A服务器
 1.因为当时A服务器已经把公钥文件放到自己的/home/dmadmin/.ssh/authorized_keys文件里面,只要把这把锁的要是拷贝到本地/home/dmadmin/.ssh/目录下即可。
 2.拷贝钥匙到B服务器/home/dmadmin/.ssh/
 在A服务器使用scp命令把私钥文件拷贝到B服务器里面。
 A~$>scp /home/dmadmin/.ssh/id_rsa [email protected]:/tmp/
 在B服务器使用mv命令把撕咬文件拷贝到/home/dmadmin/.ssh/下
 B~$>mv /tmp/ia_rsa /home/dmadmin/.ssh/

 3.B服务器免密登录A服务器:可以连接计算机名也可以连接IP地址
  B~$>ssh 10.1.1.1
    B~$>ssh ip-10-1-1-1

猜你喜欢

转载自blog.51cto.com/993960/2310864