您好,登錄后才能下訂單哦!
在 Linux 下管理 SSH 密鑰,通常涉及創(chuàng)建、分發(fā)、更新和刪除密鑰對(duì)
對(duì)于大多數(shù) Linux 發(fā)行版,OpenSSH 客戶端和服務(wù)器已經(jīng)預(yù)裝。如果沒(méi)有,可以使用包管理器安裝。例如,在 Ubuntu 或 Debian 系統(tǒng)上,可以運(yùn)行以下命令:
sudo apt-get update
sudo apt-get install openssh-client openssh-server
使用 ssh-keygen
命令生成一個(gè)新的 SSH 密鑰對(duì)。這將創(chuàng)建一個(gè)公鑰和一個(gè)私鑰文件。例如:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
按照提示操作,可以選擇默認(rèn)的文件名和路徑,或者自定義。如果不想設(shè)置密碼,可以直接按 Enter 鍵。
將生成的公鑰(默認(rèn)為 ~/.ssh/id_rsa.pub
)復(fù)制到遠(yuǎn)程服務(wù)器的 ~/.ssh/authorized_keys
文件中??梢允褂?ssh-copy-id
命令簡(jiǎn)化此過(guò)程:
ssh-copy-id user@remote_host
輸入遠(yuǎn)程服務(wù)器的密碼以確認(rèn)權(quán)限。
現(xiàn)在,嘗試使用以下命令連接到遠(yuǎn)程服務(wù)器:
ssh user@remote_host
如果一切正常,你將無(wú)需輸入密碼即可登錄。
如果需要更換 SSH 密鑰對(duì),首先停止 SSH 服務(wù):
sudo systemctl stop ssh
然后刪除舊密鑰對(duì)(默認(rèn)為 ~/.ssh/id_rsa
和 ~/.ssh/id_rsa.pub
):
rm ~/.ssh/id_rsa*
接下來(lái),生成新的密鑰對(duì)并重復(fù)步驟 3 和 4。
如果需要從遠(yuǎn)程服務(wù)器上刪除公鑰,可以編輯 ~/.ssh/authorized_keys
文件,然后刪除相應(yīng)的行。重新啟動(dòng) SSH 服務(wù)以使更改生效:
sudo systemctl start ssh
可以使用 SSH 配置文件(通常位于 ~/.ssh/config
)來(lái)管理多個(gè) SSH 密鑰。在配置文件中,可以為每個(gè)主機(jī)指定不同的密鑰文件。例如:
Host server1
HostName server1.example.com
User user1
IdentityFile ~/.ssh/id_rsa_server1
Host server2
HostName server2.example.com
User user2
IdentityFile ~/.ssh/id_rsa_server2
這樣,連接到 server1
和 server2
時(shí)將使用不同的密鑰對(duì)。
SSH 代理可以幫助管理多個(gè) SSH 密鑰,而無(wú)需每次都手動(dòng)指定密鑰文件。可以使用 ssh-add
命令將密鑰添加到代理中:
ssh-add ~/.ssh/id_rsa_server1
ssh-add ~/.ssh/id_rsa_server2
要連接到使用代理的主機(jī),只需指定主機(jī)名即可:
ssh server1
要?jiǎng)h除代理中的密鑰,可以使用 ssh-add -d
命令。
定期更換 SSH 密鑰對(duì)可以提高安全性??梢允褂?ssh-keygen
命令生成新的密鑰對(duì),然后將舊密鑰從遠(yuǎn)程服務(wù)器的 ~/.ssh/authorized_keys
文件中刪除。最后,更新本地客戶端的已知主機(jī)文件(通常位于 ~/.ssh/known_hosts
),以刪除舊密鑰的條目。
以上就是在 Linux 下管理 SSH 密鑰的基本方法。請(qǐng)確保妥善保管私鑰文件,不要泄露給他人。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。