HAProxy-da CA SSL şahadatnamasyny nädip sazlamaly
HAProxy, TCP we HTTP programmalary üçin ýokary elýeterliligi we ýük balans mümkinçiliklerini hödürleýän giňden ulanylýan, ygtybarly, ýokary öndürijilikli ters proksi. Düzgüne görä, OpenSSL bilen düzülýär, şeýlelik bilen SSL-iň ýatyrylmagyny goldaýar, web sahypaňyza/programma bukjasyna\web giriş serweri ýa-da programma giriş şlýuz serweri we müşderi programmalarynyň arasynda traffigi şifrlemek we açarlamak mümkinçiligini berýär.
Bu gollanma, HAPorxy-da CA SSL şahadatnamasyny nädip sazlamalydygyny görkezýär. Bu gollanma, şahadatnamany CA-dan eýýäm alandygyňyzy we ony HAProxy serwerinde gurnamaga we düzmäge taýýardygyňyzy göz öňünde tutýar.
Garaşylýan faýllar:
- Şahadatnamanyň özi.
- Aralyk şahadatnamalara bukja ýa-da zynjyr diýilýär we.
- CA kök, bar bolsa we.
- Şahsy açar.
PEM formatly SSL şahadatnama faýly dörediň
CA şahadatnamany HAProxy-da düzmezden ozal, HAProxy-nyň aşakdaky tertipde birleşdirilen ýokardaky ähli faýllaryň mazmunyny öz içine alýan ýekeje .pem
faýly talap edýändigine düşünmeli:
-
.key
bilen gutarýan şahsy açar, (faýlyň başynda ýa-da soňunda gelip biler). - SSL şahadatnamasy (adatça
.crt
bilen gutarýar). - Soňra CA-bukja (köplenç
.ca-bundle
bilen gutarýar) we - CA kök, bar bolsa.
.pem
faýly döretmek üçin şahadatnama faýllaryňyz bolan kataloga geçiň, mysal üçin ~/süklemeler, soňra pişik buýrugyny şeýle ýerine ýetiriň (faýl atlaryny şoňa görä çalşyň):
$ cat example.com.key STAR_example_com/STAR_example_com.crt STAR_example_com/STAR_example_com.ca-bundle > example.com.pem
HAProxy-da PEM SSL şahadatnamasyny sazlaň
Ondan soň, ýaňy döredilen .pem
şahadatnama faýlyny görkezilişi ýaly scp buýrugyny ulanyp HAProxy serwerine ýükläň (sysadmin we 192.168.10.24-i uzakdaky serwer ulanyjy ady we IP adresi bilen çalşyň):
$ scp example.com.pem [email :/home/sysadmin/
Soňra mkdir buýrugy bilen şahadatnama .pem
faýly saklanjak katalog dörediň we faýly göçüriň:
$ sudo mkdir -p /etc/ssl/example.com/ $ sudo cp example.com.pem /etc/ssl/example.com/
Ondan soň, HAProxy konfigurasiýa faýlyňyzy açyň we ssl we crt parametrlerini ulanyp, şahadatnamany öňdäki diňleýji bölüminde düzüň: birinjisi SSL-i ýatyrmaga mümkinçilik berýär, ikinjisi şahadatnama faýlynyň ýerleşýän ýerini kesgitleýär.
frontend http_frontend mode http bind *:80 bind *:443 ssl crt /etc/ssl/example.com/example.com.pem alpn h2,http/1.1 redirect scheme https code 301 if !{ ssl_fc } default_backend http_servers
SSL/TLS-iň käbir wersiýalarynda ýüze çykarylan gowşaklyklar sebäpli häzir ulanmak maslahat berilmeýär. SSL-iň goldanýan wersiýasyny çäklendirmek üçin ssl-min-ver parametrini goşup bilersiňiz:
bind *:443 ssl crt /etc/ssl/example.com/example.com.pem alpn h2,http/1.1 ssl-min-ver TLSv1.2
HAProxy-ny HTTP-e gönükdirmek üçin sazlaň
Web sahypaňyza diňe HTTPS arkaly girip boljakdygyny anyklamak üçin, bir ulanyjy HTTP (80-nji port) üstünden girjek bolsa, HAProxy-ny ähli HTTP traffigini HTTPS-e gönükdirmäge mümkinçilik bermeli.
Aboveokardaky konfigurasiýa aşakdaky setiri goşuň:
redirect scheme https code 301 if !{ ssl_fc } OR http-request redirect scheme https unless { ssl_fc }
Öňdäki bölümiňiz indi bu nusga konfigurasiýasyndaky ýaly bolmaly:
frontend http_frontend mode http bind *:80 bind *:443 ssl crt /etc/ssl/example.com/example.com.pem alpn h2,http/1.1 ssl-min-ver TLSv1.2 redirect scheme https code 301 if !{ ssl_fc } default_backend http_servers backend http_servers mode http balance roundrobin option httpchk HEAD / http-response set-header X-Frame-Options SAMEORIGIN http-response set-header X-XSS-Protection 1;mode=block http-response set-header X-Content-Type-Options nosniff default-server check maxconn 5000 server http_server1 10.2.1.55:80
Sazlama faýly ýazdyryň we ýapyň.
Soňra aşakdaky buýrugy ulanyp, sintaksisiniň dogrudygyny barlaň:
$ sudo haproxy -f /etc/haproxy/haproxy.cfg -c
Sazlama faýly dogry bolsa, systemctl buýrugyny ulanyp, konfigurasiýadaky soňky üýtgeşmeleri almak üçin gaproksi hyzmatyny täzeden ýükläň:
$ sudo systemctl reload haproxy
Iň soňkusy, web brauzerinden web sahypaňyza girip, ähli sazlamany synap görüň we şahadatnamanyň gowy ýüklenýändigine göz ýetiriň we brauzer\Baglanyşygyň ygtybarlydygyny görkezýär!
Bu hemmesi! Bu gollanma size HAProxy ýük balanser programma üpjünçiliginde SSL şahadatnamasyny düzmäge kömek etdi diýip umyt edýäris. Haýsydyr bir ýalňyşlyk bilen ýüzbe-ýüz bolsaňyz, aşakdaky seslenme formasy arkaly bize habar beriň. Size kömek etmäge şat bolarys.