歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> CentOS SSH免密碼登錄詳解

CentOS SSH免密碼登錄詳解

日期:2017/3/3 11:13:15   编辑:Linux技術

在網上看到很多關於SSH免密登錄的文章,但還是有部分同學在具體操作過程中出現問題,現在按照實際步驟一步一步進行說明:

前置說明:

假設現有三台機器,機器A、B、C,其中機器A需要SSH免密登錄到其他機器;

1、首先修改SSH配置文件,機器A、B、C均需要進行修改;

首先修改機器A:

sudo vi /etc/ssh/sshd_config
將以下三個項目之前的注釋符號(#)去掉:

RSAAuthentication yes
        PubkeyAuthentication yes
        AuthorizedKeysFile      .ssh/authorized_keys
這三個配置項主要是允許公鑰文件的RSA授權,授權文件為:.ssh/authorized_keys

修改完成後重啟SSH服務,使配置生效;

service sshd restart
同樣的方式修改機器B、C的配置文件;

2、檢查是否存在.SSH文件夾

檢查機器B、機器C在用戶的根目錄下(也就是:cd ~)是否存在.ssh文件夾,如果沒有則創建;

3、生成SSH公鑰、私鑰文件,並分發至其他主機

在機器A上生成無密碼的SSH公鑰、私鑰文件:

ssh-keygen -t rsa
無需輸入任何信息,一路回車即可,生成完成後會在用戶根路徑下的SSH目錄(cd ~/.ssh)發現:id_rsa、id_rsa.pub兩個文件;

將SSH公鑰導入到本機SSH驗證文件:

cat id_rsa.pub >> authorized_keys
將機器A的SSH公鑰分發至機器B、機器C:

scp id_rsa.pub  實際的用戶名@機器B的IP:~/.ssh/authorized_keys
scp id_rsa.pub 實際的用戶名@機器C的IP:~/.ssh/authorized_keys
{}部分的內容用實際內容替換;

4、檢查文件、文件夾權限:

.ssh文件夾必須700權限,authorized_keys文件必須600權限;

chmod 700 .ssh
chmod 600 authorized_keys
機器A、B、C均要進行檢查

完成以上操作就可以直接ssh 機器B或機器C的IP地址進行測試,首次連接需要輸入yes確認連接。

Copyright © Linux教程網 All Rights Reserved