step1: 本地主機
打開powershell, 輸入以下命令生成密鑰:
ssh-keygen
- 過程中會讓你指定文件。此處默認即可。
- 制定密碼:必須必須必須設置。安全無小事。要5個字符以上。
之后就會生成一個公鑰,一個私鑰。
- 私鑰路徑是:
C:\Users\用戶名\.ssh\id_rsa
- 公鑰路徑是:
C:\Users\用戶名\.ssh\id_rsa.pub
請用文本編輯器(記事本就行)打開公鑰文件,復制公鑰備用。
step2: 遠程主機
在服務器中進行配置,目的是讓服務器識別出。注意要配置公鑰,路徑是 /etc/ssh/sshd_config
- 輸入命令
sudo vim /etc/ssh/sshd_config
。配置這個需要 root 權限。 - 做出如下配置。注意三角符號處。
注意第二個三角符號處已經指定了公鑰列表的文件名,需要創建(若無)該文件,運行以下命令
vim ~/.ssh/authorized_keys2
將step1 中復制的公鑰粘貼進去。退出保存。
step3: 連接
- 在本地電腦中,打開Powershell
- 輸入以下命令:
ssh 用戶名@IP地址 -p 22 -i C:\Users\用戶名\.ssh\id_rsa
注意:
- 第一個參數的用戶名是服務器中的用戶名,IP地址是公網IP。
- p 是指定端口,一般是222
- i 是指定私鑰位置。此處就是 step1 中生成的私鑰的位置
設置了密碼,會在此處讓再次輸入(就是keygen時候的那個密碼)。之后就大功告成了。
文中所有 CMD,powershell 均指Windows10 中 MS terminal preview 版本 中的 Powershell 7