Cum se configurează un certificat SSL în HAProxy

Cum se configurează un certificat SSL în HAProxy

HAProxy, un distribuitor de sarcină TCP/HTTP de înaltă performanță, acceptă terminarea SSL, ceea ce înseamnă că poate gestiona sarcinile de criptare și decriptare SSL, reducând sarcina pe serverele backend.

Acest articol vă va arăta cum să configurați un certificat SSL în HAProxy, inclusiv generarea unui cod CSR (Certificate Signing Request), obținerea unui certificat SSL comercial, combinarea certificatului cu cheia privată și configurarea HAProxy pentru a-l utiliza. Așadar, să începem!


Cuprins

  1. Generarea unui cod CSR pentru certificatul SSL
  2. Obțineți un certificat SSL comercial pentru HAProxy
  3. Uniți certificatul și cheia privată
  4. Configurați certificatul SSL PEM în HAProxy

Generarea unui cod CSR pentru certificatul SSL

Înainte ca autoritatea de certificare să emită certificatul SSL, are nevoie de codul CSR de la dvs. pentru a vă valida acreditările de contact. CSR este un mic bloc de text codificat cu detalii relevante despre site-ul dvs. web și compania dvs. Trebuie să îl generați și să îl trimiteți în timpul înscrierii SSL.

Iată cum să faceți acest lucru:

  1. Deschideți un terminal: Accesați interfața liniei de comandă de pe serverul dvs.
  2. Rulați comanda OpenSSL: Utilizați următoarea comandă OpenSSL pentru a genera o CSR și o cheie privată. Înlocuiți mydomain cu numele dvs. de domeniu real.

    openssl req -new -newkey rsa:2048 -nodes -keyout mydomain.key -out mydomain.csr
  3. Introduceți informațiile necesare: Vi se va solicita să introduceți detalii precum:
    • Numele țării (cod de 2 litere, de ex. SUA)
    • Numele statului sau al provinciei (de exemplu, California)
    • Numele localității (de exemplu, San Jose)
    • Numele organizației (de exemplu, GPI Holding)
    • Numele unității organizaționale (de ex., IT)
    • Nume comun (de exemplu, yourdomain.com)
    • Adresa de e-mail
  4. Salvați CSR-ul și cheia privată: Comanda va genera două fișiere: mydomain.csr (CSR) și mydomain.key (cheia privată). Păstrați cheia privată în siguranță, deoarece va fi necesară ulterior.

Obțineți un certificat SSL comercial pentru HAProxy

Certificatele SSL comerciale sunt acceptate de toate browserele și sistemele operaționale. Prin urmare, site-urile web sau aplicațiile dvs. nu se vor confrunta cu erori enervante de conectare SSL. Pentru un mediu de producție, astfel de certificate sunt o necesitate. Dacă utilizați HAProxy în scopuri de testare, puteți genera un certificat cu autofirmare, dar în acest articol ne vom concentra pe configurarea SSL HAProxy pentru medii live.

Pentru a obține un certificat SSL comercial, urmați acești pași:

  1. Alegeți o autoritate de certificare (CA): Selectați o AC de renume, cum ar fi DigiCert, Comodo sau GeoTrust.
  2. Selectați tipul de certificat: Alegeți tipul de certificat SSL care se potrivește nevoilor dvs., cum ar fi un certificat pentru un singur domeniu, wildcard sau multidomeniu (SAN).
  3. Trimiteți CSR-ul: Furnizați CSR-ul către CA pentru ca aceasta să poată emite un certificat care să corespundă cheii private a serverului dvs.
  4. Cumpărați certificatul: Obțineți certificatul SSL de la un distribuitor SSL de încredere, cum ar fi SSL Dragon, pentru cel mai bun preț și asistență pentru clienți.
  5. Procesul de validare: În funcție de tipul de certificat, veți fi supus unui proces de validare a domeniului, de validare a organizației sau de validare extinsă.
  6. Primiți certificatul: După validare, CA va emite fișierele SSL arhivate într-un dosar ZIP.

Uniți certificatul și cheia privată

