Amazon EC2 金鑰對與 Linux 執行個體 - Amazon Elastic Compute Cloud

Amazon EC2 金鑰對與 Linux 執行個體

金鑰對 (由私密金鑰和公開金鑰組成) 是一組安全性登入資料,您可以在連線至執行個體時用來證明身份。Amazon EC2 儲存公開金鑰,並儲存私密金鑰。您可以使用私密金鑰 (, 而非密碼 ) 來安全地存取執行個體。任何擁有您私密金鑰的人都可以連線到您的執行個體,因此請務必將私密金鑰存放在安全的位置。

當您啟動執行個體時,系統會提示您輸入金鑰對。如果您計劃使用 SSH 連接到執行個體,則必須指定金鑰對。您可選擇現有金鑰對或建立新的金鑰對。當您的執行個體第一次開機時,您在啟動時指定的公開金鑰內容會放置在 Linux 執行個體中的項目中的 ~/.ssh/authorized_keys。當您使用 SSH 連線到 Linux 執行個體時,必須指定與要登入之公有金鑰內容相對應的私有金鑰。如需連線至執行個體的詳細資訊,請參閱連接至您的 Linux 執行個體。如需金鑰對和 Windows 執行個體的詳細資訊,請參閱 Windows 執行個體的 Amazon EC2 使用者指南Amazon EC2 金鑰對和 Windows 執行個體

由於 Amazon EC2 不會保留您私有金鑰的複本,因此,如果私有金鑰遺失了,就無法恢復。但是,仍然有一種方法可以連線到遺失私密金鑰的執行個體。如需詳細資訊,請參閱在遺失私有金鑰時連線到 Linux 執行個體

Amazon EC2 所使用的金鑰為 2048 位元的 SSH-2 RSA 金鑰。每個區域最多可以有 5,000 個金鑰對。

建立或匯入金鑰對

您可以使用 Amazon EC2 來建立新金鑰對,或者也可以匯入現有金鑰對。

選項 1:使用 Amazon EC2 建立金鑰對

您可以使用下列其中一種方法來建立金鑰對。

新的主控台

建立您的金鑰對

  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格的 NETWORK & SECURITY (網路與安全性) 中,選擇 Key Pairs (金鑰對)。

  3. 選擇 Create key pair (建立金鑰對)

  4. 對於 Name (名稱),為金鑰對輸入描述性名稱。Amazon EC2 會將公有金鑰與您指定為金鑰名稱的名稱建立關聯。金鑰名稱最多可包含 255 個 ASCII 字元。它不能包括前置或結尾空格。

  5. 對於 File format (檔案格式),選擇私有金鑰的儲存格式。若要將私有金鑰儲存為可與 OpenSSH 搭配使用的格式,請選擇 pem。若要將私有金鑰儲存為可與 PuTTY 搭配使用的格式,請選擇 ppk

  6. 選擇 Create key pair (建立金鑰對)

  7. 您的瀏覽器會自動下載私有金鑰檔案。基礎檔案名稱是您所指定的金鑰對名稱,而副檔名是根據您選擇的檔案格式所決定。將私有金鑰檔案存放在安全的地方。

    重要

    這是您儲存私有金鑰檔案的唯一機會。

  8. 如果您將在 macOS 或 Linux 電腦上使用 SSH 用戶端連線至 Linux 執行個體,請使用下列命令設定私有金鑰檔案的許可,以便只有您能夠讀取該檔案。

    chmod 400 my-key-pair.pem

    如果您未設定這些許可,則無法使用此金鑰對來連接至您的執行個體。如需更多詳細資訊,請參閱 錯誤:未受保護的私有金鑰檔案

舊版主控台

建立您的金鑰對

  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格的 NETWORK & SECURITY (網路與安全性) 中,選擇 Key Pairs (金鑰對)。

  3. 選擇 Create Key Pair (建立金鑰對)。

  4. 針對 Key pair name (金鑰對名稱),輸入金鑰對的描述名稱,然後選擇 Create (建立)。金鑰名稱最多可包含 255 個 ASCII 字元。它不能包括前置或結尾空格。

  5. 您的瀏覽器會自動下載私有金鑰檔案。基礎檔案名稱為您所指定的金鑰對名稱,副檔名為 .pem。將私有金鑰檔案存放在安全的地方。

    重要

    這是您儲存私有金鑰檔案的唯一機會。

  6. 如果您將在 macOS 或 Linux 電腦上使用 SSH 用戶端連線至 Linux 執行個體,請使用下列命令設定私有金鑰檔案的許可,以便只有您能夠讀取該檔案。

    chmod 400 my-key-pair.pem

    如果您未設定這些許可,則無法使用此金鑰對來連接至您的執行個體。如需更多詳細資訊,請參閱 錯誤:未受保護的私有金鑰檔案

