全部产品
Search
文档中心

Server Load Balancer:Mengonfigurasi otentikasi timbal balik pada pendengar HTTPS

更新时间:Nov 12, 2025

Otentikasi satu arah, di mana hanya klien yang memvalidasi identitas server, tidak memenuhi persyaratan keamanan dalam skenario transaksi keuangan, medis, perbankan, dan pembayaran online. Dalam skenario tersebut, server mempercayai semua klien yang terhubung dengannya, sehingga menimbulkan risiko serangan man-in-the-middle dan akses tidak sah. Application Load Balancer (ALB) mendukung otentikasi timbal balik pada pendengar HTTPS. Dalam otentikasi timbal balik, baik klien maupun server harus saling memvalidasi identitas sebelum menjalin koneksi aman untuk transmisi data.

Ikhtisar otentikasi timbal balik

Mengapa otentikasi timbal balik diperlukan

Sebagian besar aplikasi web Internet menerima berbagai klien untuk mengaksesnya. Untuk aplikasi tersebut, cukup menggunakan otentikasi HTTPS satu arah: klien memvalidasi identitas server sebelum berinteraksi dengan aplikasi guna memastikan bahwa klien terhubung ke server yang valid.

Namun, dalam skenario yang memerlukan tingkat keamanan lebih tinggi, identitas server saja tidak cukup—otentikasi klien juga diperlukan. Otentikasi timbal balik digunakan dalam kasus ini untuk memastikan bahwa hanya klien sah yang dapat mengakses server, sehingga mengurangi risiko keamanan seperti serangan man-in-the-middle dan akses tidak sah.

Perbandingan antara otentikasi satu arah dan otentikasi timbal balik

Item Perbandingan

Otentikasi satu arah

Otentikasi timbal balik

File sertifikat yang terlibat

Sertifikat server:

  • Sertifikat kunci publik

  • Kunci privat

  • Sertifikat server:

    • Sertifikat kunci publik

    • Kunci privat

  • Sertifikat klien:

    • Sertifikat kunci publik

    • Kunci privat

  • Sertifikat CA root

Proses handshake

Skema penggunaan

Untuk bisnis dengan persyaratan keamanan tinggi—seperti transaksi keuangan, layanan kesehatan, perbankan, dan pembayaran online—tidak hanya sisi klien yang perlu memverifikasi identitas server, tetapi server juga harus mengotentikasi klien.

Jika otentikasi klien tidak diperlukan, maka otentikasi timbal balik tidak diperlukan.

Batasan

  • Hanya instans ALB Edisi Standar dan instans ALB Edisi yang ditingkatkan dengan WAF yang mendukung otentikasi timbal balik. Instans ALB Edisi Dasar tidak mendukung fitur ini.

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

Skema contoh

Sebuah perusahaan telah menerapkan platform transaksi online yang berorientasi pelanggan. Awalnya, mereka hanya menggunakan otentikasi HTTPS satu arah untuk transmisi data pada platform ini, tetapi menemukan bahwa beberapa perangkat tidak sah mencoba mengakses sistem, sehingga menimbulkan risiko kebocoran data dan manipulasi transaksi. Selain itu, seiring pertumbuhan bisnis, platform tersebut menghadapi tantangan kinerja selama lonjakan lalu lintas.

Untuk mengatasi masalah ini, perusahaan memutuskan untuk menerapkan ALB Alibaba Cloud dan mengaktifkan otentikasi timbal balik untuk layanan ALB.

  • Melalui kemampuan load balancing ALB, permintaan klien didistribusikan secara efisien ke server backend, memastikan kinerja stabil dan waktu tanggapan cepat bahkan dalam skenario konkurensi tinggi.

  • Dengan mengaktifkan otentikasi timbal balik pada ALB, semua klien yang mengakses platform harus menyediakan sertifikat klien yang valid untuk menjalin koneksi dengan platform, sehingga secara efektif memblokir perangkat tidak sah dari mengakses sistem dan secara signifikan mengurangi risiko kebocoran data serta manipulasi transaksi.

