All Products
Search
Document Center

Server Load Balancer:Otentikasi Timbal Balik HTTPS

Last Updated:Jul 08, 2026

Aktifkan otentikasi timbal balik pada ALB untuk mewajibkan klien dan server saling memverifikasi identitas sebelum membangun koneksi. Fitur ini mencegah serangan man-in-the-middle dan akses tidak sah dalam skenario berkeamanan tinggi seperti transaksi keuangan dan layanan kesehatan.

Ikhtisar fitur

Mengapa menggunakan otentikasi timbal balik

Sebagian besar aplikasi web menggunakan otentikasi satu arah untuk membangun koneksi HTTPS. Dalam skema ini, klien memverifikasi identitas server guna memastikan bahwa klien terhubung ke server yang benar.

Untuk aplikasi yang memerlukan keamanan lebih tinggi, server juga harus memverifikasi identitas klien. Otentikasi timbal balik memastikan hanya klien yang sah yang dapat mengakses layanan, sehingga mengurangi risiko serangan man-in-the-middle dan akses tidak sah.

Perbandingan antara otentikasi satu arah dan otentikasi timbal balik

Item

Otentikasi satu arah

Otentikasi timbal balik

File sertifikat

Sertifikat server:

  • Sertifikat kunci publik server

  • File kunci privat server

  • Sertifikat server:

    • Sertifikat kunci publik server

    • File kunci privat server

  • Sertifikat klien:

    • Sertifikat kunci publik klien

    • File kunci privat klien

  • Sertifikat root CA

Proses handshake

Kasus penggunaan

Transaksi keuangan, layanan kesehatan, perbankan, dan pembayaran online—skenario apa pun di mana sistem harus memverifikasi identitas klien selain server.

Jika Anda tidak perlu mengotentikasi klien, Anda tidak perlu menggunakan otentikasi timbal balik.

Batasan

  • Hanya instans ALB Edisi Standard dan Edisi WAF-Enhanced yang mendukung otentikasi timbal balik. Instans ALB Edisi Dasar tidak mendukung fitur ini.

  • Hanya pendengar HTTPS yang mendukung otentikasi timbal balik. Pendengar QUIC dan HTTP tidak mendukung fitur ini.

Contoh skenario

Sebuah perusahaan menerapkan platform transaksi online yang awalnya hanya menggunakan otentikasi HTTPS satu arah. Perangkat tidak sah mencoba mengakses sistem, menimbulkan risiko kebocoran data dan manipulasi transaksi. Seiring pertumbuhan trafik, platform juga menghadapi tekanan performa yang meningkat saat puncak beban.

Untuk mengatasi masalah tersebut, perusahaan menerapkan instans ALB dan mengaktifkan otentikasi timbal balik.

  • ALB mendistribusikan permintaan klien ke server backend, memastikan performa stabil dan waktu respons cepat bahkan selama puncak konkurensi tinggi.

  • Dengan otentikasi timbal balik diaktifkan, semua klien harus menyediakan sertifikat yang valid untuk membangun koneksi, mencegah akses tidak sah serta mengurangi risiko kebocoran data dan manipulasi transaksi.