AWS CLI

建立您的金鑰對

  1. 使用 create-key-pair AWS CLI 命令,如下所示生成金鑰並將其儲存到 .pem 檔案中。

    aws ec2 create-key-pair --key-name my-key-pair --query 'KeyMaterial' --output text > my-key-pair.pem
  2. 如果您將在 macOS 或 Linux 電腦上使用 SSH 用戶端連線至 Linux 執行個體,請使用下列命令設定私有金鑰檔案的許可,以便只有您能夠讀取該檔案。

    chmod 400 my-key-pair.pem

    如果您未設定這些許可,則無法使用此金鑰對來連接至您的執行個體。如需更多詳細資訊,請參閱 錯誤:未受保護的私有金鑰檔案

PowerShell

建立您的金鑰對

使用 New-EC2Keypair 適用於 Windows PowerShell 的 AWS 工具 命令,如下所示產生金鑰並將其儲存到 .pem 文件中。

PS C:\> (New-EC2KeyPair -KeyName "my-key-pair").KeyMaterial | Out-File -Encoding ascii -FilePath C:\path\my-key-pair.pem

選項 2:將您自己的公有金鑰匯入 Amazon EC2

您可以不使用 Amazon EC2 來建立金鑰對,而改用第三方的工具來產生 RSA 金鑰對,然後再將公有金鑰匯入 Amazon EC2。例如,您可以使用 ssh-keygen (標準 OpenSSH 安裝隨附的工具) 來產生金鑰對。或者,Java、Ruby、Python 和其他多種程式設計語言提供了標準程式庫,您可以使用這些程式庫來產生 RSA 金鑰對。

需求

  • 下列是支援的格式:

    • OpenSSH 公有金鑰格式 (~/.ssh/authorized_keys 中的格式)。如果您在使用 EC2 Instance Connect API 時以 SSH 連線,則還支援 SSH2 格式。

    • Base64 編碼的 DER 格式

    • RFC4716 中所指定的 SSH 公有金鑰檔案格式

    • SSH 私有金鑰檔案格式須為 PEM (例如,使用 ssh-keygen -m PEM 將 OpenSSH 金鑰轉換為 PEM 格式)

  • 建立 RSA 金鑰。Amazon EC2 不接受 DSA 金鑰。

  • 支援的長度為 1024、2048 和 4096。如果您在使用 EC2 Instance Connect API 時以 SSH 連線,則支援的長度為 2048 和 4096

使用第三方工具來產生金鑰對

  1. 使用您自選的第三方工具來產生金鑰對

  2. 將公有金鑰儲存到本機檔案。例如,~/.ssh/my-key-pair.pub (Linux) 或 C:\keys\my-key-pair.pub (Windows)。此檔案的副檔名不重要。

  3. 將私有金鑰儲存到具有 .pem 副檔名的不同本機檔案。例如,~/.ssh/my-key-pair.pem (Linux) 或 C:\keys\my-key-pair.pem (Windows)。將私有金鑰檔案存放在安全的地方。每次您連線至執行個體來啟動執行個體與對應的私有金鑰時,都需要提供您的金鑰對名稱。

建立金鑰對之後,請使用以下其中一個方法,將您的金鑰對匯入 Amazon EC2。

新的主控台

匯入公有金鑰

  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Key Pairs (金鑰對)

  3. 選擇 Import key pair (匯入金鑰對)

  4. 對於 Name (名稱),輸入金鑰對的描述性名稱。名稱最多可包含 255 個 ASCII 字元。它不能包括前置或結尾空格。

  5. 選擇 Browse (瀏覽) 以導覽並選取您的公有金鑰,或將公有金鑰的內容貼到 Public key contents (公有金鑰內容) 欄位。

  6. 選擇 Import key pair (匯入金鑰對)

  7. 確認您匯入的金鑰對顯示在金鑰對清單中。

舊版主控台

匯入公有金鑰

  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格的 NETWORK & SECURITY (網路與安全性) 中,選擇 Key Pairs (金鑰對)。

  3. 選擇 Import Key Pair (匯入金鑰對)

  4. Import Key Pair (匯入金鑰對) 對話方塊中,按一下 Browse (瀏覽),然後選擇您先前儲存的公有金鑰檔案。在 Key pair name (金鑰對名稱) 欄位中,輸入金鑰對的名稱,然後選擇 Import (匯入)。名稱最多可包含 255 個 ASCII 字元。它不能包括前置或結尾空格。

  5. 確認您匯入的金鑰對顯示在金鑰對清單中。

