bg-tutorials

Cara Menginstal sertifikat SSL pada Pound

Panduan ini menunjukkan kepada Anda cara menginstal sertifikat SSL/TLS pada Pound, reverse proxy HTTP/HTTPS yang ringan. Panduan ini mencakup bagian yang sering membingungkan sebagian besar operator: membangun satu file PEM gabungan yang diharapkan oleh Pound, dalam urutan yang benar, kemudian menulis blok ListenHTTPS yang berfungsi, yang menonaktifkan protokol usang, mengarahkan Pound ke backend, dan lolos pemeriksaan konfigurasi sebelum Anda me-restart layanan.

Catatan singkat tentang versi Pound mana yang menjadi target panduan ini. Proyek Apsis Pound yang asli dihentikan pada September 2022. Pengembangan aktif berpindah ke fork yang dikelola oleh Sergey Poznyakoff di github.com/graygnuorg/pound, yang kini menjadi upstream resmi dan versi yang dikemas oleh distribusi Linux saat ini. Perintah-perintah di bawah ini sesuai dengan seri 4.x modern.

Membuat CSR untuk Pound

Jika Anda sudah membuat CSR dan memiliki file sertifikat yang telah diterbitkan di tangan, langsung lompat ke Menginstal sertifikat SSL pada Pound.

Sebelum Certificate Authority dapat menerbitkan sertifikat Anda, Anda perlu mengajukan CSR (Certificate Signing Request): sebuah blok teks kecil yang berisi detail domain Anda dan kunci publik, dipasangkan dengan kunci privat yang tetap berada di server. Anda memiliki dua pilihan:

  • Buat CSR secara otomatis dengan CSR Generator kami. Alat ini menghasilkan baik CSR maupun kunci privat yang sesuai, yang kemudian Anda pindahkan ke server.
  • Buat CSR langsung di server menggunakan OpenSSL dengan mengikuti tutorial kami tentang cara membuat CSR pada Pound. Kunci privat tetap berada di server.

Saat mengajukan sertifikat, tempel seluruh blok CSR, termasuk baris —–BEGIN CERTIFICATE REQUEST—– dan —–END CERTIFICATE REQUEST—–. Jika Anda ingin memastikan isi CSR sebelum mengirimkannya, tempel ke CSR decoder kami. Simpan file kunci privat yang sesuai (biasanya yourdomain.key) di tempat yang aman dan hanya dapat dibaca oleh root; Anda akan membutuhkannya saat instalasi.

Menginstal sertifikat SSL pada Pound

Setelah CA menerbitkan sertifikat, Anda biasanya akan menerima:

  • Sertifikat utama (server) Anda, biasanya berupa file .crt atau .pem yang dinamai sesuai domain Anda.
  • Satu atau lebih sertifikat intermediate, baik sebagai file terpisah maupun digabung dalam satu file .ca-bundle.
  • Kunci privat (file .key) yang dihasilkan bersama CSR Anda.

Pound mengharapkan satu file PEM yang berisi sertifikat, rantai intermediate, dan kunci privat yang tidak dienkripsi. Manual graygnuorg secara eksplisit menjelaskan urutannya: sertifikat, kemudian sertifikat intermediate (jika ada), lalu kunci privat, dalam urutan tersebut. Melewatkan rantai sertifikat adalah kesalahan instalasi yang paling umum: sertifikat terlihat baik-baik saja di browser desktop tetapi gagal di Android, di iOS, dan di klien command-line.

Langkah 1: Membangun file PEM gabungan

Panduan ini mengasumsikan file sertifikat berada di /etc/pound/. Sesuaikan path dengan tata letak Anda sendiri. Gabungkan ketiga file tersebut menjadi satu file PEM. Pola pipe-ke-tee di bawah ini menjalankan redirect dengan hak akses root, yang diperlukan karena /etc/pound/ biasanya hanya dapat ditulis oleh root (perintah biasa sudo cat … > /etc/pound/… akan gagal, karena shell membuka file output sebagai pengguna biasa Anda sebelum sudo berjalan):

cat your_domain.crt intermediate.crt your_domain.key | sudo tee /etc/pound/your_domain.pem > /dev/null

Jika CA mengirimkan intermediate sebagai satu file .ca-bundle, gunakan itu sebagai gantinya:

cat your_domain.crt your_domain.ca-bundle your_domain.key | sudo tee /etc/pound/your_domain.pem > /dev/null

