第一步:伺服器第一次開啟ssh服務,
則會自動建立/etc/ssh/ssh_host*公鑰檔案,以及私鑰檔案
第三步:伺服器將自己的公鑰檔案傳送給客戶端(明文)
` /etc/init.d/ssh restart`
`ssh [ -f ] [-o ] [ -p ] 帳號@ip [命令]`
|引數|意義|
|:||
|-f|不登入,直接在遠端伺服器執行「後面的命令」|
|-o|額外的引數|
|-p|使用其他埠,預設22|
示例:a:登入遠端主機192.168.0.115的帳號msdoge
`1、 ssh [email protected]
2、 輸入密碼`
b:在不登入的情況下關閉192.168.0.115
`1、 ssh -f [email protected] shutdown -h now
2、 輸入密碼`
當ssh連線到第四步的時候客戶端對比本地~/.ssh/known_hosts檔案中伺服器公鑰與本次連線伺服器公鑰的資料,若有差異則會拒絕連線,以防連線到偽裝的伺服器。
若伺服器重新安裝了ssh,其在第一步中/etc/ssh/ssh_host*公鑰檔案重新計算,則可能會出現公鑰和以前不同,但ip相同的情況,此時客戶端則會避免連上偽裝的伺服器而拒絕連線。
此時客戶端可以vim 到~/.ssh/knoen_hosts刪除掉對應的伺服器公鑰資料即可
第一步:使用ssh-keygen命令製作公鑰私鑰檔案
ssh-keygen
[-t rsa|dsa]
-t:選擇密碼演算法,預設rsa
第二步:將生成的公鑰檔案上傳到伺服器
scp ~/.ssh/id_rsa.pub [email protected]
:~
第三步:在伺服器上配置
#登入遠端主機,並輸入密碼
.0.115
#根據配置檔案/etc/ssh/sshd_config中
#authorizedkeysfile的設定
#將公鑰檔案放在~/.ssh/authorized_keys
#若伺服器第一次使用可能沒有這個資料夾,需自建
#許可權必須是700!
mkdir ~/.ssh
chmod 700 ~/.ssh
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
#authorized_keys許可權必須644!
chmod 644 ~/.ssh/authorized_keys
ssh連線遠端伺服器
平常登陸遠端伺服器,每次都要輸入密碼,感覺挺麻煩的,下面提供一種相對便利的方式 windows 感覺xshell挺好的ubuntu sudo apt install expectmac brew install expect bin bash set timeout 30 spawn ssh l 使...
SSH連線遠端伺服器
ssh username ip p port提示輸入密碼後,即可登入 客戶端生成公鑰 私鑰 ssh keygen生成的公鑰 私鑰 存放在 ssh目錄下 將公鑰複製到伺服器上,追加到.ss 件夾下authorized keys檔案的末尾 scp p port ssh id rsa.pub userna...
伺服器ssh遠端連線失敗
檢視ssh服務狀態 systemctl status sshd.service正常應該是下圖情況 running 綠色即為正常狀態 在這裡插入描述 如果正常檢視後面步驟的防火牆設定,異常繼續下乙個步驟。提取碼 w7uv 解除安裝 rpm qa grep ssh將查到的幾個包openssh開頭的解除安...