1

在当前设置中,我有一个堡垒/跳转服务器,其公共 IP 具有密码身份验证和启用了谷歌身份验证器的 MFA。我有一个带有入站规则的私有主机,它只允许来自我的堡垒主机所在的安全组的 ssh。问题是,我想让我的 jumpbox 主机的用户使用他们的密码直接登录到集群中的私有主机,而不是我创建他们的用户并在私有主机中为他们设置密码(使用用户数据或使用弹性 IP)。

目前,我正在使用弹性 IP 在私有服务器中创建用户。我期待一个解决方案,我可以在用户数据中有一个脚本,这将允许堡垒主机的所有用户直接使用他们的密码登录。这样我只需要在堡垒主机中创建用户,而不用担心私有主机。

重现步骤:

  1. 在公有子网中创建 EC2。
  2. 以 root 用户身份登录。
  3. 编辑 /etc/ssh/sshd_config 文件。
  4. 更新以下行。
  5. 密码验证是
  6. PermitRootLogin 是
  7. 使用以下命令为 ec2-user 设置密码 passwd ec2-user enter the password
  8. 为堡垒主机启用谷歌身份验证器。
  9. sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
  10. sudo yum install google-authenticator.x86_64 -y
  11. 须藤 vi /etc/pam.d/sshd
  12. 在最后添加这一行。 需要验证 pam_google_authenticator.so nullok
  13. 须藤 vi /etc/ssh/sshd_config
  14. 添加这一行ChallengeResponseAuthentication 是
  15. 打开 google-authenticator 并设置 MFA。
  16. 有关更多信息,请参阅此页面:https ://www.middlewareinventory.com/blog/aws-mfa-ssh-ec2-setup/
  17. 最后,重启sshd服务 service sshd restart
  18. 现在,在私有子网中创建一个 EC2 实例,并允许来自 jumpserver 安全组的端口 22(SSH) 的入站流量。

默认情况下,私有 ec2 将要求提供私有密钥。我可以将本地系统中的私钥从堡垒主机转发到私有服务器。但相反,我想对私人服务器使用密码验证。

我希望描述足够简洁。如果您需要其他任何内容,请在评论中告诉我。

4

0 回答 0