Ganti nama file dengan nama file Anda sendiri. Kunci privat di dalam file gabungan harus tidak dienkripsi, karena Pound dimulai secara non-interaktif dan tidak dapat meminta passphrase. Kunci akses file yang dihasilkan agar hanya root yang dapat membacanya:

sudo chown root:root /etc/pound/your_domain.pem
sudo chmod 600 /etc/pound/your_domain.pem

Langkah 2: Edit pound.cfg

Buka file konfigurasi Pound (biasanya /etc/pound/pound.cfg pada Debian dan Ubuntu, atau /etc/pound.cfg pada beberapa distribusi lain) dan tambahkan blok ListenHTTPS yang mengarah ke file PEM gabungan. Blok modern minimal terlihat seperti ini:

ListenHTTPS
    Address 0.0.0.0
    Port 443
    Cert "/etc/pound/your_domain.pem"

    # Modern TLS only: disables SSLv2, SSLv3, TLSv1.0 and TLSv1.1,
    # leaving TLSv1.2 and TLSv1.3 enabled.
    Disable TLSv1_1
    Ciphers "ECDHE+AESGCM:ECDHE+CHACHA20:!aNULL:!MD5:!DSS"

    Service
        Backend
            Address 127.0.0.1
            Port 8080
        End
    End
End

Beberapa catatan mengenai perintah-perintah di atas:

  • Cert menyediakan file PEM gabungan yang Anda buat di Langkah 1. Manual menjelaskan dengan jelas bahwa Cert harus mendahului semua perintah khusus SSL lainnya di dalam listener, jadi letakkan di bagian atas blok.
  • Disable menonaktifkan protokol yang disebutkan dan setiap protokol yang lebih lama darinya. Disable TLSv1_1 karena itu menonaktifkan SSLv2, SSLv3, TLSv1.0, dan TLSv1.1, sehingga TLSv1.2 dan TLSv1.3 tetap aktif, yang sesuai dengan panduan industri saat ini.
  • Ciphers mengatur daftar cipher OpenSSL (digunakan untuk TLS 1.2; TLS 1.3 menegosiasikan cipher suite-nya sendiri). Daftar di atas membatasi proxy pada rangkaian ECDHE modern dengan AEAD; jika Anda perlu mendukung klien yang lebih lama, ganti dengan profil “intermediate” Mozilla dari ssl-config.mozilla.org.
  • Service / Backend adalah tempat Pound mem-proxy-kan lalu lintas yang telah didekripsi. Contoh ini meneruskan ke satu backend pada antarmuka loopback (port 8080); ganti alamat dan port dengan yang digunakan aplikasi Anda, dan tambahkan lebih banyak blok Backend jika Anda ingin Pound melakukan load balancing.

Jika Anda juga ingin Pound menerima HTTP biasa dan meneruskannya (biasanya hanya untuk mengarahkan ke HTTPS, lihat Langkah 4), tambahkan blok ListenHTTP terpisah dalam file yang sama.

Langkah 3: Periksa konfigurasi dan restart Pound

Sebelum me-reload layanan, validasi file konfigurasi agar kesalahan ketik tidak membuat proxy tidak aktif. Pound memiliki mode pemeriksaan bawaan:

sudo pound -c -f /etc/pound/pound.cfg

Perintah ini keluar dengan status 0 dan tidak menampilkan apa pun jika berhasil, atau status 1 dengan pesan kesalahan file-dan-baris jika gagal. Tambahkan -v jika Anda ingin konfirmasi eksplisit “configuration OK”. Setelah pemeriksaan berhasil, restart Pound agar mengambil listener baru:

sudo systemctl restart pound

Pada sistem tanpa systemd, gunakan skrip init lama sebagai gantinya:

sudo /etc/init.d/pound restart

Konfirmasikan bahwa layanan berjalan dan mendengarkan pada port 443:

sudo systemctl status pound
sudo ss -tlnp | grep ':443'

Langkah 4 (disarankan): Mengarahkan HTTP ke HTTPS

Untuk memastikan pengunjung yang mengetik domain tanpa awalan mendarat di URL yang aman, tambahkan listener HTTP biasa yang merespons setiap permintaan dengan pengalihan permanen ke versi HTTPS dari path yang sama:

ListenHTTP
    Address 0.0.0.0
    Port 80
    Service
        Redirect 301 "https://example.com$1"
    End
