SSh服務登錄的驗證方式: 基於口令的安全驗證 1、客戶端發起ssh請求,伺服器會把自己的公鑰發送給用戶 2、用戶會根據伺服器發來的公鑰對密碼進行加密 3、加密後的信息回傳給伺服器,伺服器用自己的私鑰解密,如果密碼正確,則登錄成功 註:不能保證你正在連接的伺服器就是你想連接的伺服器。可能會有別的服務 ...
SSh服務登錄的驗證方式:
基於口令的安全驗證
1、客戶端發起ssh請求,伺服器會把自己的公鑰發送給用戶
2、用戶會根據伺服器發來的公鑰對密碼進行加密
3、加密後的信息回傳給伺服器,伺服器用自己的私鑰解密,如果密碼正確,則登錄成功
註:不能保證你正在連接的伺服器就是你想連接的伺服器。可能會有別的伺服器在冒充真正的伺服器,也就是受到“中間人”這種方式的攻擊。
基於密匙的安全驗證
1、先在客戶端生成一對密鑰(ssh-keygen),並將客戶端的公鑰ssh-copy-id 拷貝到服務端
2、當客戶端再次發送一個連接請求,包括ip、用戶名
3、服務端得到客戶端的請求後,會到authorized_keys中查找,如果有響應的IP和用戶,就會隨機生成一個字元串,例如:acdf
4、服務端將使用客戶端拷貝過來的公鑰進行加密,然後發送給客戶端
5、得到服務端發來的消息後,客戶端會使用私鑰進行解密,然後將解密後的字元串發送給服務端
6、服務端接受到客戶端發來的字元串後,跟之前的字元串進行對比,如果一致,就允許免密碼登錄
Centos 6為客戶端 192.168.40.130
Centos 7為服務端 192.168.40.129
一、在客戶端生成密鑰對
預設為rsa演算法
ssh-keygen -t dsa 以dsa演算法生成密鑰對
二、把公鑰文件傳輸到伺服器上要登錄用戶家目錄下
三、連接測試
Key驗證之後,scp這種走ssh通道的都會免密
私鑰須保存好
加快SHH連接速度
在服務端修改 /etc/ssh/sshd_config 配置文件
把UseDNS和GSSAPIAuthentication 兩項都改成no
然後重啟ssh服務