AWS CLI

匯入公有金鑰

使用 import-key-pair AWS CLI 命令。

確認是否已成功匯入金鑰對

使用 describe-key-pairs AWS CLI 命令。

PowerShell

匯入公有金鑰

使用 Import-EC2KeyPair 適用於 Windows PowerShell 的 AWS 工具 命令。

確認是否已成功匯入金鑰對

使用 Get-EC2KeyPair 適用於 Windows PowerShell 的 AWS 工具 命令。

標記金鑰對

為便於分類和管理現有金鑰對,您可以利用自訂中繼資料來標記這些請求。如需標籤運作方式的詳細資訊,請參閱標記您的 Amazon EC2 資源

您可以使用新的主控台和命令列工具來檢視、新增和刪除標籤。

新的主控台

檢視、新增或刪除現有金鑰對的標籤

  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Key Pairs (金鑰對)

  3. 選取金鑰對,然後選擇 Actions (動作)Manage tags (管理標籤)

  4. Manage tags (管理標籤) 區段會顯示指定給金鑰對的任何標籤。

    • 若要加入標籤,請選擇 Add tag (新增標籤),然後輸入標籤金鑰和值。每個金鑰對最多可新增 50 個標籤。如需詳細資訊,請參閱 標籤限制

    • 若要刪除標籤,請在您要刪除的標籤旁邊選擇 Remove (移除)

  5. 選擇 Save changes (儲存變更)

AWS CLI

檢視金鑰對標籤

使用 describe-tags AWS CLI 命令。下列範例描述所有金鑰對的標籤。

$ aws ec2 describe-tags --filters "Name=resource-type,Values=key-pair"
{ "Tags": [ { "Key": "Environment", "ResourceId": "key-0123456789EXAMPLE", "ResourceType": "key-pair", "Value": "Production" }, { "Key": "Environment", "ResourceId": "key-9876543210EXAMPLE", "ResourceType": "key-pair", "Value": "Production" }] }

描述特定金鑰對的標籤

使用 describe-key-pairs AWS CLI 命令。

$ aws ec2 describe-key-pairs --key-pair-ids key-0123456789EXAMPLE
{ "KeyPairs": [ { "KeyName": "MyKeyPair", "KeyFingerprint": "1f:51:ae:28:bf:89:e9:d8:1f:25:5d:37:2d:7d:b8:ca:9f:f5:f1:6f", "KeyPairId": "key-0123456789EXAMPLE", "Tags": [ { "Key": "Environment", "Value": "Production" }] }] }

為現有金鑰對加上標籤

使用 create-tags AWS CLI 命令。在下列範例中,現有金鑰對會加上 Key=Cost-CenterValue=CC-123 的標籤。

$ aws ec2 create-tags --resources key-0123456789EXAMPLE --tags Key=Cost-Center,Value=CC-123

從金鑰對刪除標籤

使用 delete-tags AWS CLI 命令。如需範例,請參閱 AWS CLI Command Reference中的範例

PowerShell

檢視金鑰對標籤

使用 Get-EC2Tag 命令。

描述特定金鑰對的標籤

使用 Get-EC2KeyPair 命令。

為現有金鑰對加上標籤

使用 New-EC2Tag 命令。

從金鑰對刪除標籤

使用 Remove-EC2Tag 命令。

擷取金鑰對的公有金鑰

在本機的 Linux 或 macOS 電腦上,您可以使用 ssh-keygen 命令來擷取金鑰對的公有金鑰。指定已將私有金鑰 (.pem 檔案) 下載至其中的路徑。

ssh-keygen -y -f /path_to_key_pair/my-key-pair.pem

此命令會傳回公有金鑰,如下列範例所示。

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE

如果此命令失敗,請執行下列命令,來確定您已將金鑰對檔案的許可變更為只有您能夠檢視。

chmod 400 my-key-pair.pem

透過執行個體中繼資料擷取金鑰對的公有金鑰

您在啟動執行個體時指定的公有金鑰,也可透過該執行個體的執行個體中繼資料來取得。若要檢視您在啟動執行個體時所指定的公有金鑰,請從執行個體使用下列的指令:

IMDSv2
[ec2-user ~]$ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \ && curl -H "X-aws-ec2-metadata-token: $TOKEN" –v http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key

