如何使用AWS中的安全组规则将443路由到80?

Mia*_*ian 0 amazon-web-services terraform aws-security-group

我想将 ALB 443 端口设置为具有 Terraform 安全组规则的 EC2 80 端口。

resource "aws_security_group_rule" "allow_https" {
  security_group_id        = aws_security_group.ec2.id
  type                     = "ingress"
  protocol                 = "tcp"
  from_port                = 443
  to_port                  = 80
  source_security_group_id = data.aws_ssm_parameter.alb.value
}
Run Code Online (Sandbox Code Playgroud)

申请的时候报错:

Error: Error authorizing security group rule type ingress: InvalidParameterValue: Invalid TCP/UDP port range(443:80)
Run Code Online (Sandbox Code Playgroud)

不是可以把443路由到80吗?

Tec*_*ise 6

ALB 的安全组仅负责负载均衡器允许的内容。它本身不会路由到 EC2。

您需要为 EC2 实例添加目标组并创建 443 侦听器(https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_listener)。然后添加侦听器规则以将流量从该侦听器路由到您的 EC2 实例的目标组(或将其设置为侦听器中的默认目标)。

此外,您还需要将该 EC2 实例添加到目标组中。