在 Rocky Linux 9 上設置 SSH 免密碼登入可以通過配置 SSH 公鑰認證來實現。以下是詳細步驟:
- 生成 SSH 密鑰對 在你的本地機器上生成一對 SSH 密鑰(如果你還沒有密鑰對):
ssh-keygen
按提示進行操作,通常只需按 Enter
接受默認選項即可。
- 將公鑰複製到遠程伺服器 使用
ssh-copy-id
命令將公鑰複製到遠程伺服器。替換username
為你的遠程伺服器使用者名稱,your_server_ip
為你的伺服器 IP 地址:
ssh-copy-id username@your_server_ip
系統會提示你輸入遠程伺服器的使用者密碼。一旦成功,公鑰會被添加到遠程伺服器的 ~/.ssh/authorized_keys
文件中。
- 手動添加公鑰(可選) 如果
ssh-copy-id
命令不可用,你可以手動複製公鑰。首先,在本地機器上顯示公鑰內容:
cat ~/.ssh/id_rsa.pub
然後,在遠程伺服器上,將這個公鑰添加到 ~/.ssh/authorized_keys
文件中。可以使用以下命令(替換 your_public_key
為你的實際公鑰內容):
echo "your_public_key" >> ~/.ssh/authorized_keys
確保 ~/.ssh
目錄和 authorized_keys
文件具有正確的權限:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
- 測試 SSH 免密碼登入 從本地機器嘗試使用 SSH 連接到遠程伺服器:
ssh username@your_server_ip
如果一切配置正確,你應該能夠無需密碼直接登入遠程伺服器。
以下是整個過程的摘要:
# 在本地機器上生成 SSH 密鑰對
ssh-keygen
# 將公鑰複製到遠程伺服器
ssh-copy-id username@your_server_ip
# 如果需要手動添加公鑰
cat ~/.ssh/id_rsa.pub
# 在遠程伺服器上
echo "your_public_key" >> ~/.ssh/authorized_keys
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
# 測試 SSH 免密碼登入
ssh username@your_server_ip
通過以上步驟,你應該能夠在 Rocky Linux 9 上成功設置 SSH 免密碼登入。