După ce ați primit certificatul SSL de la CA, trebuie să îl combinați cu cheia dvs. privată pentru a crea un singur fișier pe care HAProxy îl poate utiliza.

  1. Pregătiți fișierele: Asigurați-vă că aveți următoarele fișiere:
    • Certificatul SSL al domeniului dvs. (de exemplu, mydomain.crt)
    • Cheia privată generată anterior (mydomain.key)
    • Orice certificate intermediare furnizate de CA (de exemplu, intermediate.crt). De obicei, CA trimite certificatele intermediare într-un fișier CA Bundle.
  2. Combinați fișierele: Această comandă combină certificatul, certificatul intermediar și cheia privată într-un singur fișier PEM.

    cat mydomain.crt intermediate.crt mydomain.key > /etc/haproxy/mydomain.pem

Configurați certificatul SSL PEM în HAProxy

Acum că aveți fișierul PEM, puteți configura HAProxy pentru a utiliza certificatul SSL.

Pasul 1: Încărcați certificatul PEM pe serverul HAProxy:

Utilizați comanda scp pentru a încărca fișierul de certificat PEM pe serverul HAProxy (înlocuiți sysadmin și haproxy_server_ip cu numele de utilizator și, respectiv, adresa IP a serverului de la distanță):

scp mydomain.pem sysadmin@haproxy_server_ip:/home/sysadmin/

Pasul 2: Crearea unui director pentru certificat

Creați un director în care va fi stocat fișierul PEM al certificatului:

sudo mkdir -p /etc/ssl/mydomain/
sudo cp mydomain.pem /etc/ssl/mydomain/

Pasul 3: Editarea fișierului de configurare HAProxy

Deschideți fișierul de configurare HAProxy (localizat implicit la /etc/haproxy/haproxy.cfg) într-un editor de text precum Notepad.

Pasul 4: Configurarea secțiunii Frontend

Modificați secțiunea frontend pentru a activa terminarea SSL și a redirecționa traficul HTTP către HTTPS:

frontend http_frontend
mode http
bind *:80
bind *:443 ssl crt /etc/ssl/mydomain/mydomain.pem alpn h2,http/1.1
redirect scheme https code 301 if !{ ssl_fc }
default_backend http_servers

Pasul 5: Adăugarea parametrilor SSL/TLS

Pentru a asigura utilizarea versiunilor SSL/TLS moderne și sigure, adăugați parametrul ssl-min-ver:

bind *:443 ssl crt /etc/ssl/mydomain/mydomain.pem alpn h2,http/1.1 ssl-min-ver TLSv1.2

Această directivă acceptă protocoalele HTTP/2 și HTTP/1.1 și impune o versiune TLS minimă de 1.2 pentru conexiunile securizate.

Pasul 6: Configurați secțiunea Backend

Asigurați-vă că serverele backend sunt definite corect.

backend http_servers
mode http
balance roundrobin
server server1 :80 check
server server2 :80 check

Pasul 7: Reporniți HAProxy

Aplicați modificările prin repornirea serviciului HAProxy:

sudo systemctl restart haproxy

Pasul 8: Testați configurația SSL

Pentru a vă testa configurația SSL HAProxy, utilizați SSL Labs și introduceți numele domeniului dvs. Instrumentul va furniza un raport cuprinzător privind configurația SSL/TLS, inclusiv detaliile certificatului și orice probleme potențiale.


Concluzie

În rezumat, învățarea modului de configurare a unui certificat SSL în HAProxy este esențială pentru securizarea aplicațiilor dvs. web și pentru asigurarea unei comunicări fiabile între clienți și servere. Prin configurarea corectă a configurației SSL HAProxy, puteți proteja datele sensibile și îmbunătăți securitatea generală. Urmarea acestor linii directoare ajută la implementarea unei criptări robuste și asigură faptul că site-ul dvs. web funcționează în siguranță prin HTTPS, oferind o experiență mai sigură pentru utilizatorii dvs.

Economisește 10% la certificatele SSL în momentul plasării comenzii!

Eliberare rapidă, criptare puternică, încredere în browser de 99,99%, suport dedicat și garanție de returnare a banilor în 25 de zile. Codul cuponului: SAVE10

Autor cu experiență, specializat în certificate SSL. Transformă subiectele complexe despre securitatea cibernetică în conținut clar și captivant. Contribuie la îmbunătățirea securității digite prin narațiuni cu impact.