Prasyarat

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

    Dalam contoh ini, sertifikat dibeli.

    Catatan

    Untuk membeli Sertifikat SSL, Anda harus memiliki nama domain kustom yang valid.

  • Sertifikat CA perantara telah dibeli di konsol Layanan Manajemen Sertifikat, dan tersedia setidaknya satu sertifikat CA perantara pribadi. Atau, sertifikat CA root tanda tangan sendiri atau sertifikat CA perantara tanda tangan sendiri telah diunggah ke Layanan Manajemen Sertifikat.

  • Anda telah membuat virtual private cloud (VPC) (diberi nama VPC1 dalam panduan ini), dan membuat dua Instance Elastic Compute Service (ECS) di VPC1 (diberi nama ECS01 dan ECS02 masing-masing dalam panduan ini), dengan aplikasi yang diterapkan pada kedua instance ECS tersebut.

    Dalam panduan ini, sistem operasi Alibaba Cloud Linux 3 digunakan pada instance ECS dan NGINX digunakan untuk mengonfigurasi layanan HTTPS.

    Klik untuk melihat contoh perintah guna menerapkan layanan pengujian pada ECS01

    1. Gunakan perintah berikut untuk menginstal NGINX dan menerapkan aplikasi pengujian:

      yum install -y nginx
      cd /usr/share/nginx/html/
      echo "Hello World ! This is ECS01." > index.html
    2. Jika Anda ingin ALB berkomunikasi dengan server backend menggunakan protokol HTTPS, pastikan Anda telah mengunggah file sertifikat server ke ECS01 dan mengonfigurasi modul layanan HTTPS dalam file konfigurasi NGINX nginx.conf, menentukan jalur file sertifikat, lalu simpan dan keluar.

      vim /etc/nginx/nginx.conf

      Contoh perintah konfigurasi:

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

      systemctl restart nginx.service
  • Anda telah membuat instans ALB edisi Standar atau edisi yang diaktifkan WAF.

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

    Jika Anda ingin ALB berkomunikasi dengan server backend menggunakan protokol HTTPS, pilih HTTPS sebagai protokol backend saat membuat grup server, dan pastikan server backend telah menerapkan layanan HTTPS.

Prosedur

Langkah 1: Menyebarkan sertifikat klien

Di sisi klien (pengguna), sertifikat klien harus disiapkan dan diekspor.

Panduan ini memperkenalkan dua cara untuk mendapatkan sertifikat CA. Anda dapat membeli sertifikat CA melalui Layanan Manajemen Sertifikat dan mengajukan sertifikat klien, atau Anda dapat mengunggah sertifikat CA tanda tangan sendiri ke Layanan Manajemen Sertifikat.

1. Menyiapkan sertifikat klien

Opsi 1: Mengajukan sertifikat klien

Lihat Mengajukan sertifikat pribadi untuk mengajukan sertifikat klien.

  1. Masuk ke Konsol Layanan Sertifikat.

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

  3. Pada tab Private CAs, temukan CA perantara pribadi yang ingin Anda gunakan dan klik Apply for Certificate di kolom Actions.

    申请客户端证书01

  4. Pada panel Apply for Certificate, konfigurasikan parameter dan klik Confirm. Tabel berikut menjelaskan parameter tersebut.

    Dalam panduan ini, saat mengajukan sertifikat klien, atur Certificate Type menjadi Client Certificate, dan tentukan Personal Name (digunakan sebagai pengenal unik untuk pengguna klien). Pertahankan pengaturan default untuk parameter lain saat mengajukan sertifikat klien atau ubah sesuai kebutuhan.

    申请客户端证书02

    Setelah Anda mengirimkan permohonan sertifikat, sertifikat pribadi langsung diterbitkan. Kemudian, Anda dapat mengklik Certificates di kolom Actions untuk melihat informasi tentang sertifikat pribadi tersebut.

