📌  相关文章
📜  Amazon Web Services – 对所有 AWS 区域使用单一 SSH 密钥

📅  最后修改于: 2022-05-13 01:57:46.139000             🧑  作者: Mango

Amazon Web Services – 对所有 AWS 区域使用单一 SSH 密钥

Secure Shell也称为SSH是一种加密网络协议,可帮助在不安全的网络上保护网络服务。与单独使用密码相比,它可以安全地帮助用户使用 SSH 登录服务器。与密码不同,仅靠暴力破解 SSH 密钥几乎是不可能的。

在本文中,我们将研究用户如何在其所有 AWS 区域中使用单个 SSH 密钥对。

要为您的所有 AWS 区域使用单个 SHH 密钥对,请执行以下步骤:

对于 Linux:

第 1 步:首先从私有 SSH 密钥生成一个公共 SSH 密钥。

第 2 步:现在将密钥导入您的每个 AWS 区域。如果您还没有,请先创建一个 ssh 密钥对。

首先,从一个私有 SSH 密钥文件生成一个公共 SSH 密钥文件。将密钥对名称替换为您的私有.pem 文件的名称。确保您正在使用bash shell并且使用具有有效访问权限的用户配置 AWS 命令行界面。

步骤 3:运行以下命令以设置 AWS 区域:

AWS_REGIONS="aws ec2 describe-regions --query 'Regionsd[].RegionName'text)"

第 4 步:现在运行以下命令将公共 SSH 密钥导入所有区域:

$ for each_region in ${AWS_REGIONS}; do aws ec2 import-key-pair --key-name MyKeyPair 
--public-key-material file://$HOME/.ssh/id_rsa_MyKeyPair.pub
--region $each_region; done

对于 Windows:

第 1 步:首先,从一个私有 SSH 密钥文件生成一个公共 SSH 密钥文件。所以,打开puttygen。

第2步: C选择加载以加载您的私钥文件。

第 3 步:选择保存公钥。

步骤 4:通过运行以下命令将公共 ssh 密钥导入所需的 AWS 区域:

$PubFile = Get-Content .\YOUR_PUBLIC_KEY.pub -raw
$Key = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($PubFile))
foreach $Region in (Get-AWSRegion).Region){Import-EC2KeyPair -keyName YOUR_PUBLIC_KEY 
  -PublicKeyMaterial $Key -Region $Region}

注意:将 YOUR_PUBLIC_KEY 替换为您的公共 ssh 密钥文件。