Centos6 做服务器间免密登录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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

以上是关于Centos6 做服务器间免密登录的主要内容,如果未能解决你的问题,请参考以下文章

putty xshell的使用 和 putty xshell shell 间免密登陆

CentOS6CentOS7Ubuntu 一键部署 ssh 免密登录

centos利用SSH 生成密码Linux间免密码登录

linux下配置远程免密登录方法教程

多台服务器-SSH免密登录设置

linux免密登录配置