Menggunakan daftar URL untuk membuat kebijakan

Panduan ini menunjukkan cara menggunakan daftar URL untuk menentukan URL yang dapat diakses pengguna Anda.

Sebelum memulai

  • Selesaikan langkah-langkah penyiapan awal.

  • Verifikasi bahwa Anda telah menginstal Google Cloud CLI versi 406.0.0 atau yang lebih baru:

    gcloud version | head -n1
    

    Jika Anda telah menginstal gcloud CLI versi sebelumnya, update versinya:

    gcloud components update --version=406.0.0
    

Membuat instance Secure Web Proxy dengan kebijakan kosong

Untuk membuat instance Secure Web Proxy, Anda harus membuat kebijakan keamanan kosong terlebih dahulu, lalu membuat proxy web yang menggunakan kebijakan tersebut.

Membuat kebijakan keamanan kosong

Konsol

  1. Di konsol Google Cloud , buka halaman SWP Policies.

    Buka Kebijakan SWP

  2. Klik Buat kebijakan.

  3. Di kolom Name, masukkan nama untuk kebijakan, seperti myswppolicy.

  4. Di kolom Deskripsi, masukkan deskripsi untuk kebijakan, seperti My new swp policy.

  5. Untuk Regions, pilih region tempat Anda ingin membuat kebijakan, seperti us-central1.

  6. Klik Create.

Cloud Shell

  1. Gunakan editor teks pilihan Anda untuk membuat file policy.yaml.

  2. Tambahkan kode berikut ke file policy.yaml yang Anda buat:

    name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME
    description: POLICY_DESCRIPTION
    

    Ganti kode berikut:

    • PROJECT_NAME: nama project Anda

    • REGION: region tempat kebijakan Anda dibuat, seperti us-central1

    • POLICY_NAME: nama kebijakan Anda

    • POLICY_DESCRIPTION: deskripsi untuk kebijakan Anda

  3. Impor kebijakan keamanan menggunakan perintah gcloud network-security gateway-security-policies import:

    gcloud network-security gateway-security-policies import POLICY_NAME \
        --source=POLICY_FILE.yaml \
        --location=REGION
    

Membuat proxy web

Konsol

  1. Di konsol Google Cloud , buka halaman Web Proxies.

    Buka Web Proxy

  2. Klik Buat proxy web yang aman.

  3. Di kolom Nama, masukkan nama untuk proxy web, seperti myswp.

  4. Di kolom Deskripsi, masukkan deskripsi untuk proxy web, seperti My new swp.

  5. Untuk Routing mode, pilih opsi Explicit.

  6. Untuk Region, pilih region tempat Anda ingin membuat proxy web, seperti us-central1.

  7. Untuk Network, pilih jaringan tempat Anda ingin membuat proxy web.

  8. Untuk Subnetwork, pilih VPC subnet yang sebelumnya Anda buat sebagai bagian dari langkah penyiapan awal.

  9. Opsional: Di kolom Alamat IP proxy web, masukkan alamat IP Secure Web Proxy.

    Anda dapat memasukkan alamat IP dari rentang alamat IP Secure Web Proxy yang berada di subnetwork yang Anda buat pada langkah sebelumnya. Jika Anda tidak memasukkan alamat IP, instance Secure Web Proxy Anda akan otomatis memilih alamat IP dari subnetwork yang dipilih.

  10. Untuk Sertifikat, pilih sertifikat yang ingin Anda gunakan untuk membuat proxy web.

  11. Untuk Kebijakan, pilih kebijakan yang Anda buat untuk mengaitkan proxy web.

  12. Klik Create.

