設備:一臺linux系統機器,一臺windows系統機器
軟件:xshell
要求:公鑰免密登錄
一、生成公鑰、私鑰
1、打開shell? ?;? ?點擊工具? ?;? ?新建用戶生成密鑰向導
2、生成密鑰參數
密鑰類型:RSA? ?密鑰長度:2048? ?(都是默認) ;? ? 點擊下一步
3、生產公鑰對? ? ?
? 默認下一步
4、用戶密鑰信息
設置密鑰名稱,密碼? ? ;? ?點擊完成
5、公鑰注冊
公鑰格式默認為SSH2-OpenSSH? ? ?;? ? 保存公鑰到桌面
文件名默認? ? 文件類型:Public Key Files(*.pub)? ? ? ;? ? 點擊保存
6、點擊公鑰? ? ;? ? 導出私鑰
文件名默認? ? ?文件類型:Private Keys? ? ? ;? ? ?點擊保存
輸入密碼? ? ? ;? ? 確定
桌面查看公鑰、私鑰
二、配置Linux
1、查看有沒有 /root/.ssh 文件夾,沒有的話 mkdir -p /root/.ssh 創建文件夾
2、將公鑰私鑰導入linux? ? ? ? ? ?選擇? ?.pub 把公鑰拖過來
3、驗證并重命名公鑰
[root@localhost .ssh]# ls
id_rsa_2048_centos_7-1.pub
[root@localhost .ssh]# mv id_rsa_2048_centos_7-1.pub authorized_keys
[root@localhost .ssh]# ls
authorized_keys
4、修改 /etc/ssh/sshd_config 的配置文件,確保以下配置沒有被注釋
[root@localhost .ssh]# vim /etc/ssh/sshd_config
PasswordAuthentication no? ? ? ? ? ? ? ? # 禁用密碼驗證,只允許其他認證方式(如公鑰認證)
ChallengeResponseAuthentication no? ? ? ? ? ?# 禁用質詢響應認證機制
AuthorizedKeysFile .ssh/authorized_keys ? ? ?
# 指定存儲用戶公鑰的文件路徑,默認是用戶家目錄下的 .ssh/authorized_keysPubkeyAuthentication yes? ? ? ? ? ?# 啟用公鑰認證
PermitRootLogin yes? ? ? ? ? # 允許root用戶通過SSH登錄
Port 22? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? # 指定SSH服務監聽的端口,默認是22
UsePAM yes? ? ? ? ? ? # 啟用PAM(可插入式認證模塊)進行身份驗證、賬戶處理和會話管理
X11Forwarding yes? ? ? ? ? ? # 啟用X11轉發,允許通過SSH隧道傳輸X11(圖形界面)連接
X11DisplayOffset 10? ? ? ? ? # 指定X11轉發的顯示偏移量,默認是10
X11UseLocalhost yes? ? ? ? # 指定X11轉發是否只綁定到本地回環接口
最后鍵入“Esc”鍵,然后輸入:wq,按下回車進行保存
三、測試
1、新建會話,輸入主機名和IP
2、用戶身份驗證? ? ;? ?選擇 Public Key? ? ? ;? ? 點擊確認
3、雙擊會話? ? ;? ? 輸入用戶名? ? ?;? ? 點擊確認
4、 點擊Public Key? ? ? ;? ? ?點擊瀏覽? ? ?;? ? ?選擇文件
5、點擊私鑰,沒有 .pub 的? ? ? ?;? ? ?點擊確認
6、輸入密碼? ? ? ?;? ?記住密碼? ? ?;? ? 點擊確認
7、可以看到登陸成功
四、xshell公鑰免密登錄
雙擊會話直接免密登錄