Cara Mengkonfigurasi Sijil SSL CA di HAPROXY

Cara Mengkonfigurasi Sijil SSL CA di HAPROXY

The Haproxy adalah proksi terbalik yang luas, boleh dipercayai, tinggi, yang menawarkan keupayaan mengimbangi dan mengimbangi beban tinggi untuk aplikasi TCP dan HTTP. Secara lalai, ia disusun dengan OpenSSL, dengan itu menyokong SSL Penamatan, Membolehkan Stack Laman Web/Aplikasi Anda untuk menyulitkan dan menyahsulit lalu lintas antara "pelayan entri web" atau aplikasi gerbang akses aplikasi dan aplikasi klien anda.

Panduan ini menunjukkan cara mengkonfigurasi a CA SSL sijil dalam Haporxy. Panduan ini mengandaikan bahawa anda telah menerima sijil anda dari CA dan bersedia untuk memasang dan mengkonfigurasinya pada pelayan haproxy.

Fail yang dijangkakan adalah:

  • Sijil itu sendiri.
  • Sijil perantaraan juga dikenali sebagai bundle atau rantai, dan.
  • Akar ca, jika ada, dan.
  • Kunci persendirian.

Buat fail sijil SSL yang diformat PEM

Sebelum anda mengkonfigurasi anda Ca sijil dalam Haproxy, anda perlu memahami perkara itu Haproxy memerlukan satu .PEM fail yang harus mengandungi kandungan semua fail di atas, digabungkan mengikut urutan berikut:

  • Kunci peribadi yang berakhir dengan .kunci, (boleh datang pada permulaan atau akhir fail).
  • Diikuti oleh sijil SSL (biasanya berakhir dengan .Crt).
  • Kemudian ca-bundle (biasanya berakhir dengan .ca-bundle), dan
  • Akar ca, jika ada.

Untuk membuat .PEM fail, masuk ke direktori yang mempunyai fail sijil anda e.g ~/Muat turun, Kemudian jalankan perintah kucing seperti ini (ganti nama fail dengan sewajarnya):

Contoh $ Cat.com.kekunci star_example_com/star_example_com.CRT STAR_EXAMPLE_COM/STAR_EXAMPLE_COM.CA-Bundle> Contoh.com.PEM 

Konfigurasikan Sijil SSL PEM dalam HAPROXY

Seterusnya, muat naik yang baru dibuat .PEM fail sijil ke Haproxy pelayan menggunakan arahan SCP seperti yang ditunjukkan (ganti Sysadmin dan 192.168.10.24 dengan nama pengguna dan alamat IP pelayan jauh masing -masing):

Contoh $ SCP.com.PEM [dilindungi e -mel]:/home/sysadmin/ 

Kemudian buat direktori di mana sijil .PEM fail akan disimpan menggunakan mkdir Perintah dan salin fail ke dalamnya:

$ sudo mkdir -p/etc/ssl/contoh.Contoh Com/ $ Sudo CP.com.CAS/ETC/SSL/Contoh.com/ 

Seterusnya, buka anda Haproxy fail konfigurasi dan konfigurasikan sijil di bawah bahagian pendengar frontend, menggunakan parameter SSL dan CRT: yang pertama membolehkan penamatan SSL dan yang terakhir menentukan lokasi fail sijil.

Frontend http_frontend mod http bind *: 80 bind *: 443 ssl crt/etc/ssl/contoh.com/contoh.com.PEM ALPN H2, HTTP/1.1 Skim Redirect HTTPS CODE 301 jika !ssl_fc default_backend http_servers 

Versi tertentu SSL/TLS tidak disyorkan untuk digunakan sekarang kerana kelemahan yang telah ditemui di dalamnya. Untuk menghadkan versi yang disokong SSL, anda boleh menambah SSL-MIN-VER parameter seperti ini:

Bind *: 443 SSL CRT/ETC/SSL/Contoh.com/contoh.com.PEM ALPN H2, HTTP/1.1 SSL-MIN-VER TLSV1.2 

Konfigurasikan HAPROXY untuk mengalihkan HTTP ke HTTPS

Untuk memastikan laman web anda hanya boleh diakses melalui Https, anda perlu membolehkan Haproxy mengalihkan semua Http lalu lintas ke Https Sekiranya pengguna cuba mengaksesnya melalui HTTP (port 80).

Tambahkan baris berikut ke konfigurasi di atas:

Skim Redirect HTTPS CODE 301 jika !ssl_fc atau http-request skema redirect https melainkan ssl_fc 

Bahagian frontend anda kini kelihatan seperti yang ada dalam konfigurasi sampel ini:

Frontend http_frontend mod http bind *: 80 bind *: 443 ssl crt/etc/ssl/contoh.com/contoh.com.PEM ALPN H2, HTTP/1.1 SSL-MIN-VER TLSV1.2 Skim Redirect HTTPS CODE 301 jika !ssl_fc default_backend http_servers backend http_servers mode http baki roundrobin pilihan httpchk kepala / http-re-response set-header x-frame-options sameorigin http-respons-header x-xss-protection 1; -Kontent-Type-Options Nosniff Default-Server Check MaxConn 5000 Server Http_Server1 10.2.1.55:80 

Simpan fail konfigurasi dan tutupnya.

Kemudian periksa sama ada sintaksnya betul menggunakan arahan berikut:

$ sudo haproxy -f/etc/haproxy/haproxy.CFG -C 
Semak Konfigurasi Haproxy

Jika fail konfigurasi sah, teruskan dan muat semula perkhidmatan Haproxy untuk mengambil perubahan baru -baru ini dalam konfigurasi, menggunakan arahan SystemCTL:

$ sudo Systemctl Reload Haproxy 

Akhir sekali, uji keseluruhan persediaan dengan mengakses laman web anda dari pelayar web dan pastikan sijil dimuatkan dengan baik dan penyemak imbas menunjukkan bahawa "Sambungan adalah selamat"!

Semak laman web HAProxy

Itu sahaja! Kami berharap panduan ini telah membantu anda mengkonfigurasi Sijil SSL dalam Perisian Pengimbang Beban Haproxy. Sekiranya anda menghadapi sebarang kesilapan, beritahu kami melalui borang maklum balas di bawah. Kami dengan senang hati akan menolong anda.