簡介
在 Mac 上配置 SSH 金鑰登入遠端的 Linux
相關配置
-
建立本地的 SSH 金鑰
本地 生成祕鑰對
ssh-keygen -t rsa -C 'youxiang@aliyun.com'
-t 指定金鑰型別,預設即 rsa -C 設定註釋文字,比如你的郵箱
可以設定 私鑰密碼,我這裡設定的密碼為 12345
生成的金鑰預設在 家目錄 下的
.ssh
目錄下 -
上傳 公鑰到遠端 Linux 伺服器
使用
scp
複製公鑰到遠端伺服器scp -P <埠號> ~/.ssh/id_rsa.pub <使用者名稱>@<ip地址>:/home/id_rsa.pub
我這裡使用的
root
使用者上傳,需要輸入登入密碼 -
配置遠端 Linux 的私鑰
登入 遠端 Linux 伺服器,把公鑰追加到伺服器 ssh 認證檔案中:
cat /home/id_rsa.pub >> ~/.ssh/authorized_keys
如果在 家目錄 沒有
.ssh
目錄或authorized_keys
檔案,可以建立一下,並授予authorized_keys
檔案600
許可權然後在執行
cat /home/id_rsa.pub >> ~/.ssh/authorized_keys
-
本地 ssh 連線
ssh -p <埠號> <使用者名稱>@<ip地址>
如果沒有修改預設埠,可以忽略埠號
ssh root@114.11.11.111
-
建立配置檔案快速登入
每次登入都需要輸入使用者和 ip 地址,這樣也是太麻煩,可以新增配置檔案,使用 別名 來登入
vi ~/.ssh/config
Host alias #自定義別名 HostName 114.11.11.110 #替換為你的ssh伺服器ip或domain Port 22 #ssh伺服器埠,預設為22 User root #ssh伺服器使用者名稱 IdentityFile ~/.ssh/id_rsa #第一個步驟生成的公鑰檔案對應的私鑰檔案
此時就可以使用
ssh jd
進行登入
禁止 Linux 使用賬號密碼登入
-
cd /etc/ssh/
-
修改SSH的配置檔案
vi sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
#AuthorizedKeysCommand none
#AuthorizedKeysCommandRunAs nobody
#預設PasswordAuthentication 為yes,即允許密碼登入,改為no後,禁止密碼登入
PasswordAuthentication no
-
重啟
ssh
服務systemctl restart sshd.service