Halaman ini menjelaskan cara menyiapkan pemeriksaan Transport Layer Security (TLS) untuk Cloud Next Generation Firewall.
Sebelum memulai
Sebelum mengonfigurasi pemeriksaan TLS, selesaikan tugas di bagian berikut.
Aktifkan Certificate Authority Service
Cloud NGFW menggunakan Certificate Authority Service untuk membuat certificate authority (CA) perantara. Cloud NGFW menggunakan CA perantara ini untuk membuat sertifikat yang digunakan untuk pemeriksaan TLS.
Anda dapat mengaktifkan CA Service API menggunakan Google Cloud konsol:
Untuk mengaktifkan Layanan CA menggunakan Google Cloud CLI, gunakan perintah berikut:
gcloud services enable privateca.googleapis.com
Aktifkan Pengelola Sertifikat
Cloud NGFW menggunakan Certificate Manager untuk membuat konfigurasi tepercaya. Jika Anda tidak ingin menggunakan konfigurasi kepercayaan, lewati langkah ini.
Anda dapat mengaktifkan Certificate Manager API menggunakan Google Cloud konsol:
Untuk mengaktifkan Pengelola Sertifikat menggunakan Google Cloud CLI, gunakan perintah berikut:
gcloud services enable certificatemanager.googleapis.com
Membuat konfigurasi kepercayaan
Ini langkah opsional. Untuk membuat konfigurasi kepercayaan, ikuti langkah-langkah di bagian ini.
-
Kumpulan CA yang Anda buat pada langkah ini berbeda dengan kumpulan CA yang Anda buat untuk mengonfigurasi kebijakan pemeriksaan TLS.
Buat CA root menggunakan kumpulan CA yang Anda buat sebelumnya.
Atau, gunakan CA root eksternal yang ada dengan membuat CA subordinat dalam layanan CA. CA root eksternal harus menandatangani CA subordinat ini. Agar Cloud NGFW dapat menggunakan CA, CA root dan subordinat di kumpulan CA harus memiliki panjang jalur minimal satu. Kolom
pathLenConstraint
dalam sertifikat CA menentukan panjang jalur. Kolom ini menentukan jumlah maksimum sertifikat CA subordinat yang dapat ada di jalur sertifikasi di bawah sertifikat CA saat ini.Buat sertifikat menggunakan kunci yang dibuat secara otomatis. Gunakan nama kumpulan CA yang sama dengan yang Anda buat sebelumnya.
Dapatkan sertifikat publik CA dari sertifikat yang dibuat.
$PEM-CERT=$(gcloud privateca roots describe ROOT_CA_NAME \ --location LOCATION \ --project PROJECT_ID \ --pool CA_POOL \ --format "value(pemCaCertificates)")
Ganti kode berikut:
ROOT_CA_NAME
: nama CA rootLOCATION
: lokasi CA rootPROJECT_ID
: project ID CA rootCA_POOL
: nama CA pool tempat sertifikat akan dibuat
Buat dan impor konfigurasi kepercayaan dengan menggunakan
PEM-CERT
yang diperoleh pada langkah sebelumnya. Jika Anda menggunakan CA Anda sendiri, gunakan sertifikat publik yang diperoleh dari CA Anda.
Anda menggunakan konfigurasi kepercayaan ini untuk membuat kebijakan pemeriksaan TLS.
Membuat kumpulan CA
Anda harus membuat kumpulan CA sebelum dapat menggunakan Layanan CA untuk membuat CA.
Untuk membuat kumpulan CA, ikuti petunjuk di Membuat kumpulan CA.
Anda menggunakan kumpulan CA ini untuk membuat kebijakan pemeriksaan TLS.
Membuat CA root
Jika Anda tidak memiliki CA root yang ada, Anda dapat membuatnya dalam Layanan CA. Untuk membuat CA root, ikuti petunjuk di Membuat CA root, dan gunakan kumpulan CA yang sama dengan yang Anda buat sebelumnya (lihat bagian Membuat kumpulan CA).
Untuk menggunakan CA root eksternal yang ada, buat CA subordinat dalam layanan CA, yang ditandatangani oleh CA root eksternal Anda.
Untuk NGFW Enterprise, sertifikat Subordinat memerlukan batasan panjang jalur minimal 1 agar dapat membuat CA perantara. Secara default, sertifikat subordinat dan CSR dibuat dengan batasan panjang jalur 0. Hal ini harus diubah. Saat ini, hal ini tidak dapat dilakukan melalui konsol dan hanya melalui perintah Google Cloud CLI yang disediakan CAS menggunakan beberapa tanda berikut
Flag
--extended-key-usages
: menentukan penggunaan kunci yang diperpanjang untuk sertifikat.Flag
--key-usages
: menentukan penggunaan kunci untuk sertifikat.Flag
--max-chain-length
: menentukan kedalaman maksimum CA subordinat yang diizinkan di bawah CA ini untuk sertifikat CA.
gcloud
gcloud privateca subordinates create SUBORDINATE_CA_ID \ --pool=SUBORDINATE_POOL_ID \ --location=LOCATION \ --create-csr --csr-output-file=FILE_NAME \ --key-algorithm="ec-p256-sha256" \ --subject="CN=Example Server TLS CA, O=Example LLC --key-algorithm=rsa-pss-4096-sha256 \ --key-usages=cert_sign,crl_sign \ --extended-key-usages=server_auth \ --max-chain-length=1"
Ganti kode berikut:
- SUBORDINATE_CA_ID: ID unik subordinate CA.
- SUBORDINATE_POOL_ID: nama pool CA.
- LOCATION: lokasi CA pool.
- FILE_NAME: nama file tempat CSR berenkode PEM ditulis.
Tindakan ini akan membuat CSR yang menampilkan hal berikut
Created Certificate Authority [projects/my-project-pki/locations/us-west1/caPools/SUBORDINATE_POOL_ID/certificateAuthorities/SUBORDINATE_CA_ID] and saved CSR to FILE_NAME.
Untuk mengaktifkan CA subordinat, Anda harus menandatangani CSR setelah dibuat.
Membuat akun layanan
Jika tidak memiliki akun layanan, Anda harus membuatnya dan memberikan izin yang diperlukan.
Buat akun layanan:
gcloud beta services identity create \ --service networksecurity.googleapis.com \ --project PROJECT_ID
Ganti
PROJECT_ID
dengan project ID akun layanan.Google Cloud CLI membuat akun layanan yang disebut
service-PROJECT_NUMBER@gcp-sa-networksecurity.
. Di sini,PROJECT_NUMBER
adalah ID unik dariPROJECT_ID
yang Anda berikan dalam perintah sebelumnya.Berikan izin ke akun layanan Anda untuk membuat sertifikat yang menggunakan kumpulan CA Anda:
gcloud privateca pools add-iam-policy-binding CA_POOL \ --member 'serviceAccount:SERVICE_ACCOUNT' \ --role 'roles/privateca.certificateRequester' \ --location REGION
Ganti kode berikut:
CA_POOL
: nama CA pool tempat sertifikat akan dibuatSERVICE_ACCOUNT
: nama akun layanan yang Anda buat pada langkah sebelumnyaLOCATION
: region pool CA
Mengonfigurasi pemeriksaan TLS
Sebelum melanjutkan tugas di bagian ini, pastikan Anda telah mengonfigurasi sertifikat, atau telah menyelesaikan tugas prasyarat yang tercantum di bagian Sebelum memulai.
Untuk mengonfigurasi pemeriksaan TLS, selesaikan tugas di bagian berikut.
Membuat kebijakan pemeriksaan TLS
Konsol
Di konsol Google Cloud , buka halaman TLS inspection policies.
Di menu pemilih project, pilih project Anda.
Klik Create TLS inspection policy.
Untuk Name, masukkan nama.
Opsional: Di kolom Deskripsi, masukkan deskripsi.
Dalam daftar Region, pilih region tempat Anda ingin membuat kebijakan inspeksi TLS.
Di daftar CA pool, pilih CA pool tempat Anda ingin membuat sertifikat.
Jika Anda belum mengonfigurasi kumpulan CA, klik Kumpulan Baru dan ikuti petunjuk di Membuat kumpulan CA.
Opsional: Dalam daftar Versi TLS minimum, pilih versi TLS minimum yang didukung oleh kebijakan.
Untuk Konfigurasi Kepercayaan, pilih salah satu opsi berikut:
- Khusus CA publik: Pilih opsi ini jika Anda ingin memercayai server dengan sertifikat yang ditandatangani secara publik.
Khusus CA pribadi: Pilih opsi ini jika Anda ingin memercayai server dengan sertifikat yang ditandatangani secara pribadi.
Dalam daftar Konfigurasi kepercayaan pribadi, pilih konfigurasi kepercayaan dengan trust store yang dikonfigurasi untuk digunakan dalam memercayai sertifikat server upstream. Untuk mengetahui informasi selengkapnya tentang cara membuat konfigurasi kepercayaan, lihat Membuat konfigurasi kepercayaan.
CA publik dan pribadi: Pilih opsi ini jika Anda ingin menggunakan CA publik dan pribadi.
Opsional: Dalam daftar Cipher suite profile, pilih jenis profil TLS. Anda dapat memilih salah satu nilai berikut:
- Kompatibel: memungkinkan serangkaian klien terluas, termasuk klien yang hanya mendukung fitur TLS yang sudah tidak berlaku, untuk melakukan negosiasi TLS.
- Modern: mendukung serangkaian fitur TLS yang luas, sehingga klien modern dapat melakukan negosiasi TLS.
- Dibatasi: mendukung serangkaian fitur TLS yang lebih sedikit yang dimaksudkan untuk memenuhi persyaratan kepatuhan yang lebih ketat.
Kustom: memungkinkan Anda memilih fitur TLS satu per satu.
Dalam daftar Cipher suites, pilih nama cipher suites yang didukung oleh profil kustom.
Klik Buat.
gcloud
Buat file YAML
TLS_INSPECTION_FILE.yaml
. GantiTLS_INSPECTION_FILE
dengan nama file pilihan Anda.Tambahkan kode berikut ke file YAML untuk mengonfigurasi kebijakan pemeriksaan TLS.
name: projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME caPool: projects/PROJECT_ID/locations/REGION/caPools/CA_POOL minTlsVersion: TLS_VERSION tlsFeatureProfile: PROFILE_TYPECIPHER_NAME excludePublicCaSet: `TRUE`|`FALSE` trustConfig: projects/PROJECT_ID/locations/REGION/trustConfigs/TRUST_CONFIG_NAME
Ganti kode berikut:
PROJECT_ID
: project ID kebijakan inspeksi TLSREGION
: region tempat kebijakan pemeriksaan TLS dibuatTLS_INSPECTION_NAME
: nama kebijakan pemeriksaan TLSCA_POOL
: nama CA pool tempat sertifikat akan dibuatPool CA harus ada dalam region yang sama.
TLS_VERSION
: argumen opsional yang menentukan versi TLS minimum yang didukung oleh Cloud NGFWAnda dapat memilih salah satu nilai berikut:
TLS_1_0
TLS_1_1
TLS_1_2
PROFILE_TYPE
: argumen opsional yang menentukan jenis profil TLSAnda dapat memilih salah satu nilai berikut:
PROFILE_COMPATIBLE
: memungkinkan serangkaian klien terluas, termasuk klien yang hanya mendukung fitur TLS yang sudah tidak berlaku, untuk melakukan negosiasi TLS.PROFILE_MODERN
: mendukung serangkaian fitur TLS yang luas, sehingga memungkinkan klien modern melakukan negosiasi TLS.PROFILE_RESTRICTED
: mendukung serangkaian fitur TLS yang lebih sedikit yang dimaksudkan untuk memenuhi persyaratan kepatuhan yang lebih ketat.PROFILE_CUSTOM
: memungkinkan Anda memilih fitur TLS satu per satu.
CIPHER_NAME
: argumen opsional untuk menentukan nama cipher suite yang didukung oleh profil kustomAnda menentukan argumen ini hanya jika jenis profil ditetapkan ke
PROFILE_CUSTOM
.excludePublicCaSet
: flag opsional untuk menyertakan atau mengecualikan set CA publik. Secara default, tanda ini ditetapkan ke salah (false). Jika tanda ini disetel ke benar (true), koneksi TLS tidak memercayai server CA publik. Dalam hal ini, Cloud NGFW hanya dapat membuat koneksi TLS ke server dengan sertifikat yang ditandatangani oleh CA dalam konfigurasi tepercaya.TRUST_CONFIG_NAME
: argumen opsional untuk menentukan nama resource konfigurasi tepercaya
Impor kebijakan pemeriksaan TLS yang Anda buat di bagian Membuat kebijakan pemeriksaan TLS
gcloud network-security tls-inspection-policies import TLS_INSPECTION_NAME \ --source TLS_INSPECTION_FILE.yaml \ --location REGION
Ganti kode berikut:
TLS_INSPECTION_NAME
: nama kebijakan pemeriksaan TLSTLS_INSPECTION_FILE
: nama file YAML kebijakan pemeriksaan TLS
Melihat detail kebijakan pemeriksaan TLS
Anda dapat melihat informasi tentang kebijakan pemeriksaan TLS yang Anda buat di project Anda.
Konsol
Di konsol Google Cloud , buka halaman TLS inspection policies.
Di menu pemilih project, pilih project Anda.
Kebijakan pemeriksaan TLS tercantum di bagian Pemeriksaan TLS.
Untuk melihat detailnya, klik nama kebijakan inspeksi TLS Anda.
Menambahkan kebijakan pemeriksaan TLS ke pengaitan endpoint firewall
Untuk menambahkan kebijakan pemeriksaan TLS ke pengaitan endpoint firewall, ikuti langkah-langkah yang disebutkan dalam Membuat pengaitan endpoint firewall.
Mengonfigurasi aturan kebijakan firewall dengan pemeriksaan TLS
Untuk mengaktifkan inspeksi TLS untuk jaringan Virtual Private Cloud (VPC) Anda, tetapkan flag --tls-inspect
dalam aturan kebijakan firewall Anda. Flag ini menunjukkan
bahwa pemeriksaan TLS dapat dilakukan saat
grup profil keamanan
diterapkan.
Untuk mempelajari lebih lanjut cara mengaktifkan tanda --tls-inspect
dalam aturan kebijakan firewall hierarkis, lihat Membuat aturan firewall.
Untuk mempelajari lebih lanjut cara mengaktifkan tanda --tls-inspect
dalam aturan kebijakan firewall jaringan global, lihat Membuat aturan firewall jaringan global.
Mengelola kebijakan pemeriksaan TLS
Anda dapat mencantumkan, memperbarui, dan menghapus kebijakan inspeksi TLS di project Anda.
Mencantumkan semua kebijakan pemeriksaan TLS
Anda dapat mencantumkan semua kebijakan inspeksi TLS dalam project.
Konsol
Di konsol Google Cloud , buka halaman TLS inspection policies.
Di menu pemilih project, pilih project Anda.
Kebijakan pemeriksaan TLS tercantum di bagian Pemeriksaan TLS.
gcloud
Untuk mencantumkan semua kebijakan pemeriksaan TLS, gunakan
perintah gcloud network-security tls-inspection-policies list
:
gcloud network-security tls-inspection-policies list \ --project PROJECT_ID \ --location REGION
Ganti kode berikut:
PROJECT_ID
: project ID untuk kebijakan inspeksi TLSREGION
: nama region yang kebijakan inspeksi TLS-nya ingin Anda cantumkan
Mengedit kebijakan pemeriksaan TLS
Anda dapat mengubah kebijakan pemeriksaan TLS yang ada di project Anda.
Konsol
Di konsol Google Cloud , buka halaman TLS inspection policies.
Di menu pemilih project, pilih project Anda.
Kebijakan pemeriksaan TLS tercantum di bagian Pemeriksaan TLS.
Untuk mengedit kebijakan, klik nama kebijakan pemeriksaan TLS Anda.
Klik Edit.
Ubah kolom yang wajib diisi. Untuk mengetahui informasi selengkapnya tentang setiap kolom, lihat Membuat kebijakan pemeriksaan TLS.
Klik Simpan.
Menghapus kebijakan pemeriksaan TLS
Anda dapat menghapus kebijakan inspeksi TLS dari project Anda. Namun, jika kebijakan inspeksi TLS dirujuk oleh pengaitan endpoint firewall, kebijakan inspeksi TLS tersebut tidak dapat dihapus.
Konsol
Di konsol Google Cloud , buka halaman TLS inspection policies.
Di menu pemilih project, pilih project Anda.
Kebijakan pemeriksaan TLS tercantum di bagian Pemeriksaan TLS.
Untuk menghapus kebijakan inspeksi TLS, centang kotak di samping namanya.
Klik Hapus.
Klik Hapus sekali lagi.
gcloud
Untuk menghapus kebijakan inspeksi TLS, gunakan
perintah gcloud network-security tls-inspection-policies delete
:
gcloud network-security tls-inspection-policies delete \ projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME \ --location REGION
Ganti kode berikut:
PROJECT_ID
: project ID kebijakan inspeksi TLSTLS_INSPECTION_NAME
: nama pemeriksaan TLSREGION
: region tempat kebijakan pemeriksaan TLS dibuat