1. 程式人生 > 其它 >linux公鑰下發操作SSH無密碼訪問

linux公鑰下發操作SSH無密碼訪問

公鑰下發操作
場景:往往我們需要一臺機器可以不需要密碼就能直連其他機器,為了避免某臺機器密碼改了忘記密碼不能登入,我們就使用公鑰下發操作這樣會很方便,下文寫一下如何下發公鑰。

主機名IP下發路徑
master192.168.1.18/root/.ssh/authorized_keys
node1192.168.1.19/root/.ssh/authorized_keys
node2192.168.1.20/root/.ssh/authorized_keys
  • ssh-keygen是用來產生一對祕鑰檔案的。一個是私鑰 id_rsa,一個是公鑰id_rsa.pub,下發肯定是把公開的檔案下發,所以應該是id_rsa.pub別搞錯了。
[root@localhost ~]#ssh-keygen -t rsa   #生成一對祕鑰檔案 一般-t dsa | ecdsa | ed25519 | rsa | rsa1可以選擇不同的加密型別,在不同作業系統型別中間可以選擇不同形式
[root@localhost ~]# cd /root/.ssh/
[root@localhost .ssh]# ls
authorized_keys  id_rsa  id_rsa.pub  known_hosts  #這裡產生了兩個檔案 id_rsa  id_rsa.pub
  • 下發是通過專用下發工具ssh-copy-id來下發
ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]    #這裡的/root/.ssh/id_rsa.pub就是自己主機master的公鑰
ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
  • 下發完成後就可以直接在master上通過ssh [email protected]連線,不需要密碼了。機試19或20改了root密碼也不影響我們使用。這個常常用於被攻擊後的持久訪問,即使你改了密碼也一樣可以登入。
[root@localhost /]# ssh [email protected]
Last login: Thu Sep 30 00:11:58 2021 from 192.168.1.18
[root@localhost ~]#