linux公鑰下發操作SSH無密碼訪問
阿新 • • 發佈:2021-09-29
公鑰下發操作
場景:往往我們需要一臺機器可以不需要密碼就能直連其他機器,為了避免某臺機器密碼改了忘記密碼不能登入,我們就使用公鑰下發操作這樣會很方便,下文寫一下如何下發公鑰。
主機名 | IP | 下發路徑 |
master | 192.168.1.18 | /root/.ssh/authorized_keys |
node1 | 192.168.1.19 | /root/.ssh/authorized_keys |
node2 | 192.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 ~]#