ssh-keygen

ssh-keygen用來生成ssh公鑰認(rèn)證所需的公鑰和私鑰文件。

ssh秘鑰登錄特點(diǎn):1.安全;2.免輸密碼。
對于安全級別較高的服務(wù)器,建議配好ssh登錄后禁掉密碼登錄。
缺點(diǎn):略繁瑣。如果你的只是臨時登錄一次,那么還是密碼吧。

一、生成秘鑰

秘鑰對需要在你自己的機(jī)器上生成,然后把公鑰放到服務(wù)器相應(yīng)用戶的~/.ssh目錄

執(zhí)行下面命令,默認(rèn)生成位置是~/.ssh

ssh-keygen

系統(tǒng)會詢問你文件名和秘鑰密碼,可以一路回車過去,會生成兩個文件:

  • id_rsa 私鑰
  • id_rsa.pub 公鑰

默認(rèn)使用rsa算法,你也可以用比較詳細(xì)的指令,如

ssh-keygen -t rsa -b 1024 -f yourkeyname -C "備注"
參數(shù) 解釋
-b 采用長度1024bit的密鑰對,b=bits,最長4096,不過沒啥必要
-t rsa 采用rsa加密方式,t=type
-f 生成文件名,f=output_keyfiles
-C 備注,C=comment

更多參數(shù)可運(yùn)行 man ssh-keygen

二、在服務(wù)器上安裝秘鑰

把上一步生成的公鑰發(fā)送到服務(wù)器(scp,FillZilla等)上,然后在服務(wù)器上執(zhí)行下面命令

cat id_rsa.pub >> ~/.ssh/authorized_keys

如此便完成了公鑰安裝,有個小坑值得一提:authenrized_keys的權(quán)限必須是600或更小,否則會連接失敗。
保險起見,執(zhí)行下面命令

chmod 600 ~/.ssh/authorized_keys
chmod 700 ~/.ssh

另外,.ssh目錄的owner必須是ssh登錄用戶,不能是root

服務(wù)器ssh配置

修改服務(wù)器上的ssh配置文件,位置:/etc/ssh/sshd_config

RSAAuthentication yes
PubkeyAuthentication yes

PermitRootLogin no //禁止root登錄
PasswordAuthentication yes //允許密碼登錄,根據(jù)你的情況設(shè)置

然后重啟ssh服務(wù)

service sshd restart

三、連接服務(wù)器

方法1: 直接ssh
ssh -i ~/.ssh/id_rsa -p 22 user@yourservername
方法2(推薦):修改~/.ssh/config
Host server_alias(你的服務(wù)器別名)
HostName test.com/192.168.1.1(域名或IP)
Port 22
User user
IdentityFile id_rsa

保存后,登錄時只需執(zhí)行

ssh server_alias

多個服務(wù)器另起一行續(xù)寫就行了,就是這么簡單!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容