Ssh

如何在 ssh 客戶端中只為一台主機使用私鑰?

  • April 13, 2022

我正在使用 Ubuntu。如何在 ssh 客戶端中只為一台主機使用私鑰?私鑰用於所有主機,每次我連接到任何伺服器時,都會使用私鑰身份驗證。

您需要創建或編輯您的 SSH 配置文件~/.ssh/config

有關所有詳細資訊,請檢查man ssh_config。但基本上,它由如下幾個條目組成:

Host example
   Hostname example.com
   User quber
   IdentityFile ~/.ssh/my_idfile

一行Host介紹了每個主機,以下幾行是縮進的。Host 行上的名稱是暱稱(您將鍵入ssh example而不是ssh quber@example.com。)如果您不想使用暱稱,可以使用完整的主機名:

Host example.com
   User quber
   IdentityFile ~/.ssh/my_idfile

現在 ssh 將自動為這個主機使用指定的使用者名和私鑰,並且只使用這個主機。

如果您不希望私鑰用於其他主機,請確保它沒有命名為id_dsa,id_rsa或預設用於所有主機的其他文件(整個列表在 中man ssh)。給它一個唯一的名稱,也許與它的主機有關。

引用自:https://unix.stackexchange.com/questions/698876