centos7 服務器部署ssh證書受權登陸

使用ssh證書受權登陸的必要性

普通用戶登陸時,以往的作法每每是使用帳號密碼登陸,可是這樣的登陸方式風險至關高,使用密鑰登陸能大大下降這個風險,這個密鑰是針對每臺計算機生成的獨一無二的憑證,保存在登陸用戶的電腦中,只能經過登陸用戶電腦的證書受權才能登陸服務器。shell

登陸用戶電腦操做

創建~/.ssh目錄(若是沒有)

shellls -al ~/.ssh

根據郵箱建立私鑰

shellssh-keygen -t rsa -b 4096 -C "your_email@example.com"

按照流程走完後會在 ~/.ssh目錄下看到id_rsa, id_rsa.pub文件 第一個是私有密鑰 第二個是擁有密鑰vim

複製id_rsa.pub中的內容(mac)

shellcat id_rsa.pub | pbcopy

服務器配置(centos7)

shellvim /etc/ssh/sshd_config

將以下配置前的#號去掉centos

ruby#禁用root帳戶登陸,若是是用root用戶登陸請開啓
PermitRootLogin yes

# 是否讓 sshd 去檢查用戶家目錄或相關檔案的權限數據,
# 這是爲了擔憂使用者將某些重要檔案的權限設錯,可能會致使一些問題所致。
# 例如使用者的 ~.ssh/ 權限設錯時,某些特殊狀況下會不準用戶登入
StrictModes no

# 是否容許用戶自行使用成對的密鑰系統進行登入行爲,僅針對 version 2。
# 至於自制的公鑰數據就放置於用戶家目錄下的 .ssh/authorized_keys 內
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys

# 有了證書登陸了,就禁用密碼登陸吧,安全要緊
PasswordAuthentication no

將密鑰寫到一張文件去 如test 而後將這個文件導入 ~/.ssh/authorized_keys

shellcat test >> ~/.ssh/authorized_keys

啓動ssh服務

shellservice sshd start

有可能會提示安全

shellRedirecting to /bin/systemctl start  sshd.service

只要按照提示操做就能開啓ssh服務ruby

shell/bin/systemctl start  sshd.service

這樣一來在計算機持有密鑰的狀況下就能夠不使用帳號密碼登陸服務器了

相關文章
相關標籤/搜索