HTTPS adalah protokol aman yang mengenkripsi data saat transit. Setelah Anda meningkatkan layanan ke HTTPS, Anda dapat menggunakan CLB untuk mengalihkan permintaan HTTP ke HTTPS secara mulus. Topik ini menjelaskan cara menggunakan CLB untuk mengalihkan permintaan HTTP ke HTTPS.
Fitur utama
-
Transisi mulus: Pengalihan cepat dan lancar dari HTTP ke HTTPS memastikan pengalaman penjelajahan yang tidak terganggu bagi pengguna Anda.
-
Beban server berkurang: Load balancer menangani pengalihan, sehingga tugas ini tidak dibebankan ke server backend Anda. Hal ini memungkinkan server fokus pada logika aplikasi inti dan meningkatkan efisiensi.
Kasus penggunaan
-
Peningkatan ke HTTPS: Amankan situs web atau aplikasi yang sudah ada dengan migrasi dari HTTP ke HTTPS guna meningkatkan keamanan transmisi data.
-
Perubahan nama domain atau migrasi situs: Saat memindahkan situs web ke domain baru, gunakan pengalihan untuk memastikan akses pengguna tetap berkelanjutan.
Contoh
Sebuah perusahaan yang telah membeli instans CLB dan mengonfigurasi pendengar HTTP kini perlu meningkatkan situs web-nya ke HTTPS demi keamanan data yang lebih baik. Untuk mencegah gangguan layanan selama peningkatan, perusahaan tersebut menggunakan instans CLB untuk mengalihkan permintaan HTTP ke HTTPS. Hal ini memastikan transisi yang lancar sekaligus mengamankan data bisnis.
Catatan penggunaan
-
Fitur pengalihan HTTP CLB tersedia di semua wilayah.
-
Saat mengonfigurasi pengalihan HTTP ke HTTPS, pendengar HTTP dan HTTPS harus berada pada instans CLB yang sama.
-
Redirection by Listener tidak dapat diaktifkan untuk pendengar HTTP yang sudah ada pada instans CLB. Anda harus mengaktifkan Redirection by Listener saat membuat pendengar HTTP tersebut.
Prasyarat
-
Buat dua server backend, ECS01 dan ECS02, lalu deploy aplikasi pada masing-masing server. Dalam topik ini, server menggunakan sistem operasi Alibaba Cloud Linux 3.2104 LTS 64-bit. Untuk informasi lebih lanjut, lihat Buat instans menggunakan wizard.
-
Buat instans CLB. Topik ini menggunakan contoh instans CLB yang menghadap internet. Untuk informasi lebih lanjut, lihat Buat dan kelola instans CLB.
-
Beli sertifikat atau unggah sertifikat pihak ketiga ke Certificate Management Service dan bind ke nama domain Anda. Untuk informasi lebih lanjut, lihat Aktifkan HTTPS untuk website menggunakan sertifikat.
Prosedur
Langkah 1: Buat pendengar HTTPS
-
Masuk ke Konsol Classic Load Balancer.
-
Pada bilah navigasi atas, pilih wilayah tempat instans CLB Anda dideploy.
-
Pada halaman Instances, temukan instans target, lalu klik Configure Listener di kolom Actions.
-
Pada langkah Protocol & Listener, konfigurasi pendengar sebagai berikut lalu klik Next.
Topik ini hanya menjelaskan parameter yang diperlukan. Gunakan nilai default untuk semua parameter lainnya. Untuk informasi lebih lanjut tentang parameter lainnya, lihat Tambahkan pendengar HTTPS.
-
Select Listener Protocol: HTTPS.
-
Listener Port: 443.
-
-
Pada langkah Certificate Management Service, pilih sertifikat server yang sudah ada, atau klik Create Server Certificate dari daftar drop-down Server Certificate. Gunakan nilai default untuk parameter lainnya lalu klik Next.
-
Pada langkah Backend Servers, tambahkan server backend ke dalam grup server. Topik ini menggunakan contoh Default Server Group.
-
Pilih Default Server Group lalu klik Add More.
-
Pada panel Servers, pilih ECS01 dan ECS02, lalu klik Next.
-
Pada langkah Ports/Weights, atur bobot untuk ECS01 dan ECS02, lalu klik Add.
-
Atur port untuk ECS01 dan ECS02 menjadi 80, lalu klik Next.
-
-
Pada langkah Health Check, gunakan pengaturan default lalu klik Next.
-
Pada langkah Confirm, tinjau konfigurasi pendengar lalu klik Submit. Saat kotak dialog konfirmasi muncul, klik OK.
Langkah 2: Konfigurasi aturan pengalihan pendengar HTTP
-
Pada tab Listener, klik Add Listener.
-
Pada langkah Protocol & Listener, konfigurasi pendengar menggunakan informasi berikut, gunakan nilai default untuk pengaturan lainnya, lalu klik Next.
Parameter
Deskripsi
Select Listener Protocol
Protokol yang digunakan oleh pendengar.
Dalam topik ini, pilih HTTP.
Listener Port
Port yang menerima permintaan dan meneruskannya ke server backend.
Dalam topik ini, atur parameter ini ke 80.
Advanced Settings
Klik Modify untuk membuka pengaturan lanjutan.
Dalam topik ini, hanya Redirection by Listener yang diubah. Gunakan nilai default untuk parameter lainnya.
Redirection by Listener
Mengaktifkan pengalihan trafik dari pendengar HTTP ke pendengar HTTPS.
Dalam topik ini, aktifkan Redirection by Listener, dan untuk Listener, pilih pendengar HTTPS yang telah Anda buat di Langkah 1: Buat pendengar HTTPS.
-
Pada halaman Confirm, klik Submit. Setelah konfigurasi berhasil, klik OK.
Setelah Redirection by Listener diaktifkan, semua permintaan ke HTTP:80 pada instans CLB dialihkan ke HTTPS:443. Permintaan tersebut kemudian diteruskan berdasarkan konfigurasi pendengar HTTPS.
Langkah 3: Konfigurasi DNS
-
Untuk domain yang tidak didaftarkan di Alibaba Cloud, Anda harus terlebih dahulu menambahkan domain ke konsol Alibaba Cloud DNS sebelum dapat mengonfigurasi rekaman DNS.
-
Jika instans CLB Anda adalah instans akses internal, Anda harus terlebih dahulu mengaitkan alamat IP elastis (EIP) dengannya, lalu membuat Rekaman A yang memetakan nama domain ke EIP agar dapat diakses publik.
-
Pada panel navigasi kiri, pilih .
-
Pada halaman Instances, pilih instans target lalu salin IP Address-nya.
-
Lakukan langkah-langkah berikut untuk menambahkan Rekaman A:
-
Masuk ke Konsol Alibaba Cloud DNS.
-
Pada halaman Public Zone, temukan nama domain target lalu klik Settings di kolom Actions.
-
Pada halaman Settings, klik Add Record.
-
Pada panel Add Record, konfigurasi parameter berikut. Anda dapat membiarkan parameter lainnya dengan nilai default atau mengubahnya sesuai kebutuhan. Lalu, klik OK.
Parameter
Deskripsi
Record Type
Pilih A dari daftar drop-down.
Hostname
Awalan nama domain Anda.
CatatanUntuk domain root, atur hostname ke @.
Record Value
Masukkan alamat IP instans CLB yang telah disalin.
-
Langkah 4: Verifikasi hasil
Dari client yang memiliki akses internet, uji apakah permintaan HTTP ke instans CLB dialihkan ke HTTPS.
-
Buka antarmuka baris perintah (CLI) pada client Anda.
-
Jalankan perintah
curl -v http://<nama domain CLB>. Kode status 302 dikembalikan, yang menunjukkan bahwa permintaan ke CLB dialihkan ke HTTPS.C:\Users\admin>curl -v http://your.domain.com * Trying 192.0.2.1:80... * Connected to your.domain.com (192.0.2.1) port 80 > GET / HTTP/1.1 > Host: your.domain.com > User-Agent: curl/8.4.0 > Accept: */* > < HTTP/1.1 302 Found < Date: Wed, 17 Jul 2024 03:13:13 GMT < Content-Type: text/html < Content-Length: 154 < Connection: keep-alive < Location: https://your.domain.com < Via: HTTP/1.1 SLB.94 < <html> <head><title>302 Found</title></head> <body bgcolor="white"> <center><h1>302 Found</h1></center> <hr><center>nginx</center> </body> </html> * Connection #0 to host your.domain.com left intact
Kode status pengalihan
Tabel berikut menjelaskan kode status pengalihan yang didukung oleh CLB.
|
Kode status |
Deskripsi |
|
302 |
Pengalihan sementara. Menunjukkan bahwa resource sementara berada di URL berbeda. Client harus tetap menggunakan URL asli untuk permintaan di masa depan. |
FAQ
Tidak dapat menemukan opsi Redirection by Listener
Redirection by Listener tidak dapat diaktifkan untuk pendengar HTTP yang sudah ada pada instans CLB. Anda harus membuat ulang pendengar HTTP tersebut untuk mengaktifkan Redirection by Listener.
Referensi
CLB mengalihkan trafik berdasarkan aturan pendengar. Sebaliknya, Application Load Balancer (ALB) mengalihkan permintaan pada lapisan aplikasi, yang memberikan fleksibilitas lebih besar dan berbagai opsi konfigurasi, seperti pengalihan berbasis path atau header. Untuk informasi lebih lanjut, lihat Gunakan ALB untuk mengalihkan permintaan HTTP ke HTTPS.