Cloud Shell

  1. Gunakan editor teks pilihan Anda untuk membuat file gateway.yaml.

  2. Tambahkan kode berikut ke file gateway.yaml:

    name: projects/PROJECT_NAME/locations/REGION/gateways/GATEWAY_NAME
    type: SECURE_WEB_GATEWAY
    ports: [GATEWAY_PORT_NUMBERS]
    certificateUrls: [CERTIFICATE_URLS]
    gatewaySecurityPolicy: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME
    network: projects/PROJECT_NAME/global/networks/NETWORK_NAME
    subnetwork: projects/PROJECT_NAME/regions/REGION/subnetworks/SUBNETWORK
    addresses: [GATEWAY_IP_ADDRESS]
    scope: samplescope
    

    Ganti kode berikut:

    • GATEWAY_NAME: nama instance Secure Web Proxy ini

    • GATEWAY_PORT_NUMBERS: daftar nomor port untuk gateway ini, seperti [80,443]

    • CERTIFICATE_URLS: daftar URL sertifikat SSL

    • SUBNETWORK: Subnet VPC yang sebelumnya Anda buat sebagai bagian dari langkah penyiapan awal

    • GATEWAY_IP_ADDRESS: daftar opsional alamat IP untuk instance Secure Web Proxy Anda dalam subnetwork proxy yang sebelumnya Anda buat di langkah penyiapan awal

      Jika Anda memilih untuk tidak mencantumkan alamat IP, kosongkan kolom agar proxy web memilih alamat IP untuk Anda.

  3. Buat instance Secure Web Proxy menggunakan perintah gcloud network-services gateways import:

    gcloud network-services gateways import GATEWAY_NAME \
        --source=gateway.yaml \
        --location=REGION
    

Menguji konektivitas

Untuk menguji konektivitas, gunakan perintah curl dari instance virtual machine (VM) mana pun dalam jaringan Virtual Private Cloud (VPC) Anda:

  curl -x https://GATEWAY_IP_ADDRESS:PORT_NUMBER https://www.example.com --proxy-insecure

Jika semuanya berfungsi dengan benar, instance Secure Web Proxy Anda akan menampilkan kode status 403 Forbidden. Error ini mengonfirmasi hal berikut:

  • Instance Secure Web Proxy telah berhasil di-deploy dan secara aktif menerima traffic.

  • Kebijakan Secure Web Proxy dengan benar menerapkan postur keamanan default untuk menolak semua traffic hingga Anda menentukan aturan allow tertentu di bagian berikutnya.

Membuat daftar URL

Untuk membuat daftar URL dan menambahkan aturan, selesaikan tugas di bagian berikut.

Membuat dan mengonfigurasi daftar URL

Konsol

  1. Di konsol Google Cloud , buka halaman URL Lists.

    Buka Daftar URL

  2. Klik Buat daftar URL.

  3. Masukkan nama untuk daftar URL yang ingin Anda buat, seperti myurllist.

  4. Masukkan deskripsi daftar URL, seperti My new URL list.

  5. Di daftar Wilayah, pilih wilayah tempat Anda ingin membuat daftar URL.

  6. Klik Upload daftar untuk mengupload daftar host, URL, atau pola yang akan dicocokkan. Untuk mengetahui informasi selengkapnya, lihat referensi sintaksis UrlList.

  7. Klik Create.

