[筆記] 透過公開金鑰登入 SSH 伺服器而非使用密碼

以下適用於 Termux 的 OpenSSH。
△使用者端:
▲使用 ssh-keygen 指令生成金鑰:
ssh-keygen -t “加密方式” -b “金鑰位元長度” -f “私鑰輸出路徑”
例如 :
ssh-keygen -t rsa -b 2048 -f id_rsa
此時將生成檔名為 id_rsa 的私人金鑰與檔名為 id_rsa.pub 的公開金鑰。
◎若想在 FileZilla 透過私人金鑰進行登入,您可先在 OpenSSH 生成金鑰,然後透過 PuTTY 將私人金鑰轉換為 FileZilla 支援的 .ppk 格式私人金鑰。
▲在伺服器註冊公開金鑰(伺服器至少留有一種登入方式):
ssh-copy-id -i “私鑰檔案路徑” -p “伺服器連接埠” “伺服器 IP”
例如:
ssh-copy-id -i id_rsa -p 8022 192.168.1.101
◎驗證用的公開金鑰將被匯入到伺服器端的 ~/.ssh/authorized_keys 內。
△伺服器端:
▲關閉密碼驗證以防止密碼暴力破解:
編輯 /etc/ssh/sshd_config:
vi $PREFIX/etc/ssh/sshd_config
修改 PasswordAuthentication 後方的值為 no:
PasswordAuthentication no
參考:
https://wiki.termux.com/wiki/Remote_Access
https://wiki.archlinux.org/index.php/Secure_Shell_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

預設圖片
Huán-Hsüān Lín (WordPressLocal)
文章: 19