一 基礎
1.1 免密登入原理
Linux免密登入,本質上是使用了公鑰登入。就是伺服器1将自己的公鑰儲存在伺服器2上,伺服器2将自己的公鑰儲存在伺服器1上。伺服器1登入伺服器2的時候,伺服器2會向伺服器1發送一段随機字元串,伺服器1用自己的私鑰加密後,再發回來。伺服器2用事先儲存的公鑰進行解密,如果成功,就證明伺服器1是可信的,直接允許登入shell,不再要求密碼。常見如Git的ssh方式也是通過公鑰進行認證的。SSH公鑰登入比密碼登入更安全,密碼登入可能存在中間人。
1.2 環境準備
伺服器1
- 作業系統:CentOS7.8
- IP:192.168.0.99
伺服器2
- 作業系統:CentOS7.8
- IP:192.168.0.100
二 配置雙機互信
2.1 伺服器1操作
生成公鑰和私鑰
ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''
将公鑰傳到伺服器2
ssh-copy-id -i ~/.ssh/id_rsa.pub
2.2 伺服器2操作
生成公鑰和私鑰
ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''
将公鑰傳至伺服器1
ssh-copy-id -i ~/.ssh/id_rsa.pub
2.3 測試
伺服器1執行指令
ssh heartbeat02
發現不需要輸入密碼,可以直接登入到伺服器2。
至此,Linux伺服器的雙機互信即免密登入配置完成。