Linux 配置SSH免密登錄(SSH互信)


有時候兩台或多台主機之間我們希望可以進行免密登錄,其實SSH有提供這樣的功能,只需三步。首先在SSH服務端配置允許公鑰私鑰配對認證,然后在客戶端生成公鑰,最后將客戶端的公鑰上傳到服務端。這樣就可以從客戶端免密登錄服務端特定的用戶了。

具體操作如下:

一、在SSH服務器所在機器上

1、以root用戶登錄,更改ssh配置文件 /etc/ssh/sshd_config,去除以下配置的注釋

RSAAuthentication yes #啟用rsa認證
PubkeyAuthentication yes #啟用公鑰私鑰配對認證方式
AuthorizedKeysFile .ssh/authorized_keys #公鑰文件路徑

2、重啟SSH服務

[root@server /]#systemctl restart sshd  //重啟ssh服務

二、在客戶端機器上

1、生成公鑰私鑰對

[root@client /]#ssh-keygen -t rsa

一路默認回車,系統在/root/.ssh下生成id_rsaid_rsa.pub

這里使用的rsa還可以指定其他算法如:dsa | ecdsa | ed25519 | rsa1z。不同版本的系統支撐的算法可能不一樣。詳情請使用man ssh-keygen查看。

2、把id_rsa.pub發送到服務端機器上

[root@client /]#ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.11.20 #server ip

這里傳個了192.168.11.20主機的root用戶,你可以替換成其他用戶。

3、驗證

[root@client /]#ssh root@192.168.11.20 #server ip

三、免密失敗問題參考如下博文

參考:https://www.cnblogs.com/my-show-time/p/16008674.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM