因為之前的資安政策升級,所以伺服器連線都需要使用金鑰登入。不過小尷尬的是,我手邊有一台 OA 設備是 Windows 的…所以我在 Windows 上要怎用金鑰連線?
因為之前已經在 《使用 SSH 金鑰與 GitHub 連線》 與 《設定 Linux 使用 SSH Key-based 登入驗證方式》兩篇文章中已經介紹過,所以這邊就跳過金鑰的產生,直接來看看如何在 Windows 上設置連線吧。
軟體準備
在開始前需要先做一些 SSH 使用的軟體。習慣上,在 Windows 使用 SSH,都會安裝額外軟體,最常見的軟體的大概是 PuTTY。
PuTTY 載點(圖片來源: PuTTY 官網)
另外,如果要產生或轉換金鑰,可能需要安裝 PuTTYgen。
PuTTYgen 載點(圖片來源: PuTTY 官網)
不過,據我所知,Windows 10 好像有內建的 OpenSSH 可以用,如果打算使用 OpenSSH,PuTTY 跟 PuTTYgen 搞不好可以不用安裝了。
產生私鑰
因為我之前已經在 Linux 產生過金鑰了,所以我直接把私鑰複製過來,放在 c:/Users/user_name/.ssh
下。這個路徑跟 Linux 中 ~/.ssh
的用途類似,OpenSSH 會來這邊金鑰。
但如果是要使用 PuTTY 進行連線,則需要透過 PuTTYgen 將在 Linux 產生的私鑰轉換成 Windows 系統可識別的 *.ppk
才可正常使用。
- 選擇要轉換的金鑰
- 儲存
*.ppk
如果是要在 Windows 中產生金鑰,可以考慮使用 PuTTYgen 或是有 OpenSSH 的可以直接使用內建 ssh-keygen 來產生金鑰:
執行連線
既然前面都提到了 PuTTY 與 OpenSSH 兩種連線方式,因此這邊分兩個部分來介紹:
PuTTY
- 設定連線資訊
在開啟 PuTTY 後,選擇 Category (類別) 中的 Session (工作階段),並填寫指定欄位:- Host Name:輸入連線目標的使用者帳號與主機名稱。
- Port:預設 Port 是 22。
- Connection type:選取 SSH。
-
設定 SSH 金鑰
完成資訊設定後,接下來設定 SSH 金鑰,先將 Category (類別) 切換到 Connection (連線),並展開 SSH 選擇 Auth (身分驗證)。在右邊窗格中,點擊 Browse,指定選擇
*.ppk
。最後點擊 Open,進行連線。
OpenSSH
至於 OpenSSH 的連線其實跟在 Linux 上一樣,只要把金鑰放到指定路徑下,也就是 c:/Users/user_name/.ssh
,並依照需求在 config
中,指定 Host
、 IdentityFile
。
最後使用 ssh 進行連線:
1 |
|
參考資料
- 腳印哥 (2019-07-06)。Windows 使用 SSH 金鑰免密碼登入 Linux。檢自 MIS 腳印 (2020-02-01)。
- 使用 PuTTY 從 Windows 連線至您的 Linux 執行個體。檢自 Amazon Elastic Compute Cloud (2020-02-01)。
- Derek (2011-05-21)。PuTTYgen產生金鑰 (Windows使用) 。檢自 FAQ Book (2020-02-01)。
- PuTTYgen 將 .pem 金鑰檔案轉為 .ppk 格式教學 。檢自 Office 指南 (2020-02-01)。
更新紀錄
最後更新日期:2021-03-07
- 2021-03-07 發布
- 2021-02-01 完稿
- 2021-02-01 起稿