1、首先登錄centos,切換用戶,切換到你要免密碼登錄的用戶,進入到家目錄,如下我以root爲例,命令:
su root
cd ~vim
2、建立鑰匙,命令:ssh-keygen -t rsa,一路按Y搞定centos
3、按照流程走完後會在 ~/.ssh目錄下(用戶所在家目錄下的.ssh目錄)看到id_rsa, id_rsa.pub文件 第一個是私有密鑰 第二個是公共密鑰安全
4、修改SSH配置文件,命令:vim /etc/ssh/sshd_config服務器
#禁用root帳戶登陸,若是是用root用戶登陸請開啓
PermitRootLogin yesssh
# 是否讓 sshd 去檢查用戶家目錄或相關檔案的權限數據,
# 這是爲了擔憂使用者將某些重要檔案的權限設錯,可能會致使一些問題所致。
# 例如使用者的 ~.ssh/ 權限設錯時,某些特殊狀況下會不準用戶登入
StrictModes noide
# 是否容許用戶自行使用成對的密鑰系統進行登入行爲,僅針對 version 2。
# 至於自制的公鑰數據就放置於用戶家目錄下的 .ssh/authorized_keys 內
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys工具
# 有了證書登陸了,就禁用密碼登陸吧,安全要緊
PasswordAuthentication norest
5、由於在第四步指定了AuthorizedKeysFile的放置位置爲.ssh/authorized_keys,因此還需把公鑰數據id_rsa.pub附加到 authorized_keys 這個檔案內才行,命令:
cd ~/.ssh
cat id_ras.pub >> authorized_keys教程
重啓SSH服務,命令:systemctl restart sshd.serviceit
6、下載私鑰,這裏我使用了rz/sz工具(你也可使用其餘方式),系統默認沒有安裝,先安裝,命令:yum -y install lrzsz
SecureCRT配置:選項→會話選項→X/Y/Zmodem,修改上傳和下載的目錄。
如今開始下載,命令:
cd ~/.ssh
sz id_ras
而後到你以前配置的下載目錄去找,把私鑰導入到SecurtCRT,方法:
選項→會話選項→SSH2,在鑑權一欄中點擊公鑰(注意由於前面已經禁用了密碼登錄,咱們還得把密碼這一欄的勾去掉,不然會沒法登錄),點屬性,點擊使用會話公鑰設置,而後在下方的使用身份或證書文件中,選擇你剛纔下載來的私鑰文件,點肯定便可。
7、以上全部配置完成,看網上別的教程還說要注意各文件權限問題,我作實驗的過程沒有遇到,也可能我使用的是root用戶的緣由,若是大家在過程當中有權限報錯,建議權限設置:
~/.ssh/ 700
.ssh/authorized_keys 644
.ssh/id_rsa 600 且屬於你當前要添加的用戶
8、讓服務器更安全,開啓密碼和證書雙重驗證,先修改SSH配置文件:
vim /etc/ssh/sshd_config
PasswordAuthentication 改成yes
而後再加一條:AuthenticationMethods publickey,password
重啓SSH服務:systemctl restart sshd.service
SecureCRT配置:由於以前在第六步中把密碼去掉了,還得把它再勾起來,選項→會話選項→SSH2,把密碼這一欄勾起來便可。
我的經驗:在配置完成後不要關閉當前SecurtCRT的鏈接窗口,你可使用新建鏈接嘗試登錄,以避免配置出錯,形成服務器沒法登錄。