Opsi 2: Mengunggah sertifikat CA tanda tangan sendiri
  1. Masuk ke ECS01 secara jarak jauh dan gunakan perintah berikut untuk menghasilkan sertifikat CA root tanda tangan sendiri.

    ALB mendukung sertifikat CA root tanda tangan sendiri atau sertifikat CA perantara tanda tangan sendiri untuk otentikasi timbal balik. Dalam panduan ini, digunakan sertifikat CA root tanda tangan sendiri.

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

      openssl genrsa -out root.key 4096
    2. Gunakan perintah berikut untuk membuat file permintaan sertifikat CA root:

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

      Atur parameter lainnya. Contoh:

      Catatan

      Pastikan nama umum (common name) dalam sertifikat CA berbeda dari yang ada dalam sertifikat klien dan sertifikat server.

      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. Gunakan perintah berikut untuk membuat sertifikat CA root:

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

      Contoh keluaran:

      创建根CA证书

    4. Gunakan perintah ls untuk memeriksa sertifikat CA root yang dihasilkan root.crt dan kunci privat sertifikat CA root root.key.

      Unduh file sertifikat CA root ini ke komputer lokal Anda agar nanti dapat diunggah ke Layanan Manajemen Sertifikat.

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

    1. Masuk ke Layanan Manajemen Sertifikat.

    2. Di panel navigasi sebelah kiri, pilih Certificate and Domain Name Application Service > Certificate Application Repository.

    3. Pada halaman Certificate Application Repository, klik Create Repository. Pada panel Create Repository, atur Data Source menjadi Uploaded CA Certificates, lalu klik OK.

      创建证书仓库

    4. Pada halaman Certificate Application Repository, klik repositori sertifikat yang telah dibuat.

    5. Pada halaman Official Certificate, klik Uploaded Certificates. Pada panel CA Information, unggah file sertifikat CA root root.crt, lalu klik Confirm and Enable.

      上传根CA证书

2. Mengekspor sertifikat klien

Opsi 1: Mengekspor sertifikat klien yang dibeli melalui Layanan Manajemen Sertifikat

Jika Anda telah membeli sertifikat klien melalui Layanan Manajemen Sertifikat dan ingin menggunakan sertifikat klien tersebut untuk otentikasi timbal balik, lakukan langkah-langkah berikut untuk mengekspor sertifikat klien:

  1. Di panel navigasi sebelah kiri, pilih PCA Certificate Management. Pada tab Private CAs, temukan CA perantara pribadi tempat sertifikat pribadi yang diperlukan diterbitkan dan klik Certificates di kolom Actions.

    导出证书-证书列表

  2. Pada halaman Certificates, temukan sertifikat pribadi yang ingin Anda unduh dan klik Download di kolom Actions.

  3. Pada kotak dialog Download Certificate, atur parameter Certificate Format dan klik Confirm and Download. Jika Anda mengaktifkan Include Trust Chain, sertifikat yang diunduh mencakup rantai sertifikat lengkap.

    Dalam panduan ini, atur Format Sertifikat menjadi PFX, yang dapat dikenali oleh browser.

    导出客户端证书

    Seperti yang ditunjukkan pada gambar berikut, file sertifikat yang diunduh mencakup file sertifikat klien dengan ekstensi .pfx dan kata sandi enkripsi kunci privat klien dalam file .txt.

    安装客户端证书

Opsi 2: Mengekspor sertifikat klien yang dihasilkan dari sertifikat tanda tangan sendiri

Jika Anda telah mengunggah sertifikat CA tanda tangan sendiri ke Layanan Manajemen Sertifikat dan perlu menggunakan sertifikat klien yang dihasilkan dari sertifikat CA tanda tangan sendiri tersebut untuk otentikasi timbal balik, lakukan langkah-langkah berikut untuk menghasilkan sertifikat klien:

Masuk ke ECS01 secara jarak jauh dan lakukan langkah-langkah berikut untuk menghasilkan sertifikat klien.

  1. Gunakan perintah berikut untuk menghasilkan kunci sertifikat klien:

    openssl genrsa -out client.key 4096
  2. Gunakan perintah berikut untuk menghasilkan file permintaan sertifikat klien:

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

    Atur parameter lainnya. Contoh:

    Catatan

    Pastikan nama umum (common name) dalam sertifikat CA berbeda dari yang ada dalam sertifikat server, sertifikat root, dan 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. Gunakan perintah berikut untuk menghasilkan sertifikat klien.

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

    Contoh keluaran:

    生成客户端证书

  4. Gunakan perintah berikut untuk mengonversi sertifikat klien yang dihasilkan client.crt menjadi file PKCS12 yang dapat dikenali oleh browser. Ikuti petunjuk untuk memasukkan kata sandi enkripsi kunci privat klien yang Anda tetapkan.

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

    Unduh file sertifikat klien ke komputer lokal Anda agar nanti dapat dikirimkan ke klien.

