Centos ssh私鑰免密登入

2021-09-29 07:58:12 字數 1327 閱讀 8200

為了更高等級的伺服器安全,一般情況下我們都不讓伺服器使用賬號密碼來登入,下面我們來看一下怎麼樣使用私鑰來免密登入。

#新增使用者

登入伺服器後建立使用者,如:

adduser testuser
#設定許可權

如果需要給該使用者root許可權,則可將使用者加入到sudoers中:

chmod -v u+w /etc/sudoers   將檔案設定為可寫
在## allow root to run any commands anywhere 行中新增

testuser   all=(all)       nopasswd: all
chmod -v u-w /etc/sudoers 將檔案改為唯讀

#生成密碼

切換使用者到剛才新建立的使用者上:

su testuser

ssh-keygen -t rsa

使用預設的生成金鑰位置

設定金鑰相應的密碼

輸入密碼後金鑰將會生成儲存在/home/testuser/.ssh/目錄下

ll

id_rsa.pub 公鑰,將改名後儲存在伺服器端

id_rsa 私鑰,將用來在客戶端裝置上用來做為登入憑證

mv id_rsa.pub authorized_keys 將公鑰改名

#配置伺服器端免密登入

vi /etc/ssh/sshd_config
修改或新增以下內容:

rsaauthentication yes

strictmodes no.

(這個可選)

pubkeyauthentication yes

authorizedkeysfile .ssh/authorized_keys

如果想禁止root登入或是禁止賬號密碼登入可以做以下設定:

permitrootlogin yes

passwordauthentication yes

設定完成後重啟sshd服務:

systemctl restart sshd.service
在客戶端(mac os為例)使用終端這樣登入:

ssh -i /users/***/keys/id_rsa [email protected]
按提示輸入私鑰的密碼即可登入成功,為避免重啟後需要再次輸入私鑰密碼請參照本人的另外一篇文章。

Centos ssh 免密登入

主機a 192.168.1.200 主機b 192.168.1.201 1 在a主機下生成公鑰 私鑰對。192.168.1.200 root 200 ssh keygen t rsa 注 t表示key的型別,rsa表示key型別 p表示密碼,p 就表示空密碼,這裡不需要輸入密碼,輸入密碼的話ssh時...

centos ssh免密登入 多台互相免密登入

假定操作的機器為crawl01,需要免密登入的機器為crawl02,crawl03.在crawl01上做如下操作 假定使用者crawl登入的crawl01,其它機器的登陸使用者也是crawl 1.生成金鑰 1 進入到 home crawl ssh目錄下 沒有.ssh則新建 2 輸入ssh keyge...

CentOS SSH免密碼登入詳解

在網上看到很多關於ssh免密登入的文章,但還是有部分同學在具體操作過程中出現問題,現在按照實際步驟一步一步進行說明 前置說明 假設現有三颱機器,機器a b c,其中機器a需要ssh免密登入到其他機器 1 首先修改ssh配置檔案,機器a b c均需要進行修改 首先修改機器a sudo vi etc s...