溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux下如何管理SSH密鑰

發(fā)布時(shí)間:2024-09-23 16:20:25 來(lái)源:億速云 閱讀:78 作者:小樊 欄目:建站服務(wù)器

在 Linux 下管理 SSH 密鑰,通常涉及創(chuàng)建、分發(fā)、更新和刪除密鑰對(duì)

  1. 安裝 OpenSSH 客戶端和服務(wù)器軟件:

對(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
  1. 生成 SSH 密鑰對(duì):

使用 ssh-keygen 命令生成一個(gè)新的 SSH 密鑰對(duì)。這將創(chuàng)建一個(gè)公鑰和一個(gè)私鑰文件。例如:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

按照提示操作,可以選擇默認(rèn)的文件名和路徑,或者自定義。如果不想設(shè)置密碼,可以直接按 Enter 鍵。

  1. 將公鑰添加到遠(yuǎn)程服務(wù)器:

將生成的公鑰(默認(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)限。

  1. 測(cè)試 SSH 連接:

現(xiàn)在,嘗試使用以下命令連接到遠(yuǎn)程服務(wù)器:

ssh user@remote_host

如果一切正常,你將無(wú)需輸入密碼即可登錄。

  1. 更換 SSH 密鑰對(duì):

如果需要更換 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。

  1. 刪除遠(yuǎn)程服務(wù)器上的公鑰:

如果需要從遠(yuǎn)程服務(wù)器上刪除公鑰,可以編輯 ~/.ssh/authorized_keys 文件,然后刪除相應(yīng)的行。重新啟動(dòng) SSH 服務(wù)以使更改生效:

sudo systemctl start ssh
  1. 管理多個(gè) 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

這樣,連接到 server1server2 時(shí)將使用不同的密鑰對(duì)。

  1. SSH 代理:

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 命令。

  1. SSH 密鑰輪換:

定期更換 SSH 密鑰對(duì)可以提高安全性??梢允褂?ssh-keygen 命令生成新的密鑰對(duì),然后將舊密鑰從遠(yuǎn)程服務(wù)器的 ~/.ssh/authorized_keys 文件中刪除。最后,更新本地客戶端的已知主機(jī)文件(通常位于 ~/.ssh/known_hosts),以刪除舊密鑰的條目。

以上就是在 Linux 下管理 SSH 密鑰的基本方法。請(qǐng)確保妥善保管私鑰文件,不要泄露給他人。

向AI問(wèn)一下細(xì)節(jié)

免責(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)容。

AI