Prasyarat

  • Anda telah membeli atau mengunggah sertifikat server di Layanan Manajemen Sertifikat.

    Topik ini menggunakan sertifikat server yang dibeli dari Konsol Layanan Manajemen Sertifikat Alibaba Cloud sebagai contoh.

    Catatan

    Saat Anda membeli Sertifikat SSL, Anda harus mengaitkannya dengan nama domain. Pastikan Anda memiliki nama domain yang valid dan dapat diakses.

  • Untuk otentikasi timbal balik, Anda juga memerlukan sertifikat CA. Anda dapat membeli dan mengaktifkan sertifikat CA subordinat (memerlukan kuota sertifikat yang tersedia) atau mengunggah sertifikat root CA tanda tangan sendiri atau sertifikat CA subordinat tanda tangan sendiri.

  • Anda telah membuat VPC (VPC1), dan membuat dua instans ECS (ECS01 dan ECS02) di VPC1. Layanan aplikasi diterapkan di kedua instans tersebut.

    Contoh ini menggunakan Alibaba Cloud Linux 3 sebagai sistem operasi dan Nginx untuk mengonfigurasi layanan HTTPS.

    Perintah contoh untuk menerapkan layanan uji coba di ECS01

    1. Jalankan perintah berikut untuk menginstal Nginx dan menerapkan aplikasi uji coba.

      yum install -y nginx
      cd /usr/share/nginx/html/
      echo "Hello World ! This is ECS01." > index.html
    2. Untuk memungkinkan instans ALB berkomunikasi dengan server backend melalui HTTPS, Anda harus mengunggah file sertifikat server ke server backend. Kemudian, dalam file konfigurasi Nginx nginx.conf, konfigurasikan modul layanan HTTPS, tentukan jalur file sertifikat, lalu simpan file tersebut.

      vim /etc/nginx/nginx.conf

      Kode berikut memberikan contoh:

      http {
          ...
          # Konfigurasi yang sudah ada
          
          # Modul layanan HTTPS
          server {
            listen       443 ssl;
            server_name  _;
            root         /usr/share/nginx/html;
      
              # Ganti dengan jalur ke file sertifikat server Anda.
              ssl_certificate "/etc/pki/nginx/server.crt";
              # Ganti dengan jalur ke file kunci privat sertifikat server Anda.
              ssl_certificate_key "/etc/pki/nginx/private/server.key";
              
              ...
          }
      }
    3. Jalankan perintah berikut untuk merestart layanan Nginx.

      systemctl restart nginx.service
  • Anda telah membuat instans ALB Edisi Standard atau Edisi yang diaktifkan WAF.

  • Anda telah membuat grup server dan menambahkan ECS01 dan ECS02 sebagai server backend.

    Jika Anda ingin instans ALB berkomunikasi dengan server backend melalui HTTPS, pilih HTTPS sebagai protokol backend saat membuat grup server dan pastikan layanan HTTPS telah diterapkan di server backend.

Prosedur

Langkah 1: Konfigurasi sertifikat klien

Anda harus menyiapkan dan mengekspor sertifikat klien.

Topik ini menjelaskan dua metode untuk mendapatkan sertifikat CA. Anda dapat membeli sertifikat CA dan mengajukan sertifikat klien di Layanan Manajemen Sertifikat, atau mengunggah sertifikat CA tanda tangan sendiri ke Layanan Manajemen Sertifikat.

1. Siapkan sertifikat klien

Dari konsol

Untuk informasi lebih lanjut, lihat Ajukan sertifikat pribadi.

  1. Masuk ke Konsol Layanan Manajemen Sertifikat.

  2. Di panel navigasi kiri, pilih Certificate Management > Private Certificate Management. Di halaman Private Certificate Management, pilih wilayah tempat layanan PCA berada.

  3. Di tab Private CAs, temukan CA subordinat target, lalu klik Apply for Certificate di kolom Actions.

  4. Di panel Apply for Certificate, konfigurasikan pengaturan sertifikat seperti yang dijelaskan dalam tabel berikut, lalu klik Confirm.

    Dalam contoh ini, saat mengajukan sertifikat klien, atur Certificate Type ke Client Certificate dan masukkan Personal Name untuk mengidentifikasi pengguna klien secara unik. Anda dapat mempertahankan nilai default untuk parameter lainnya atau menyesuaikannya sesuai kebutuhan.

    Setelah Anda mengirimkan permohonan, CA pribadi akan langsung menerbitkan sertifikat tersebut. Anda kemudian dapat mengklik Certificates di kolom Actions untuk CA subordinat guna melihat sertifikat yang telah diterbitkan.