Langkah 2: Mengonfigurasi pendengar HTTPS dengan otentikasi timbal balik diaktifkan

  1. Di bilah navigasi atas Konsol ALB, pilih wilayah tempat instans ALB Anda berada. Pada halaman Instances, temukan instans ALB Anda dan klik ID-nya.

  2. Pada halaman detail instans, klik tab Listeners, klik Create Listener, lengkapi konfigurasi berikut, lalu klik Next.

    Dalam panduan ini, atur Listener Protocol menjadi HTTPS, Listener Port menjadi 443. Pertahankan nilai default untuk parameter pendengar HTTPS lainnya atau ubah sesuai kebutuhan.

    HTTPS监听

  3. Pada langkah Configure SSL Certificate, pilih sertifikat server yang telah dibeli. Aktifkan Enable Mutual Authentication, pilih sumber sertifikat CA dan sertifikat CA. Pilih kebijakan keamanan TLS dan klik Next.

    Gambar berikut menunjukkan contoh pemilihan sertifikat CA yang diterbitkan Alibaba Cloud.

    HTTPS监听-双向-阿里签发

  4. Pada langkah Select Server Group, pilih Server Type dan grup server yang telah dibuat dari daftar drop-down di sebelah kanan. Periksa informasi server backend ECS01 dan ECS02, lalu klik Next.

  5. Pada langkah Configuration Review, konfirmasi informasi konfigurasi, lalu klik Submit.

Langkah 3: Menambahkan rekaman DNS

Untuk bisnis Anda, kami merekomendasikan agar Anda menambahkan rekaman DNS untuk memetakan nama domain kustom Anda ke nama domain instans ALB Anda.

  1. Di panel navigasi sebelah kiri Konsol ALB, pilih ALB > Instances. Pada halaman Instances, salin nama DNS instans ALB Anda.

  2. Tambahkan rekaman CNAME.

    1. Pada halaman Resolusi DNS Otoritatif, temukan nama domain kustom Anda, lalu di kolom Actions, klik DNS Settings.

      Catatan

      Untuk nama domain yang tidak didaftarkan di Alibaba Cloud, Anda perlu terlebih dahulu menambahkan nama domain ke DNS Alibaba Cloud sebelum dapat mengonfigurasi resolusi DNS.

    2. Pada halaman DNS Settings, klik Add DNS Record, konfigurasikan rekaman CNAME, lalu klik OK.

      Dalam panduan ini, atur Record Type menjadi CNAME dan Record Value menjadi nama DNS instans ALB Anda. Pertahankan nilai default untuk parameter rekaman DNS lainnya atau ubah sesuai kebutuhan.

      CNAME

Langkah 4: Menguji efek otentikasi timbal balik

Dalam panduan ini, klien Windows dan browser Chrome di dalamnya digunakan untuk pengujian.

  1. Instal sertifikat klien yang diekspor pada klien.

    Klik ganda file sertifikat klien yang diunduh dan ikuti petunjuk wizard impor sertifikat sistem untuk menyelesaikan instalasi.

  2. Masukkan https://<Nama domain kustom Anda> di bidang alamat browser Chrome. Pada kotak dialog yang muncul, pilih sertifikat yang akan digunakan untuk otentikasi klien.

    访问测试-选择证书

  3. Segarkan halaman beberapa kali. Jika tanggapan dari ECS01 dan ECS02 dikembalikan secara bergantian, berarti otentikasi timbal balik telah diterapkan.

    访问测试-ECS01

    访问测试-ECS02

Referensi

Konsol

API

Panggil operasi API berikut dan atur parameter CaEnabled menjadi true untuk mengaktifkan otentikasi timbal balik: