linux免密登陸設定

年轻人——001發表於2024-04-16

要實現免密登入Linux伺服器,你需要將本機的SSH公鑰新增到伺服器的~/.ssh/authorized_keys檔案中。以下是具體步驟:

  1. 生成SSH金鑰對(如果尚未生成)
    如果你還沒有SSH金鑰對,可以使用ssh-keygen命令生成。例如,執行ssh-keygen -t rsa來生成RSA型別的金鑰對。按照提示操作,通常可以直接按Enter鍵接受預設設定。

  2. 複製公鑰到伺服器
    將你的公鑰(通常是~/.ssh/id_rsa.pub檔案中的內容)複製到你想免密登入的Linux伺服器的對應使用者家目錄下的.ssh/authorized_keys檔案中。你可以使用ssh-copy-id命令或者手動複製貼上。

    • 使用ssh-copy-id(推薦方式):

      bash
      ssh-copy-id -i ~/.ssh/id_rsa.pub username@remote_host

      username替換為伺服器的使用者名稱,remote_host替換為伺服器的地址。

    • 手動複製:
      首先,使用scp或者其他方式將你的公鑰檔案複製到伺服器上,然後登入到伺服器,將公鑰內容追加到~/.ssh/authorized_keys檔案中。如果檔案不存在,你需要建立它。

      bash
      cat id_rsa.pub >> ~/.ssh/authorized_keys
  3. 設定檔案和目錄許可權
    確保伺服器上的~/.ssh目錄許可權設定為700(即僅允許使用者自己讀寫執行),authorized_keys檔案許可權設定為600(即僅允許使用者自己讀寫)。這可以透過以下命令實現:

    bash
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
  4. 測試免密登入
    現在,你應該能夠從你的本機免密登入到Linux伺服器了。使用SSH命令進行測試:

    bash
    ssh username@remote_host

    如果一切順利,你將不會收到輸入密碼的提示,而是直接登入到伺服器。

請注意,為了安全起見,確保你的私鑰檔案(id_rsa)保持私密,不要洩露給他人或在公共場所存放。

相關文章