Tanda tangan sendiri
  1. Masuk ke ECS01 dan jalankan perintah berikut untuk menghasilkan sertifikat root CA tanda tangan sendiri.

    Instans ALB mendukung otentikasi timbal balik menggunakan sertifikat root CA tanda tangan sendiri atau sertifikat CA perantara tanda tangan sendiri. Contoh ini menggunakan sertifikat root CA tanda tangan sendiri.

    1. Jalankan perintah berikut untuk membuat kunci privat untuk sertifikat root CA:

      openssl genrsa -out root.key 4096
    2. Jalankan perintah berikut untuk membuat permintaan penandatanganan sertifikat (CSR) untuk sertifikat root CA:

      openssl req -new -out root.csr -key root.key

      Masukkan informasi yang diminta. Kode berikut memberikan contoh:

      Catatan

      Pastikan Common Name untuk sertifikat CA bersifat unik dan tidak sama dengan Common Name untuk sertifikat server atau sertifikat klien.

      Country Name (2 letter code) [XX]:cn
      State or Province Name (full name) []:bj
      Locality Name (eg, city) [Default City]:bj
      Organization Name (eg, company) [Default Company Ltd]:alibaba
      Organizational Unit Name (eg, section) []:test
      Common Name (eg, your name or your servers hostname) []:root
      Email Address []:a****@example.com
      A challenge password []:
      An optional company name []:
    3. Jalankan perintah berikut untuk membuat sertifikat root CA:

      openssl x509 -req -in root.csr -out root.crt -signkey root.key -CAcreateserial -days 3650

      Output berikut dikembalikan:

      Signature ok
      subject=C = cn, ST = bj, L = bj, O = alibaba, OU = test, CN = root, emailAddress = a****@example.com
      Getting Private Key
    4. Jalankan perintah ls untuk melihat sertifikat root CA yang dihasilkan root.crt dan kunci privatnya root.key.

      Anda dapat mengunduh file sertifikat root CA ini ke komputer Anda untuk digunakan nanti.

  2. Unggah sertifikat root CA tanda tangan sendiri ke Layanan Manajemen Sertifikat.

    1. Masuk ke Konsol Layanan Manajemen Sertifikat.

    2. Di panel navigasi kiri, pilih Certificate Service > Certificate Application Repository.

    3. Di halaman Certificate Application Repository, klik Create Repository. Di panel Create repository, atur Data source menjadi Uploaded CA certificates lalu klik OK.

    4. Di halaman Certificate Application Repository, klik repositori yang telah Anda buat.

    5. Di halaman Certificates, klik Uploaded Certificate. Di panel CA information, unggah file sertifikat root CA root.crt lalu klik Confirm and Enable.

2. Ekspor sertifikat klien

Ekspor dari konsol

Untuk menggunakan sertifikat klien yang dibeli dari konsol untuk otentikasi timbal balik, ekspor dengan mengikuti langkah-langkah berikut:

  1. Di tab Private CAs, temukan CA subordinat target, lalu klik Certificates di kolom Actions.

  2. Di halaman Certificates, temukan sertifikat pribadi target, lalu klik Download di kolom Actions.

  3. Di kotak dialog Download Certificate, pilih format sertifikat yang ingin diunduh, lalu klik Confirm and Download. Jika Anda memilih Include Trust Chain, sertifikat yang diunduh mencakup rantai sertifikat lengkap.

    Dalam contoh ini, pilih PFX untuk Format sertifikat. Format ini dapat dikenali oleh browser.

    File yang diunduh mencakup file sertifikat klien dengan ekstensi .pfx dan file teks dengan ekstensi .txt yang berisi kata sandi enkripsi untuk kunci privat klien.

Ekspor tanda tangan sendiri

Untuk menggunakan sertifikat klien yang dihasilkan dari sertifikat CA tanda tangan sendiri untuk otentikasi timbal balik, ikuti langkah-langkah berikut untuk menghasilkannya:

Masuk ke ECS01 dan lakukan langkah-langkah berikut untuk menghasilkan sertifikat klien:

  1. Jalankan perintah berikut untuk menghasilkan kunci privat untuk sertifikat klien:

    openssl genrsa -out client.key 4096
  2. Jalankan perintah berikut untuk menghasilkan CSR untuk sertifikat klien:

    openssl req -new -out client.csr -key client.key

    Masukkan informasi yang diminta. Kode berikut memberikan contoh:

    Catatan

    Pastikan Common Name untuk sertifikat klien bersifat unik dan tidak sama dengan Common Name untuk sertifikat server, sertifikat root, atau sertifikat klien lainnya.

    Country Name (2 letter code) [XX]:cn
    State or Province Name (full name) []:bj
    Locality Name (eg, city) [Default City]:bj
    Organization Name (eg, company) [Default Company Ltd]:alibaba
    Organizational Unit Name (eg, section) []:test
    Common Name (eg, your name or your servers hostname) []:client-alb-user
    Email Address []:username@example.com
    A challenge password []:
    An optional company name []:
  3. Jalankan perintah berikut untuk menghasilkan sertifikat klien.

    openssl x509 -req -in client.csr -out client.crt -CA root.crt -CAkey root.key -CAcreateserial -days 3650

    Output berikut dikembalikan:

    Signature ok
    subject=C = cn, ST = bj, L = bj, O = alibaba, OU = test, CN = client-alb-user, emailAddress = username@example.com
    Getting CA Private Key
  4. Jalankan perintah berikut untuk mengonversi sertifikat klien yang dihasilkan client.crt menjadi file PKCS12, yang dapat dikenali oleh browser. Masukkan kata sandi enkripsi kunci privat klien saat diminta.

    openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.p12
  5. Jalankan perintah ls untuk melihat file sertifikat klien client.p12 yang dihasilkan.

    Anda dapat mengunduh file sertifikat klien ke komputer Anda untuk digunakan nanti di klien.

