Panduan Deploy SSL Certificate pada Haproxy

You are here:

Panduan ini ditujukan untuk penginstallan SSL certificate pada Haproxy, Pastikan saja sebelum Anda mengikuti panduan berikut Anda memiliki hal tersebut

  1. commercial.pem = Merupakan file gabungan commercial.key, commercial.crt, dan ca_bundle.crt

Note: Untuk membuat file tersebut kunjungi link berikut: https://support.excellent.co.id/knowledge-base/panduan-membuat-file-certificate-dengan-ekstensi-pem-pfx-p12dan-cer

Panduan Deploy SSL Certificate pada Haproxy (Load Balancer)

• Buat directory untuk menyimpan file commercial.pem

mkdir /etc/haproxy/ssl

• Masukan file commercial.pem pada directory tersebut

• Edit file /etc/haproxy/haproxy.cfg

• Pada bagian frontend tambahkan baris berikut

frontend server-frontend 
       bind : 80       
       bind : 443 ssl crt /etc/haproxy/ssl/commercial.pem       
       https-request redirect scheme https code 301 unless { ssl...fc }

Note: Jika ingin menggunakan port 8443, ubah port 443 menjadi 8443.

• Lalu cari baris backend sesuaikan seperti berikut

backend webservers 
        server web1 ip:443 ssl verify required ca-file /etc/haproxy/ssl/commercial.pem sni req.hdr(Host) 
        server web2 ip:443 ssl verify required ca-file /etc/haporxy/ssl/commercial.pem sni req.hdr(Host)

Note: Jika ada beberapa server sesuaikan baris tersebut sesuai jumlah server.

• Selanjutnya cari baris global setting dan tambahkan baris berikut

global      
    ssl-default-bind-options ssl-min-ver TLSv1.2     
    ssl-default-bind-chipers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384 
    ssl-default-bind-chipersuites TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256

• Setelah itu reload service haproxy atau restart menggunakan perintah berikut:

systemctl reload haproxy

Panduan Deploy SSL Certificate pada Haproxy (Satu Server)

• Buat directory untuk menyimpan file commercial.pem

mkdir /etc/haproxy/ssl

• Masukan file commercial.pem pada directory tersebut

• Edit file /etc/haproxy/haproxy.cfg

• Cari pada bagian konifgurasi listen tambahkan baris berikut:

bind :8443 ssl crt /etc/haproxy/ssl/commercial.pem
mode http
timeout connect 30s
timeout client 3m
timeout server 3m
option tcp-check
tcp-check connect
http-request redirect scheme https unless { ssl_fc }
http-request set-header X-Forwarded-For %[src]
http-request set-header X-Forwarded-Proto https if { ssl_fc }
http-request set-var(txn.request_host_header) req.hdr(Host)
server servername ip:8080

Note: Ganti path /etc/haproxy/ssl/commercial.pem menjadi path tempat ssl disimpan.

• Save lalu reload service haproxy

systemctl reload haproxy