Categories
Linux

如何在 CentOS 7 或 8 上生成和設置 SSH 密鑰

生成SSH 密鑰

下載 puttygen.exe 去生成SSH 密鑰

按 Generate
輸入 Key Passphrase
保存 Private Key 文件

手動複製Public Key到 CentOS 服務器

1.要手動將公共SSH密鑰添加到遠程機器,首先需要打開~/.ssh/id_rsa.pub文件中的內容:

cat ~/.ssh/id_rsa.pub

  1. 如下圖,密鑰以 ssh-rsa 開頭,以本地計算機的用戶名和遠程計算機的主機名結尾:
  1. 複製文件的內容,稍後您將需要。
  2. 然後,在終端窗口中,連接到您希望復制公鑰的遠程服務器。使用以下命令建立連接:

ssh 用戶名@remote_host

  1. 使用以下命令在 CentOS 服務器上創建 ~/.ssh 目錄和 authorized_keys 文件:

mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys

  1. 通過鍵入以下內容更改他們的文件權限:

chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys

  1. 接下來,使用您喜歡的編輯器打開 authorized_keys 文件。例如,要使用 Nano 打開它,請鍵入:

nano authorized_keys

  1. 將先前在本節步驟 2 中復制的公鑰添加到新行中(在現有內容下)。
  2. 保存更改並關閉文件。
  3. 最後,登錄服務器以驗證一切設置是否正確。

禁用密碼驗證

更改sshd_config文檔

sudo nano /etc/ssh/sshd_config

加#號在PasswordAuthentication前

#PasswordAuthentication yes

#PasswordAuthentication no

加入以下兩個

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys

之後可用 putty.exe 試試

輸入Linux Server IP各Port號

左側選擇Connection>SSH>Auth

按Browse選擇Private Key 文件

之後按Open

輸入用戶名和Key PassPhrase, 連接Server成功