經常會通過ssh登錄遠程伺服器,一種是通過密碼方式登錄,一種是通過公鑰登錄。 如何設置通過公鑰登錄伺服器 1. 先生成公鑰和私鑰 此時,會在存放ssh秘鑰的地方生成兩個文件(不同系統,存放秘鑰的地方不同),“.pub”結尾的是公鑰,另一個是私鑰 2. 第二步,將公鑰部署到伺服器 公鑰需要寫入到服務的 ...
經常會通過ssh登錄遠程伺服器,一種是通過密碼方式登錄,一種是通過公鑰登錄。
如何設置通過公鑰登錄伺服器
1. 先生成公鑰和私鑰
ssh-keygen 命令用來生成公鑰和私鑰 -t 用來指定密鑰類型(dsa | ecdsa | ed25519 | rsa | rsa1) -p 用來指定密碼短語 -C 用來添加註釋 比如 ssh-keygen -t rsa -C "mykey"
此時,會在存放ssh秘鑰的地方生成兩個文件(不同系統,存放秘鑰的地方不同),“.pub”結尾的是公鑰,另一個是私鑰
2. 第二步,將公鑰部署到伺服器
公鑰需要寫入到服務的 ~/.ssh/authorized_key文件中,這裡我通過sftp將公鑰上傳到伺服器,然後將文件內容寫入到 ~/.ssh/authorized_key文件中
上傳公鑰到伺服器 sftp root@yourhost -p 22 put mykey.pub 將文件寫入authorized_keys中 cat mykey.pub >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
3. 設置伺服器ssh的可以通過公鑰登錄
打開/etc/sshd_config文件,修改如下配置
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
4. 重啟ssh服務,就可以通過公鑰登錄了