Skip to content

Files

Latest commit

 

History

History
69 lines (51 loc) · 1.03 KB

google-compute-no-public-ip.md

File metadata and controls

69 lines (51 loc) · 1.03 KB

Pattern: Use of public IP for Google Compute

Issue: -

Description

Instances should not be publicly exposed to the internet.

Resolution: Remove public IP.

Examples

Example of incorrect code:

resource "google_compute_instance" "bad_example" {
  name         = "test"
  machine_type = "e2-medium"
  zone         = "us-central1-a"

  tags = ["foo", "bar"]

  boot_disk {
    initialize_params {
      image = "debian-cloud/debian-9"
    }
  }

  // Local SSD disk
  scratch_disk {
    interface = "SCSI"
  }

  network_interface {
    network = "default"

    access_config {
      // Ephemeral IP
    }
  }
}

Example of correct code:

resource "google_compute_instance" "good_example" {
  name         = "test"
  machine_type = "e2-medium"
  zone         = "us-central1-a"

  tags = ["foo", "bar"]

  boot_disk {
    initialize_params {
      image = "debian-cloud/debian-9"
    }
  }

  // Local SSD disk
  scratch_disk {
    interface = "SCSI"
  }

  network_interface {
    network = "default"
  }
}