linux配置密鑰登錄


一、前言:

ssh遠程登錄密碼認證的方式有三種,password、Keyboard Interactive、Public Key前面兩種方式就是密碼認證,含義都是一樣大同小異。
第三種是登錄方式最安全的一種。下面我們就來實現第三種方式public key秘鑰認證方式。
二、原理:

ssh客戶端利用服務端發過來的私鑰,進行登錄的認證,認證服務端的公鑰。從來實現安全的訪問。
三、准備:

服務端系統:ubuntu
四、服務端生成秘鑰

ssh-keygen -b 1024 -t dsa
接下來直接Enter
生成的路徑:/root/.ssh/
-rw-r--r--. 1 root root 668 Aug 1 05:27 id_dsa
-rw-r--r--. 1 root root 616 Aug 1 05:05 id_dsa.pub
修改權限:
chmod 700 .ssh/
chmod 600 ~/.ssh/id_dsa
chmod 644 ~/.ssh/id_dsa.pub
生成認證秘鑰:
cd .ssh/
cat id_dsa.pub >> authorized_keys
-rw-r--r--. 1 root root 616 Aug 1 05:27 authorized_keys
-rw-r--r--. 1 root root 668 Aug 1 05:27 id_dsa
-rw-r--r--. 1 root root 616 Aug 1 05:05 id_dsa.pub
五、更改sshd的配置文件

vi /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes #開啟密鑰認證
AuthorizedKeysFile .ssh/authorized_keys #設置認證密鑰路徑
PasswordAuthentication no #禁用密碼認證
保存退出
六、將私鑰發送給客戶端,重啟sshd服務

systemctl restart sshd #可能不生效
service ssh restart #可用service ssh reload替代
七、使用xshell遠程登錄

ssh 地址--->輸入用戶名--->選擇public key導入證書--->即可登錄

選擇瀏覽文件,選擇私鑰即可

八、使用winscp遠程登錄

新建站點,選擇SFTP,輸入主機名,用戶名,高級選擇SSH驗證,密鑰文件選擇dsa或者rsa私鑰文件,自動轉成puTTY私鑰文件

九、使用xshell生成密鑰

如果有用xshell,可以選擇Public Key登錄-瀏覽-用戶密鑰-生成,保存公鑰,上傳到.ssh目錄,
使用如下命令cat id_dsa.pub >> authorized_keys來設置驗證的公鑰,xshell端使用私鑰來驗證登錄。
私鑰也可以導出給其它人使用。

本文是參考網絡文章,結合本人實踐經驗所得,歡迎大家轉載分享。


免責聲明!

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



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