Cloud Shell

  1. Gunakan editor teks pilihan Anda untuk membuat file URL_LIST_FILE.yaml. ReplaceURL_LIST_FILE` dengan nama file yang Anda inginkan.

      name: projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME
      values: URL_LIST
    

    Ganti kode berikut:

    • PROJECT_ID: nomor project Anda
    • REGION: region tempat daftar URL ini berlaku
    • URL_LIST_NAME: nama untuk daftar URL yang Anda buat
    • URL_LIST: daftar host, URL, atau pola yang akan dicocokkan

    Untuk mengetahui informasi selengkapnya, lihat Referensi sintaksis UrlList.

    Berikut adalah contoh file aturan daftar URL:

    name: projects/PROJECT_ID/locations/REGION/urlLists/example-org-allowed-list
    values:
      - www.example.com
      - about.example.com
      - "*.google.com"
      - "github.com/example-org/*"
    

    Karakter tanda bintang (*) memiliki arti khusus dalam YAML. Oleh karena itu, Anda harus menambahkan tanda kutip di sekitar URL yang menyertakan karakter *.

  2. Tambahkan daftar URL agar dapat dirujuk oleh aturan Secure Web Proxy:

    gcloud network-security url-lists import URL_LIST_NAME \
        --location=REGION \
        --project=PROJECT_ID \
        --source=URL_LIST_FILE.yaml
    

Tambahkan aturan

Konsol

  1. Di konsol Google Cloud , buka halaman SWP Policies.

    Buka Kebijakan SWP

  2. Di menu pemilih project, pilih ID organisasi atau folder yang berisi kebijakan Anda.

  3. Klik nama kebijakan Anda.

  4. Klik Tambahkan aturan.

  5. Isi kolom aturan:

    1. Nama
    2. Deskripsi
    3. Status
    4. Prioritas: urutan evaluasi numerik aturan. Aturan dievaluasi dari prioritas tertinggi hingga terendah, dengan 0 sebagai prioritas tertinggi.
    5. Di bagian Tindakan, tentukan apakah koneksi yang cocok dengan aturan diizinkan (Izinkan) atau ditolak (Tolak).
    6. Di bagian Pencocokan Sesi, tentukan nama daftar URL yang Anda buat sebelumnya. Contoh:

        sessionMatcher: "inUrlList(host(), 'projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME')"
      
    7. Untuk mengaktifkan pemeriksaan TLS, pilih Aktifkan pemeriksaan TLS.

    8. Di bagian Pencocokan Aplikasi, tentukan kriteria untuk mencocokkan permintaan.

    9. Klik Create.

  6. Klik Tambahkan aturan untuk menambahkan aturan lain.

  7. Klik Buat untuk membuat kebijakan.

Cloud Shell

  1. Gunakan editor teks pilihan Anda untuk membuat file RULE_FILE.yaml. Ganti RULE_FILE dengan nama file yang Anda inginkan.

    name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/POLICY_NAME/rules/RULE_NAME
    basicProfile: ALLOW
    enabled: true
    priority: PRIORITY_VALUE
    description: RULE_DESCRIPTION
    sessionMatcher: SESSION_CEL_EXPRESSION
    applicationMatcher: APPLICATION_CEL_EXPRESSION
    

    Ganti kode berikut:

    • PROJECT_ID: nomor project Anda
    • REGION: region tempat aturan ini berlaku
    • POLICY_NAME: nama GatewaySecurityPolicy yang ada yang digunakan oleh instance Secure Web Proxy Anda
    • RULE_NAME: nama untuk GatewaySecurityPolicyRule yang Anda buat
    • PRIORITY_VALUE: nilai prioritas untuk aturan ini; angka yang lebih rendah sesuai dengan prioritas yang lebih tinggi
    • RULE_DESCRIPTION: deskripsi untuk kebijakan yang Anda buat
    • SESSION_CEL_EXPRESSION: ekspresi Common Expression Language (CEL) untuk sesi
    • APPLICATION_CEL_EXPRESSION: ekspresi CEL untuk aplikasi

    Berikut adalah contoh file aturan:

    name: projects/PROJECT_ID/locations/REGION/urlLists/allow-repos
    basicProfile: ALLOW
    enabled: true
    priority: 100
    description: Allow access to our list of known code repos.
    sessionMatcher: "inUrlList(host(), 'projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME')"
    

  2. Tambahkan aturan Secure Web Proxy menggunakan daftar URL yang Anda buat sebelumnya:

        gcloud network-security gateway-security-policies rules import RULE_NAME \
          --location=REGION \
          --project=PROJECT_ID \
          --source=RULE_FILE.yaml \
          --gateway-security-policy=POLICY_NAME
    

Menguji konektivitas

Untuk menguji konektivitas, gunakan perintah curl berikut:

curl -x https://SWP_IP_ADDRESS:SWP_PORT_NUMBER HTTP_TEST_ADDRESS
--proxy-insecure

Ganti kode berikut:

  • SWP_IP_ADDRESS: alamat IP ke proxy web Anda

  • SWP_PORT_NUMBER: nomor port untuk proxy web Anda, seperti 443

  • HTTP_TEST_ADDRESS: alamat yang akan diuji, seperti https://www.example.com, yang cocok dengan entri host atau URL di URL_LIST

Permintaan akan menampilkan respons yang berhasil.

Langkah berikutnya