一、首先登陸centos,切換用戶,切換到你要免密碼登陸的用戶,進(jìn)入到家目錄,以下我以root為例,命令:
su root
cd ~
二、創(chuàng)建鑰匙,命令:ssh-keygen -t rsa,一路按Y搞定
三、按照流程走完后會(huì)在 ~/.ssh目錄下(用戶所在家目錄下的.ssh目錄)看到id_rsa, id_rsa.pub文件 第一個(gè)是私有密鑰 第二個(gè)是公共密鑰
四、修改SSH配置文件,命令:vim /etc/ssh/sshd_config
#禁用root賬戶登錄,如果是用root用戶登錄請(qǐng)開(kāi)啟
PermitRootLogin yes
# 是否讓 sshd 去檢查用戶家目錄或相關(guān)檔案的權(quán)限數(shù)據(jù),
# 這是為了擔(dān)心使用者將某些重要檔案的權(quán)限設(shè)錯(cuò),可能會(huì)導(dǎo)致一些問(wèn)題所致。
# 例如使用者的 ~.ssh/ 權(quán)限設(shè)錯(cuò)時(shí),某些特殊情況下會(huì)不許用戶登入
StrictModes no
# 是否允許用戶自行使用成對(duì)的密鑰系統(tǒng)進(jìn)行登入行為,僅針對(duì) version 2。
# 至于自制的公鑰數(shù)據(jù)就放置于用戶家目錄下的 .ssh/authorized_keys 內(nèi)
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
# 有了證書(shū)登錄了,就禁用密碼登錄吧,安全要緊
PasswordAuthentication no
五、因?yàn)樵诘谒牟街付薃uthorizedKeysFile的放置位置為.ssh/authorized_keys,所以還需把公鑰數(shù)據(jù)id_rsa.pub附加到 authorized_keys 這個(gè)檔案內(nèi)才行,命令:
cd ~/.ssh
cat id_ras.pub >> authorized_keys
重啟SSH服務(wù),命令:systemctl restart sshd.service
六、下載私鑰,這里我使用了rz/sz工具(你也可以使用其他方式),系統(tǒng)默認(rèn)沒(méi)有安裝,先安裝,命令:yum -y install lrzsz
SecureCRT配置:選項(xiàng)→會(huì)話選項(xiàng)→X/Y/Zmodem,修改上傳和下載的目錄。
現(xiàn)在開(kāi)始下載,命令:
cd ~/.ssh
sz id_ras
然后到你之前配置的下載目錄去找,把私鑰導(dǎo)入到SecurtCRT,方法:
選項(xiàng)→會(huì)話選項(xiàng)→SSH2,在鑒權(quán)一欄中點(diǎn)擊公鑰(注意因?yàn)榍懊嬉呀?jīng)禁用了密碼登陸,我們還得把密碼這一欄的勾去掉,否則會(huì)無(wú)法登陸),點(diǎn)屬性,點(diǎn)擊使用會(huì)話公鑰設(shè)置,然后在下方的使用身份或證書(shū)文件中,選擇你剛才下載來(lái)的私鑰文件,點(diǎn)確定即可。
七、以上所有配置完成,看網(wǎng)上別的教程還說(shuō)要注意各文件權(quán)限問(wèn)題,我做實(shí)驗(yàn)的過(guò)程沒(méi)有遇到,也可能我使用的是root用戶的原因,如果你們?cè)谶^(guò)程中有權(quán)限報(bào)錯(cuò),建議權(quán)限設(shè)置:
~/.ssh/ 700
.ssh/authorized_keys 644
.ssh/id_rsa 600 且屬于你當(dāng)前要添加的用戶
八、讓服務(wù)器更安全,開(kāi)啟密碼和證書(shū)雙重驗(yàn)證,先修改SSH配置文件:
vim /etc/ssh/sshd_config
PasswordAuthentication 改為yes
然后再加一條:uthenticationMethods publickey,password
重啟SSH服務(wù):systemctl restart sshd.service
SecureCRT配置:因?yàn)橹霸诘诹街邪衙艽a去掉了,還得把它再勾起來(lái),選項(xiàng)→會(huì)話選項(xiàng)→SSH2,把密碼這一欄勾起來(lái)即可。
個(gè)人經(jīng)驗(yàn):在配置完成后不要關(guān)閉當(dāng)前SecurtCRT的連接窗口,你可以使用新建連接嘗試登陸,以免配置出錯(cuò),造成服務(wù)器無(wú)法登陸。