以下為範例輸出。

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE my-key-pair
IMDSv1
[ec2-user ~]$ curl http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key

以下為範例輸出。

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE my-key-pair

如果變更用於連接到執行個體的金鑰對,我們不會變更執行個體中繼資料以顯示新的公有金鑰。相反地,執行個體中繼資料會繼續顯示啟動執行個體時指定之金鑰對的公有金鑰。如需更多詳細資訊,請參閱 擷取執行個體中繼資料

或者,在 Linux 執行個體上,公有金鑰的內容會放置於 ~/.ssh/authorized_keys內的項目中。您可以在編輯器中開啟此檔案。下列是名為 my-key-pair 之金鑰對的輸入內容範例。其中包含了公有金鑰,後面接著金鑰對的名稱。

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE my-key-pair

在執行個體上尋找公有金鑰

當您啟動執行個體時,系統會提示您輸入金鑰對。如果您計劃使用 SSH 連接到執行個體,則必須指定金鑰對。您可選擇現有金鑰對或建立新的金鑰對。當您的執行個體第一次開機時,您在啟動時指定之公有金鑰內容會放置在 Linux 執行個體上的 ~/.ssh/authorized_keys 內的項目中。

如何在執行個體上尋找公有金鑰

  1. 連線到您的執行個體。如需更多詳細資訊,請參閱 連接至您的 Linux 執行個體

  2. 在終端機視窗中,使用您最愛的文字編輯器 (例如 vimnano) 開啟 authorized_keys 檔案。

    [ec2-user ~]$ nano ~/.ssh/authorized_keys

    authorized_keys 檔案隨即開啟,顯示公有金鑰,如下列範例所示。

    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6Vhz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXrlsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZqaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3RbBQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE

識別啟動時指定的金鑰對

當您啟動執行個體時,系統會提示您輸入金鑰對。如果您計劃使用 SSH 連接到執行個體,則必須指定金鑰對。

識別啟動時指定的金鑰對

  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Instances (執行個體),然後選取您的執行個體。

  3. 描述標籤上,金鑰對名稱欄位會顯示您在啟動執行個體時指定的金鑰對名稱。即使您變更執行個體上的公開金鑰,或新增金鑰對,金鑰對名稱的值也不會變更。

(選用) 驗證金鑰對的指紋

在 Amazon EC2 主控台的 Key Pairs (金鑰對) 頁面上,Fingerprint (指紋) 欄會顯示從金鑰對產生的指紋。AWS 會根據金鑰對是由 AWS 或第三方工具產生,以不同的方式計算出指紋。如果是使用 AWS 產生金鑰對,則會使用 SHA-1 雜湊函式來計算指紋。如果是使用第三方工具產生金鑰對,並將公有金鑰上傳到 AWS,或是從 AWS 建立的現有私有金鑰產生新的公有金鑰,並將此金鑰上傳到 AWS,則會使用 MD5 雜湊函式來計算指紋。

您可以使用 Key Pairs (金鑰對) 頁面上所顯示的 SSH2 指紋,來驗證本機機器上存放的私有金鑰,是否符合 AWS 中所存放的公有金鑰。在已下載私有金鑰檔案的電腦上,從私有金鑰檔案中產生 SSH2 指紋。輸出的內容應符合主控台中所顯示的指紋。

如果已使用 AWS 建立金鑰對,您可以利用 OpenSSL 工具以產生指紋,如以下範例所示。

$ openssl pkcs8 -in path_to_private_key -inform PEM -outform DER -topk8 -nocrypt | openssl sha1 -c

如果您已使用第三方工具建立金鑰對,並將公有金鑰上傳到 AWS,則可以使用 OpenSSL 工具來產生指紋,如以下範例所示:

$ openssl rsa -in path_to_private_key -pubout -outform DER | openssl md5 -c

如果您已使用 OpenSSH 7.8 或更新版本建立 OpenSSH 金鑰對,並將公有金鑰上傳到 AWS,則可以使用 ssh-keygen 來產生指紋,如以下範例所示。

$ ssh-keygen -ef path_to_private_key -m PEM | openssl rsa -RSAPublicKey_in -outform DER | openssl md5 -c

新增或更換執行個體的金鑰對

您可以變更用來存取執行個體預設系統帳戶的金鑰對。例如,您組織中的使用者如果需要使用不同的金鑰對來存取系統使用者帳戶,您可以將該金鑰對加入執行個體。或者,如果某些人擁有 .pem 檔案的複本,而您希望讓這些人無法連線到執行個體 (例如,如果這些人已離開您的組織),則您可以用新的金鑰對來更換原有的金鑰對。

