在 Linux 中,使用 USB 密鑰進行 SSH 登錄可以提高安全性,因為私鑰存儲在 USB 設備上,而不是在本地計算機上
首先,你需要在本地計算機上生成一個 SSH 密鑰對。如果你還沒有密鑰對,請打開終端并運行以下命令:
ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa_usb
這將在 ~/.ssh
目錄下生成一個名為 id_rsa_usb
的私鑰文件和一個名為 id_rsa_usb.pub
的公鑰文件。
將公鑰內容復制到遠程服務器的 authorized_keys
文件中。你可以使用以下命令將公鑰復制到剪貼板:
cat ~/.ssh/id_rsa_usb.pub | xclip -selection clipboard
然后,登錄到遠程服務器,編輯 ~/.ssh/authorized_keys
文件并將公鑰粘貼到其中。確保每個密鑰都在單獨的一行上。
將生成的私鑰文件(id_rsa_usb
)復制到 USB 設備上。例如,如果你的 USB 設備掛載在 /media/usb
目錄下,你可以運行以下命令:
cp ~/.ssh/id_rsa_usb /media/usb/
在本地計算機上,編輯或創建 ~/.ssh/config
文件,并添加以下內容:
Host remote-server
HostName remote-server-ip-or-domain
User your-username
IdentityFile /media/usb/id_rsa_usb
將 remote-server
替換為你的遠程服務器別名,將 remote-server-ip-or-domain
替換為遠程服務器的 IP 地址或域名,將 your-username
替換為你的遠程服務器用戶名。
在連接 USB 設備到本地計算機后,運行以下命令以使用 USB 密鑰進行 SSH 登錄:
ssh remote-server
這將使用存儲在 USB 設備上的私鑰進行身份驗證,從而提高安全性。