End

Ganti example.com dengan domain Anda sendiri. Referensi balik $1 mempertahankan path permintaan asli. Jalankan kembali sudo pound -c -f /etc/pound/pound.cfg, lalu restart layanan.

Menguji instalasi SSL

Buka situs Anda melalui https:// di browser dan periksa apakah gembok tertutup dan sertifikat sesuai dengan domain Anda. Kemudian jalankan pemindaian yang lebih mendalam dengan SSL Checker kami untuk mendapatkan laporan instan tentang sertifikat, rantai sertifikat, serta protokol dan cipher yang ditawarkan oleh Pound. Hasil yang bersih di sana berarti klien di semua platform utama, termasuk perangkat seluler dan klien API, akan mempercayai sertifikat tersebut.

Pertanyaan yang Sering Diajukan

Pound versi mana yang harus saya instal?

Proyek Apsis yang asli ditinggalkan pada 2022. Fork yang secara aktif dikelola adalah graygnuorg/pound oleh Sergey Poznyakoff, saat ini pada seri 4.x, dan itulah yang dikemas oleh distribusi Linux utama sebagai pound. Jika Anda menjalankan sesuatu dari seri 2.x lama, rencanakan untuk berpindah ke rilis terkini: perintah-perintah konfigurasi dalam panduan ini mengasumsikan fork modern.

Bagaimana urutan sertifikat, rantai, dan kunci dalam file PEM?

Berdasarkan manual Pound: sertifikat server terlebih dahulu, kemudian sertifikat intermediate (jika ada), lalu kunci privat, semuanya dalam format PEM, dalam satu file tersebut. Kunci privat tidak boleh dilindungi dengan passphrase, karena Pound dimulai sebagai daemon dan tidak memiliki cara untuk memintanya.

Bagaimana cara menonaktifkan versi TLS lama di Pound?

Gunakan perintah Disable di dalam blok ListenHTTPS. Disable pada Pound menonaktifkan protokol yang disebutkan dan setiap protokol yang lebih lama darinya, sehingga Disable TLSv1_1 menonaktifkan SSLv2, SSLv3, TLSv1.0, dan TLSv1.1, hanya menyisakan TLSv1.2 dan TLSv1.3. Itu adalah pengaturan yang direkomendasikan untuk penerapan baru.

Bisakah saya meng-hosting lebih dari satu situs HTTPS pada instance Pound yang sama?

Ya. Pound mendukung SNI, jadi Anda dapat mendeklarasikan beberapa pernyataan Cert di dalam listener ListenHTTPS yang sama (atau mengarahkan Cert ke sebuah direktori file PEM). Pound akan memeriksa sertifikat secara berurutan dan menyajikan yang pertama yang Common Name atau SAN-nya cocok dengan nama host yang diminta, jadi cantumkan sertifikat yang lebih spesifik (nama host) sebelum wildcard.

Bagaimana cara menguji konfigurasi Pound tanpa me-restart?

Jalankan sudo pound -c -f /etc/pound/pound.cfg. Flag -c memeriksa file konfigurasi untuk kesalahan sintaks dan keluar tanpa memulai proxy; status keluar 0 berarti OK, status 1 berarti ada kesalahan (pesan tersebut memberi tahu Anda file dan baris mana). Tambahkan -v untuk pesan keberhasilan yang eksplisit.

Seberapa sering saya perlu memperbarui sertifikat?

Mulai 15 Maret 2026, sertifikat SSL/TLS yang dipercaya publik dibatasi hingga maksimum 200 hari, dan CA/Browser Forum telah menjadwalkan pengurangan lebih lanjut (menjadi 100 hari pada 2027 dan 47 hari pada 2029). Rencanakan untuk mengulangi instalasi di atas jauh sebelum setiap masa berlakunya habis, atau otomatiskan pembaruan dengan ACME.

Hemat 10% untuk Sertifikat SSL saat memesan hari ini!

Penerbitan cepat, enkripsi kuat, kepercayaan peramban 99,99%, dukungan khusus, dan jaminan uang kembali 25 hari. Kode kupon: SAVE10

Ditulis oleh

Penulis konten berpengalaman yang berspesialisasi dalam Sertifikat SSL. Mengubah topik keamanan siber yang rumit menjadi konten yang jelas dan menarik. Berkontribusi untuk meningkatkan keamanan digital melalui narasi yang berdampak.