security-groups-elb.tf 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. resource "aws_security_group" "elb_external" {
  2. name = "Keycloak ELB"
  3. description = "Keycloak Instances"
  4. vpc_id = var.vpc_id
  5. tags = merge(var.standard_tags, var.tags)
  6. }
  7. resource "aws_security_group_rule" "elb-http-in" {
  8. description = "Inbound HTTP, for redirect only"
  9. type = "ingress"
  10. from_port = "80"
  11. to_port = "80"
  12. protocol = "tcp"
  13. cidr_blocks = [ "0.0.0.0/0" ]
  14. security_group_id = aws_security_group.elb_external.id
  15. }
  16. resource "aws_security_group_rule" "elb-https-in" {
  17. description = "Inbound HTTPS, where the magic happens"
  18. type = "ingress"
  19. from_port = "443"
  20. to_port = "443"
  21. protocol = "tcp"
  22. cidr_blocks = [ "0.0.0.0/0" ]
  23. security_group_id = aws_security_group.elb_external.id
  24. }
  25. resource "aws_security_group_rule" "elb-alt-http-to-instances" {
  26. description = ""
  27. type = "egress"
  28. from_port = "8080"
  29. to_port = "8080"
  30. protocol = "TCP"
  31. security_group_id = aws_security_group.elb_external.id
  32. source_security_group_id = aws_security_group.instance.id
  33. }
  34. resource "aws_security_group_rule" "elb-alt-https-to-instances" {
  35. description = ""
  36. type = "egress"
  37. from_port = "8443"
  38. to_port = "8443"
  39. protocol = "TCP"
  40. security_group_id = aws_security_group.elb_external.id
  41. source_security_group_id = aws_security_group.instance.id
  42. }