Langkah 2: Konfigurasi pendengar otentikasi timbal balik

  1. Di bilah navigasi atas Konsol ALB, pilih wilayah tempat instans ALB diterapkan. Di halaman Instances, temukan instans ALB yang ingin Anda kelola dan klik ID-nya.

  2. Di halaman detail instans, klik tab Listener lalu klik Create Listener. Konfigurasikan parameter dan klik Next.

    Dalam contoh ini, atur Select Listener Protocol menjadi HTTPS dan Listener Port menjadi 443. Anda dapat mempertahankan nilai default untuk parameter pendengar HTTPS lainnya atau mengubahnya sesuai kebutuhan.

  3. Di langkah SSL Certificate, pilih sertifikat server yang telah Anda beli. Kemudian, aktifkan Enable Mutual Authentication dan pilih sumber sertifikat CA beserta sertifikat yang sesuai. Terakhir, pilih kebijakan keamanan TLS lalu klik Next.

  4. Di langkah Server Group, pilih Server Type dan Server Type backend. Tinjau informasi tentang server backend ECS01 dan ECS02, lalu klik Next.

  5. Di langkah Confirm, tinjau konfigurasi lalu klik Submit.

Langkah 3: Konfigurasi resolusi DNS

Untuk lingkungan produksi, kami merekomendasikan agar Anda membuat Rekaman CNAME untuk memetakan nama domain kustom Anda ke nama DNS instans ALB.

  1. Di panel navigasi kiri Konsol ALB, pilih ALB > Instances. Di halaman Instances, salin nama DNS instans ALB yang telah dibuat.

  2. Lakukan langkah-langkah berikut untuk menambahkan Rekaman CNAME.

    1. Di halaman Resolusi DNS, temukan nama domain kustom target lalu klik DNS Settings di kolom Operations.

      Catatan

      Jika nama domain Anda tidak terdaftar di Alibaba Cloud, Anda harus terlebih dahulu menambahkan nama domain Anda ke konsol DNS Alibaba Cloud sebelum dapat mengonfigurasi pengaturan DNS.

    2. Di halaman pengaturan DNS, klik Add DNS record, konfigurasikan Rekaman CNAME, lalu klik OK.

      Dalam contoh ini, atur Record type menjadi CNAME dan Record value menjadi nama DNS instans ALB. Anda dapat mempertahankan nilai default untuk parameter Rekaman DNS lainnya atau mengubahnya sesuai kebutuhan.

Langkah 4: Uji otentikasi timbal balik

Contoh ini menggunakan klien Windows dan browser Chrome.

  1. Instal sertifikat klien yang diekspor di klien.

    Klik ganda file sertifikat klien yang diunduh dan ikuti petunjuk di wizard impor sertifikat untuk menginstal sertifikat klien.

  2. Di browser, masukkan https://<nama domain kustom Anda>. Di kotak dialog yang muncul, pilih sertifikat yang akan digunakan untuk otentikasi klien.

  3. Refresh browser. Anda dapat mengamati bahwa permintaan klien didistribusikan antara server ECS01 dan ECS02.

    Jika halaman menampilkan Hello World ! This is ECS01., permintaan diteruskan ke ECS01.

    Jika Anda me-refresh halaman dan menampilkan Hello World ! This is ECS02., permintaan diteruskan ke ECS02.

Referensi

Operasi konsol

Referensi API

Anda dapat memanggil Operasi API berikut dan mengatur parameter CaEnabled menjadi true untuk mengaktifkan otentikasi timbal balik.