Dalam dokumen ini, istilah SSL mengacu pada protokol SSL (Secure Sockets Layer) dan TLS (Transport Layer Security). Informasi dalam dokumen ini berlaku untuk koneksi TLS melalui protokol transportasi TCP, yang dapat menggunakan versi TLS yang didukung. Untuk load balancer yang menggunakan koneksi HTTP/3, protokol transportasinya adalah QUIC, yang secara eksklusif menggunakan TLS 1.3.
Kebijakan SSL menentukan serangkaian fitur SSL yang digunakan load balancer saat menegosiasikan SSL dengan klien. Google Cloud Misalnya, Anda dapat menggunakan kebijakan SSL untuk menentukan versi dan fitur TLS minimum yang harus didukung oleh setiap klien agar dapat mengirim traffic ke load balancer Anda.
Load balancer berikut mendukung kebijakan SSL global:
- Load Balancer Aplikasi eksternal global
- Load Balancer Aplikasi Klasik
- Load Balancer Aplikasi internal lintas region
- Load Balancer Jaringan proxy eksternal global
- Load Balancer Jaringan proxy klasik
Load balancer berikut mendukung kebijakan SSL regional:
- Load Balancer Aplikasi eksternal regional
- Load Balancer Aplikasi internal regional
Secara default, load balancer ini menggunakan serangkaian fitur SSL yang memberikan keamanan yang baik dan kompatibilitas yang luas. Beberapa aplikasi memerlukan kontrol yang lebih besar atas versi dan cipher SSL yang digunakan untuk koneksi HTTPS atau SSL-nya. Anda dapat menentukan kebijakan SSL untuk menentukan serangkaian fitur SSL yang digunakan load balancer saat menegosiasikan SSL dengan klien.
Contoh berikut menunjukkan cara koneksi dari klien dibuat dan dihentikan di load balancer.
Anda dapat menggunakan kebijakan SSL untuk mengonfigurasi versi TLS minimum dan fitur SSL yang diaktifkan di load balancer. Kebijakan SSL memengaruhi koneksi antara klien dan load balancer (Koneksi-1 dalam ilustrasi). Kebijakan SSL tidak memengaruhi koneksi antara load balancer dan backend (Koneksi-2).
Menentukan kebijakan SSL
Untuk menentukan kebijakan SSL, Anda menentukan versi TLS minimum dan profil. Profil memilih serangkaian fitur SSL yang akan diaktifkan di load balancer.
Tiga profil yang dikelola Google yang telah dikonfigurasi sebelumnya memungkinkan Anda menentukan tingkat kompatibilitas yang sesuai untuk aplikasi Anda. Tiga profil yang telah dikonfigurasi sebelumnya adalah sebagai berikut:
- KOMPATIBEL. Memungkinkan serangkaian klien terluas, termasuk klien yang hanya mendukung fitur SSL yang sudah tidak berlaku, untuk menegosiasikan SSL dengan load balancer.
- MODERN. Mendukung serangkaian fitur SSL yang luas, sehingga memungkinkan klien modern menegosiasikan SSL.
- DIBATASI. Mendukung serangkaian fitur SSL yang lebih sedikit, yang ditujukan untuk memenuhi persyaratan kepatuhan yang lebih ketat.
Profil KUSTOM keempat memungkinkan Anda memilih fitur SSL satu per satu.
Kebijakan SSL juga menentukan versi minimum protokol TLS yang dapat digunakan klien untuk membuat koneksi.
Perhatikan bahwa profil dapat secara tidak langsung membatasi versi TLS yang dapat dinegosiasikan oleh load balancer. Misalnya, cipher yang diaktifkan dalam profil RESTRICTED hanya didukung oleh TLS 1.2; oleh karena itu, memilih profil RESTRICTED secara efektif melarang klien menggunakan TLS 1.0 dan 1.1, meskipun versi TLS minimum kebijakan SSL mengizinkannya.
Jika Anda tidak memilih salah satu dari tiga profil yang telah dikonfigurasi sebelumnya atau membuat kebijakan SSL kustom, load balancer Anda akan menggunakan kebijakan SSL default. Kebijakan SSL default setara dengan kebijakan SSL yang menggunakan profil COMPATIBLE dengan versi TLS minimum TLS 1.0.
Anda dapat melampirkan kebijakan SSL ke lebih dari satu proxy target. Anda tidak dapat mengonfigurasi lebih dari satu kebijakan SSL untuk proxy target tertentu. Setiap perubahan yang dilakukan pada kebijakan SSL tidak mengubah atau mengganggu koneksi load balancer yang ada.
Cloud Load Balancing tidak mendukung SSL versi 3.0 atau yang lebih lama. Tabel berikut menjelaskan dukungan fitur untuk setiap versi TLS/SSL.
Versi TLS/SSL | Dukungan fitur |
---|---|
TLS 1.0, 1.1, atau 1.2 | Setelan dalam kebijakan SSL mengontrol cipher suite yang diterapkan ke koneksi klien. |
TLS 1.3 | Setelan dalam kebijakan SSL tidak mengontrol pemilihan cipher. TLS 1.3
hanya mendukung cipher TLS_AES_128_GCM_SHA256 ,
TLS_AES_256_GCM_SHA384 , dan
TLS_CHACHA20_POLY1305_SHA256 . |
SSL 3.0 atau yang lebih lama | Tidak berlaku. Tidak didukung oleh Cloud Load Balancing. |
Selama setiap handshake TLS, klien menunjukkan versi protokol TLS tertinggi yang didukungnya. Server diwajibkan untuk memilih versi protokol tertinggi yang didukung oleh klien dan server serta diizinkan oleh konfigurasi server. Misalnya, jika load balancer dikonfigurasi dengan versi TLS minimum 1.2, handshake dengan klien modern yang mendukung TLS 1.3 akan memilih TLS 1.3. Handshake dengan klien lama yang hanya mendukung TLS 1.2 menggunakan TLS 1.2. Handshake dengan klien yang lebih lama yang hanya mendukung TLS 1.1 akan gagal.
Tabel berikut mencantumkan fitur kebijakan SSL yang tersedia untuk setiap profil yang telah dikonfigurasi sebelumnya. Semua fitur mengontrol apakah rangkaian sandi tertentu dapat digunakan, dan hanya berlaku untuk koneksi yang menggunakan TLS versi 1.2 atau yang lebih lama, bukan untuk koneksi yang menggunakan TLS 1.3.
Nilai IANA | Fitur | Dalam profil COMPATIBLE | Di profil MODERN | Di profil DIBATASI |
---|---|---|---|---|
0xCCA9 | TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 | ♦ | ♦ | ♦ |
0xCCA8 | TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 | ♦ | ♦ | ♦ |
0xC02B | TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 | ♦ | ♦ | ♦ |
0xC02F | TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 | ♦ | ♦ | ♦ |
0xC02C | TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 | ♦ | ♦ | ♦ |
0xC030 | TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 | ♦ | ♦ | ♦ |
0xC009 | TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA | ♦ | ♦ | |
0xC013 | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA | ♦ | ♦ | |
0xC00A | TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA | ♦ | ♦ | |
0xC014 | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA | ♦ | ♦ | |
0x009C | TLS_RSA_WITH_AES_128_GCM_SHA256 | ♦ | ||
0x009D | TLS_RSA_WITH_AES_256_GCM_SHA384 | ♦ | ||
0x002F | TLS_RSA_WITH_AES_128_CBC_SHA | ♦ | ||
0x0035 | TLS_RSA_WITH_AES_256_CBC_SHA | ♦ | ||
0x000A | TLS_RSA_WITH_3DES_EDE_CBC_SHA | ♦ |
Update fitur
Kami berhak memperbarui kumpulan fitur yang diaktifkan dalam profil KOMPATIBEL, MODERN, dan TERBATAS, serta fitur mana yang dapat dikonfigurasi dalam profil KUSTOM. Kami melakukan hal ini saat kami menghapus dukungan untuk kemampuan SSL yang lebih lama dan saat kami menambahkan dukungan untuk kemampuan yang lebih baru.
Saat menambahkan fitur yang meningkatkan kemampuan SSL, kami dapat mengaktifkannya segera di profil COMPATIBLE, MODERN, dan RESTRICTED sehingga kebijakan SSL yang memilih profil tersebut dapat menggunakan fitur baru. Namun, jika kebijakan Anda memilih profil KUSTOM, Anda harus mengubah setelan kebijakan untuk menggunakan fitur yang ditambahkan.
Batasan
Menonaktifkan cipher atau versi SSL tertentu dapat menyebabkan beberapa klien lama tidak dapat terhubung ke proxy Anda menggunakan HTTPS atau SSL. Menonaktifkan pilihan sandi yang cukup luas dalam profil KUSTOM dapat menyebabkan tidak ada klien yang dapat melakukan negosiasi HTTPS.
Sertifikat SSL yang terkait dengan load balancer Anda menggunakan tanda tangan digital ECDSA atau RSA. Profil yang telah ditentukan sebelumnya kompatibel dengan kedua jenis tanda tangan sertifikat. Profil kustom harus mengaktifkan sandi yang kompatibel dengan tanda tangan digital yang digunakan oleh sertifikat load balancer Anda.
Fitur yang mengontrol cipher suite hanya berlaku untuk koneksi klien yang menggunakan TLS versi 1.2 dan yang lebih lama. Mereka tidak mengontrol pemilihan cipher dalam koneksi yang menggunakan TLS 1.3.
Langkah berikutnya
- Untuk membuat, mengubah, atau menghapus kebijakan SSL, lihat Menggunakan kebijakan SSL.
- Untuk mengonfigurasi sertifikat SSL, lihat Membuat dan menggunakan sertifikat SSL.