1. 程式人生 > >Centos6 做服務器間免密登錄

Centos6 做服務器間免密登錄

找到 get 計算機名 centos 1.2 文件拷貝 公鑰 私鑰 then

今天收到一個需求,開通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 做服務器間免密登錄