若要新增或取代金鑰對,您必須能夠連線至您的執行個體。如果您已遺失現有的私有金鑰或您已在沒有金鑰對的情況下啟動執行個體,您將無法連線至執行個體,因此將無法新增或取代金鑰對。如果您已遺失現有的私有金鑰,您可能可以擷取它。如需更多詳細資訊,請參閱 在遺失私有金鑰時連線到 Linux 執行個體。如果您已在沒有金鑰對的情況下啟動執行個體,除非您已選擇設定為允許使用者透過其他方式登入的 AMI,否則您將無法連線至該執行個體。

注意

這些程序是用來修改預設使用者帳戶 (例如 ec2-user) 的金鑰對。關於將使用者帳戶加入執行個體,詳細資訊請參閱 在您的 Amazon Linux 執行個體上管理使用者帳戶

新增或替換金鑰對

  1. 使用 Amazon EC2 主控台第三方工具來建立新的金鑰對。

  2. 從新的金鑰對擷取公有金鑰。如需更多詳細資訊,請參閱 擷取金鑰對的公有金鑰

  3. 使用現有的私有金鑰檔案,來連線到執行個體。

  4. 使用您自選的文字編輯器,在執行個體上開啟 .ssh/authorized_keys 檔案。貼上新金鑰對的公有金鑰資訊 (在現有公有金鑰資訊的下方)。儲存檔案。

  5. 中斷與執行個體的連線,然後測試是否能使用新的私有金鑰檔案來連線到執行個體。

  6. (選用) 如果要替換現有的金鑰對,請連線到執行個體,然後從 .ssh/authorized_keys 檔案,刪除原始金鑰對的公有金鑰資訊。

注意

如果使用 Auto Scaling 群組,請確定在啟動範本或啟動組態中,並未指定您要取代的金鑰對。如果 Amazon EC2 Auto Scaling 偵測到運作狀態不良的執行個體,就會啟動替代用的執行個體;不過,如果找不到金鑰對,則執行個體的啟動作業就會失敗。

刪除您的金鑰對

當您刪除金鑰對時,只會刪除 Amazon EC2 的公有金鑰複本。刪除金鑰對不會影響到您電腦上的私有金鑰,對於已使用該金鑰對啟動的任何執行個體,也不會影響到其上的公有金鑰。您無法使用已刪除的金鑰對來啟動新的執行個體,但只要您仍然保有私有金鑰 (.pem) 檔案,就可以繼續連線到使用已刪除金鑰對啟動的任何執行個體。

如果使用 Auto Scaling 群組 (例如在 Elastic Beanstalk 環境中),請確定在啟動組態中,並未指定您要刪除的金鑰對。如果 Amazon EC2 Auto Scaling 偵測到運作狀態不良的執行個體,就會啟動替代用的執行個體;不過,如果找不到金鑰對,則執行個體的啟動作業就會失敗。

您可以使用下列其中一種方法來刪除金鑰對。

新的主控台

刪除您的金鑰對

  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Key Pairs (金鑰對)

  3. 選取要刪除的金鑰對,然後選擇 Delete (刪除)

  4. 在確認欄位中,輸入 Delete,然後選擇 Delete (刪除)

舊版主控台

刪除您的金鑰對

  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格的 NETWORK & SECURITY (網路與安全性) 中,選擇 Key Pairs (金鑰對)。

  3. 選取金鑰對,然後選擇 Delete (刪除)

  4. 出現提示時,請選擇 Yes (是)

AWS CLI

刪除您的金鑰對

使用 delete-key-pair AWS CLI 命令。

PowerShell

刪除您的金鑰對

使用 Remove-EC2KeyPair 適用於 Windows PowerShell 的 AWS 工具 命令。

如果從執行個體建立 Linux AMI,然後使用 AMI 來啟動不同區域或帳戶中的新執行個體,則新的執行個體會包含取自原始執行個體的公有金鑰。這可讓您使用與原始執行個體相同的私有金鑰檔案,來連線到新的執行個體。您可以使用自選的文字編輯器,透過將此公有金鑰的內容從 .ssh/authorized_keys 檔案中移除,來從執行個體中將其移除。關於管理執行個體上的使用者,以及使用特定的金鑰對來提供遠端存取,詳細資訊請參閱 在您的 Amazon Linux 執行個體上管理使用者帳戶