Saat mengonfigurasi Pendengar HTTPS untuk Application Load Balancer (ALB), kebijakan keamanan TLS menentukan versi protokol TLS dan paket sandi yang didukung dalam negosiasi dengan klien. ALB menyediakan beberapa kebijakan pradefinisi umum. Untuk kebutuhan keamanan tertentu, Anda dapat menggunakan kebijakan kustom.
Cara kerja
ALB menggunakan kebijakan keamanan TLS untuk menentukan versi protokol TLS dan paket sandi yang didukung dalam negosiasi TLS. Selama proses handshake, klien mengirim pesan Client Hello yang mencantumkan versi protokol TLS dan paket sandi yang didukungnya. ALB mengevaluasi daftar tersebut berdasarkan kebijakan, memilih kombinasi yang didukung bersama, lalu merespons dengan Server Hello. Kombinasi yang dipilih kemudian menentukan metode pertukaran kunci dan pembuatan kunci sesi.
Kebijakan default
Standar keamanan dan kepatuhan mungkin mensyaratkan kebijakan keamanan TLS tertentu untuk ALB. Perluas tabel di bawah ini untuk melihat versi TLS dan paket sandi yang didukung oleh setiap kebijakan default, lalu pilih salah satu yang memenuhi kebutuhan Anda. Jika kebijakan default tidak memenuhi persyaratan Anda, Anda dapat membuat kebijakan kustom.
-
Kebijakan
tls_cipher_policy_1_0_to_1_3hanya didukung oleh instans ALB Edisi Extensible. -
Untuk aplikasi yang menghadap internet tanpa persyaratan kompatibilitas khusus, kami merekomendasikan kebijakan
tls_cipher_policy_1_2atau yang lebih ketat.
Konsol
Buka halaman Kebijakan Keamanan TLS di konsol ALB. Tab Default Policy menampilkan rincian setiap kebijakan.
API
Panggil operasi ListSystemSecurityPolicies untuk menanyakan kebijakan default.
Kebijakan kustom
Kebijakan kustom hanya didukung oleh instans ALB Jenis Standar dan yang diaktifkan WAF, tidak didukung oleh instans Jenis Dasar atau Edisi Extensible.
Buat kebijakan kustom
Konsol
-
Buka halaman Kebijakan Keamanan TLS di Konsol ALB dan pilih wilayah tempat instans ALB Anda dideploy.
-
Klik Create Custom Policy, konfigurasikan parameter berikut, lalu klik Create.
-
Minimum Version: Untuk memastikan keamanan, kami merekomendasikan memilih TLS 1.2 or Later kecuali aplikasi Anda memiliki persyaratan kompatibilitas khusus.
-
Enable TLS 1.3: Untuk memastikan keamanan dan efisiensi jaringan, kami merekomendasikan mengaktifkan opsi ini jika kompatibel dengan aplikasi Anda.
-
Cipher Suite: Paket sandi yang dipilih harus kompatibel dengan versi protokol TLS.
-
-
Setelah membuat kebijakan, Anda dapat memilihnya saat mengonfigurasi kebijakan keamanan TLS untuk pendengar.
API
Panggil CreateSecurityPolicy untuk membuat kebijakan kustom. Perhatikan bahwa kebijakan kustom harus berada di wilayah yang sama dengan instans ALB.
Untuk menggunakan sertifikat berbasis algoritma SM guna enkripsi HTTPS, pilih paket sandi algoritma SM (ECC-SM2-WITH-SM4-SM3) saat membuat kebijakan kustom. Untuk informasi selengkapnya, lihat Configure SM-based HTTPS on ALB for secure communication.
Perbarui protokol TLS dan paket sandi
Konsol
-
Buka halaman Kebijakan Keamanan TLS di Konsol ALB dan pilih wilayah kebijakan kustom tersebut.
-
Temukan kebijakan kustom target, klik Modify pada kolom Actions, lalu perbarui versi protokol TLS dan paket sandi di kotak dialog Modify TLS Security Policy.
API
Panggil UpdateSecurityPolicyAttribute untuk memperbarui atribut kebijakan kustom.
Salin kebijakan kustom ke wilayah lain
Konsol
-
Buka halaman Kebijakan Keamanan TLS di Konsol ALB dan pilih wilayah kebijakan kustom tersebut.
-
Temukan kebijakan kustom target, klik Replicate to Other Regions pada kolom Actions, pilih wilayah tujuan, lalu klik OK.
API
Panggil ListSecurityPolicies untuk mendapatkan parameter TLSVersions dan Ciphers dari kebijakan kustom sumber. Kemudian, panggil CreateSecurityPolicy dan teruskan nilai parameter tersebut untuk membuat kebijakan baru di wilayah tujuan.
Hapus kebijakan kustom
Untuk menghapus kebijakan kustom yang dikaitkan dengan pendengar, Anda harus terlebih dahulu mengubah kebijakan keamanan TLS pendengar tersebut atau menghapus pendengarnya.
Konsol
-
Buka halaman Kebijakan Keamanan TLS di Konsol ALB dan pilih wilayah kebijakan kustom tersebut.
-
Temukan kebijakan kustom target, klik Delete pada kolom Actions, lalu klik OK.
API
Panggil DeleteSecurityPolicy untuk menghapus kebijakan kustom.
Konfigurasi kebijakan keamanan TLS pendengar
Instans ALB Edisi Extensible hanya mendukung kebijakan default tls_cipher_policy_1_0_to_1_3.
Konsol
-
Saat Anda membuat pendengar HTTPS, pilih TLS Security Policy pada tab Configure SSL Certificate. Saat Anda membuat pendengar HTTPS secara cepat, pilih TLS Security Policy di kotak dialog Quick Create Listener.
-
Untuk memodifikasi kebijakan keamanan TLS, buka tab Listener pada halaman detail instans dan klik ID pendengar HTTPS target. Pada Listener Details, modifikasi TLS Security Policy di area SSL Certificate.
API
Saat memanggil CreateListener atau UpdateListenerAttribute, atur parameter SecurityPolicyId ke ID kebijakan keamanan TLS.
-
Panggil ListSystemSecurityPolicies untuk menanyakan
SecurityPolicyIdkebijakan default. -
Panggil ListSecurityPolicies untuk menanyakan
SecurityPolicyIdkebijakan kustom.
Penagihan
Kebijakan keamanan TLS tidak dikenai biaya, tetapi Anda tetap dikenai penagihan untuk instans ALB itu sendiri.
Lingkungan produksi
-
Keamanan traffic backend: Untuk keamanan ujung ke ujung, deploy instans ALB dan server backend Anda dalam VPC yang sama serta gunakan grup keamanan untuk mengontrol akses secara ketat.
-
Versi protokol TLS: Jika aplikasi Anda tidak memiliki persyaratan kompatibilitas khusus, gunakan TLS 1.2 dan TLS 1.3.
-
Rollback: Jika Anda mengalami masalah setelah memodifikasi kebijakan keamanan TLS, Anda dapat segera melakukan rollback perubahan dengan memodifikasi konfigurasi pendengar. Lakukan perubahan ini selama jam sepi.
-
Algoritma pertukaran kunci: Jika aplikasi Anda tidak memiliki persyaratan kompatibilitas khusus, hindari penggunaan paket sandi pertukaran kunci RSA berikut di lingkungan produksi:
AES128-GCM-SHA256,AES256-GCM-SHA384,AES128-SHA256,AES256-SHA256,AES128-SHA,AES256-SHA, danDES-CBC3-SHA. Paket sandi ini tidak mendukung forward secrecy (PFS) dan rentan terhadap serangan side-channel. Utamakan paket sandi yang menggunakan ECDHE atau DHE.
Pemecahan masalah peringatan "tidak aman"
Setelah mengonfigurasi kebijakan keamanan TLS tingkat tinggi, seperti tls_cipher_policy_1_2_strict_with_1_3, browser klien mungkin tetap menampilkan peringatan "Not Secure" atau "Insecure Connection" saat mengakses situs Anda. Periksa penyebab potensial berikut.
-
Klien atau browser tidak kompatibel dengan versi TLS yang dipilih: Beberapa browser atau sistem operasi lama tidak mendukung TLS 1.2 atau versi yang lebih baru. Ketidakcocokan ini menyebabkan handshake gagal dan memicu peringatan keamanan. Untuk mengesampingkan masalah kompatibilitas klien, uji dengan versi terbaru browser utama seperti Chrome atau Firefox. Dukungan untuk TLS 1.3 dapat bervariasi di berbagai versi Safari pada macOS; beralihlah ke Chrome untuk memverifikasi koneksi.
-
Sertifikat telah kedaluwarsa atau nama domain tidak cocok: Kebijakan keamanan TLS hanya mengatur negosiasi versi protokol dan paket sandi; tidak memengaruhi validitas sertifikat. Jika sertifikat telah kedaluwarsa atau nama domain pada sertifikat tidak sesuai dengan nama domain yang diakses, browser juga akan menampilkan peringatan keamanan. Pastikan sertifikat yang dikaitkan dengan pendengar ALB masih berlaku dan bidang CN atau SAN-nya mencakup nama domain yang diakses.
-
Klien menyimpan cache informasi koneksi TLS lama: Browser mungkin menyimpan cache informasi sesi dari koneksi sebelumnya yang menggunakan protokol TLS lama, sehingga status keamanan lama ditampilkan sementara. Untuk memverifikasi konfigurasi baru, hapus cache dan status SSL browser Anda lalu muat ulang halaman, atau buka halaman dalam mode penyamaran.
-
Gunakan tool online untuk memverifikasi hasil negosiasi aktual: Gunakan tool online seperti SSL Labs (
https://www.ssllabs.com/ssltest/) untuk memindai nama domain situs Anda. Anda kemudian dapat melihat versi protokol TLS, paket sandi, dan rantai sertifikat yang benar-benar didukung oleh ALB serta memastikan kebijakan telah diterapkan dengan benar.
Pemetaan paket sandi TLS
Tabel berikut memetakan paket sandi dalam format OpenSSL, format standar IANA, dan notasi heksadesimal.