AWS EC2 Linux - 如何授予承包商 SSH 访问权限

AWS EC2 Linux - 如何授予承包商 SSH 访问权限

我们有一个运行 Linux(Amazon Linux 版本 2 (Karoo))和 Wordpress 的 AWS EC2 实例。目前我们公司的每个人都使用 wordpress.pem 文件通过 SSH 连接到此服务器(下面一行只是保存在我们连接的批处理文件中):

ssh -i %userprofile%\documents\ssh\wordpress.pem [email protected]

我们有一个承包商,他需要访问我们的 Wordpress 网站和 Linux 机器的 SSH 访问权限。我对 Linux 不太熟悉,所以我想知道是否有人知道一个网站或视频可以解释(希望有明确的说明)如何为用户设置访问权限所以我们不必向他们提供我们的 .pem 文件。目前我不知道该怎么做。在 Wordpress GUI 中添加用户是不言自明的……但在 Linux 方面则不然。

如果我打开 Putty 并尝试连接到 IP,它会要求输入用户名,但是当我输入 ec2-user 时,我得到以下信息:

在此处输入图片描述

提前致谢!

答案1

您可以将承包商的公钥添加到authorized_keys您服务器上的文件中。确切位置可能因您的 EC2 机器而异,但通常您可以在 找到它~/.ssh/authorized_keys

公钥看起来就像这样:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCrm+fRzQxElsN7ahKCHSymLpkLkW58d01ot3dsx4iIMQqLXuS2nS/yK2uWSYYt1Hrb3aBxJ8WDI+icq049wPIfehG1ew8KufWyFiAtYMKE4AB7VPM7seVvr4Q6ySl3MTbNhNN+Z9a5uSeGeD3ioje37SKyFiFlTeaXcE6SFvV1m5hoIHLJOBWy7j7e1Bbmp5BxfzOu3436L4vfl8LjTM2RRtCv9A0345x0kOM7fBctUpEiVXbSiMEZoZB+ALqnKDY7R1kccLjGJR19m/Pnm3lggVWevLu0zdURJ+HGdXzNOUpUMSgftROlzPtSpDf66WKoCUrlliK/t6qiSoYZzbERoGjWzguEk8tw50ynGf+jLs/fz/jvngZWfecPiqud9FgEQLu4+acJKneKkWbULjYoTlsTfvgNadoR0gbfhpTnGenNRgDI0JFM3uP4UXmXVQruDopPEkev6xicjLZSS8Kim53KO0owmsfVqjk2e1k2lukjX+BNa8lakEqU+UAvX/M= contractor

然后您只需要在 EC2 机器上打开一个文本编辑器(例如 nano、vim)并将公钥粘贴到authorized_keys我上面提到的文件中。

答案2

我会为承包商创建一个新的 Linux 用户,并为他们设置一个 ssh 密钥。我在 Amazon Linux1 中记录了如何执行此操作这里,但是一旦您理解了这个概念,我建议您搜索针对 AL2 的更新资源。

答案3

好吧,我想我终于搞清楚了。我现在唯一需要做的就是让测试用户成为实例的管理员,这样他们就可以安装东西了。步骤如下。

创建 Amazon Linux 实例并下载其原始 .pem 文件后...

在 AWS EC2 中,转到密钥对并单击创建密钥对,为其命名并选择 pem 格式,然后单击创建密钥对按钮。它将自动下载 pem 文件。保存它!

然后,使用创建实例时下载的原始 .pem 文件通过 SSH 连接到新的 Amazon Linux 实例。为此,打开 CMD 提示符并输入以下内容并按 ENTER(替换/路径/new_key_pair.pem为您的 pem 文件的路径,以及 54.123.123.123 为您的实际公共 IP):

ssh -i /path/new_key_pair.pem [email protected]

然后发出以下命令:

sudo su

sudo adduser test-user

sudo su - test-user

mkdir .ssh

chmod 700 .ssh

touch .ssh/authorized_keys

chmod 600 .ssh/authorized_keys

由于视频(https://youtu.be/khPGZYh73fo)假设每个人都在使用 Mac 或 Linux,我必须找出如何在 Windows 上获取公钥:

  1. 下载 Putty
  2. 打开 PuTTYgen
  3. 单击“加载”
  4. 将文件类型更改为所有文件(
  5. 浏览到 .pem 文件

复制输出窗口中的所有内容(除了最后的“imported-openssh-key”)。

返回您的 SSH 会话,打开 authorized_keys 文件并输入您从 PuTTYgen 复制的公钥:

nano .ssh/authorized_keys

粘贴公钥(在窗口的任意位置单击鼠标右键)并保存文件(CTRL+X 然后按 Y 然后按 ENTER)

将 .pem 文件发送给承包商。他们现在可以打开 CMD 提示符并输入以下内容以作为新用户通过 SSH 进行登录:

ssh -i /path/new_key_pair.pem [email protected]

参考:https://aws.amazon.com/premiumsupport/knowledge-center/new-user-accounts-linux-instance/

相关内容