【问题标题】:Terraform. SSH keys. Connect from bastion host to ec2 instance in private subnet地形。 SSH 密钥。从堡垒主机连接到私有子网中的 ec2 实例
【发布时间】:2022-02-05 17:27:12
【问题描述】:

无法从公有子网中的堡垒主机连接到我在私有子网中的 ec2 实例。权限被拒绝(公钥) 如何使用 Terraform 生成密钥并将它们部署到服务器? network overwiew

【问题讨论】:

  • 你当前的 TF 码是多少?

标签: amazon-ec2 ssh terraform


【解决方案1】:

好吧,对于密钥,您可以使用密钥对手动生成。之后,在您的 Terraform 脚本上使用该密钥 par。或者,如果您仍需要使用 Terraform 生成密钥,请尝试以下链接:https://www.phillipsj.net/posts/generating-ssh-keys-with-terraform/

【讨论】:

  • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
【解决方案2】:

使用下面的 tls 提供程序创建并将内容保存在文件中,然后在资源创建中使用密钥对名称

variable "private_key_file_path" {
 default = "ec2-key.pem"
}

        resource "tls_private_key" "ec2key" {
          algorithm = "RSA"
          rsa_bits  = 4096 
        }
        
        resource "local_file" "private_key" {
          content         = tls_private_key.ec2key.private_key_pem
          filename        = "${var.private_key_file_path}"
          file_permission = "0400"
        }
    
    
     resource "aws_key_pair" "key-pair" { 
      key_name = split(".","${var.private_key_file_path}")[0]
      public_key = tls_private_key.ec2key.public_key_openssh
    }

注意:将密钥保存在文件中的 local_file 资源不是安全最佳实践

【讨论】:

    猜你喜欢
    • 2021-02-05
    • 2016-10-31
    • 2020-04-27
    • 2019-09-10
    • 2019-09-16
    • 2021-10-16
    • 2021-02-16
    • 1970-01-01
    • 2020-05-31
    相关资源
    最近更新 更多