bg-tutorials

Come configurare un certificato SSL in HAProxy

Come configurare un certificato SSL in HAProxy

HAProxy, un bilanciatore di carico TCP/HTTP ad alte prestazioni, supporta la terminazione SSL, il che significa che può gestire le attività di crittografia e decrittografia SSL, riducendo il carico sui server backend.

Questo articolo ti mostrerà come configurare un certificato SSL in HAProxy: generare un codice CSR (Certificate Signing Request), ottenere un certificato SSL commerciale, combinare il certificato con la chiave privata e configurare HAProxy per utilizzarlo. Quindi iniziamo!


Indice dei contenuti

  1. Generare un codice CSR per il tuo certificato SSL
  2. Ottieni un certificato SSL commerciale per HAProxy
  3. Unire il certificato e la chiave privata
  4. Configurare il certificato SSL PEM in HAProxy

Generare un codice CSR per il tuo certificato SSL

Prima che l’Autorità di Certificazione possa emettere il certificato SSL, ha bisogno del codice CSR da parte tua per convalidare le tue credenziali di contatto. Il CSR è un piccolo blocco di testo codificato con i dati rilevanti del tuo sito web e della tua azienda. Devi generarlo e inviarlo durante la registrazione SSL.

Ecco come fare:

  1. Apri un terminale: Accedi all’interfaccia a riga di comando del tuo server.
  2. Esegui il comando OpenSSL: Usa il seguente comando OpenSSL per generare un CSR e una chiave privata. Sostituisci il mio dominio con il tuo nome di dominio reale.

    openssl req -new -newkey rsa:2048 -nodes -keyout mydomain.key -out mydomain.csr
  3. Inserisci le informazioni richieste: Ti verrà richiesto di inserire alcuni dettagli, come ad esempio:
    • Nome del Paese (codice di 2 lettere, ad esempio US)
    • Nome dello Stato o della Provincia (ad esempio, California)
    • Nome della località (ad esempio, San Jose)
    • Nome dell’organizzazione (ad esempio, GPI Holding)
    • Nome dell’unità organizzativa (ad esempio, IT)
    • Nome comune (ad esempio, yourdomain.com)
    • Indirizzo e-mail
  4. Salva la CSR e la chiave privata: Il comando genererà due file: mydomain.csr (il CSR) e mydomain.key (la chiave privata). Tieni al sicuro la chiave privata perché ti servirà in seguito.

Ottieni un certificato SSL commerciale per HAProxy

I certificati SSL commerciali sono affidabili per tutti i browser e i sistemi operativi. Di conseguenza, i tuoi siti web o le tue applicazioni non subiranno fastidiosi errori di connessione SSL. Per un ambiente di produzione, questi certificati sono indispensabili. Se stai usando HAProxy a scopo di test, puoi generare un certificato autofirmante, ma in questo articolo ci concentreremo sulla configurazione di HAProxy SSL per gli ambienti live.

Per ottenere un certificato SSL commerciale, segui i seguenti passaggi:

  1. Scegli un’Autorità di Certificazione (CA): Seleziona una CA affidabile come DigiCert, Comodo o GeoTrust.
  2. Seleziona il tipo di certificato: Scegli il tipo di certificato SSL più adatto alle tue esigenze, ad esempio un certificato a dominio singolo, wildcard o multidominio (SAN).
  3. Invia il CSR: Fornisci il CSR alla CA in modo che possa emettere un certificato che corrisponda alla chiave privata del tuo server.
  4. Acquista il certificato: Acquista il tuo certificato SSL da un rivenditore SSL affidabile come SSL Dragon per ottenere il miglior prezzo e l’assistenza clienti.
  5. Processo di convalida: A seconda del tipo di certificato, si dovrà sottoporre a un processo di convalida del dominio, dell’organizzazione o di convalida estesa.
  6. Ricevi il certificato: Dopo la convalida, la CA rilascerà i file SSL archiviati in una cartella ZIP.

Unire il certificato e la chiave privata

Una volta ricevuto il certificato SSL dalla CA, devi combinarlo con la tua chiave privata per creare un unico file che HAProxy potrà utilizzare.

  1. Prepara i file: Assicurati di avere i seguenti file:
    • Il certificato SSL del tuo dominio (ad esempio, mydomain.crt)
    • La chiave privata generata in precedenza (mydomain.key)
    • Qualsiasi certificato intermedio fornito dalla CA (ad esempio, intermediate.crt). Di solito, la CA invia i certificati intermedi in un file CA Bundle.
  2. Combinare i file: Questo comando unisce il certificato, il certificato intermedio e la chiave privata in un unico file PEM.

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

Configurare il certificato SSL PEM in HAProxy

Ora che hai il file PEM, puoi configurare HAProxy per utilizzare il certificato SSL.

Passo 1: caricare il certificato PEM sul server HAProxy:

Usa il comando scp per caricare il file del certificato PEM sul server HAProxy (sostituisci sysadmin e haproxy_server_ip rispettivamente con il nome utente e l’indirizzo IP del server remoto):

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

Passo 2: Creare una directory per il certificato

Crea una directory in cui memorizzare il file PEM del certificato:

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

Passo 3: modificare il file di configurazione di HAProxy

Apri il file di configurazione di HAProxy (per impostazione predefinita si trova in /etc/haproxy/haproxy.cfg) in un editor di testo come Notepad.

Passo 4: Configurare la sezione Frontend

Modifica la sezione del frontend per abilitare la terminazione SSL e reindirizzare il traffico HTTP a 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

Passo 5: Aggiungere i parametri SSL/TLS

Per garantire l’utilizzo di versioni moderne e sicure di SSL/TLS, aggiungi il parametro ssl-min-ver:

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

Questa direttiva supporta i protocolli HTTP/2 e HTTP/1.1 e impone una versione TLS minima di 1.2 per le connessioni sicure.

Passo 6: Configurare la sezione Backend

Assicurati che i server di backend siano definiti correttamente.

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

Passo 7: Riavviare HAProxy

Applica le modifiche riavviando il servizio HAProxy:

sudo systemctl restart haproxy

Passo 8: Verifica la configurazione SSL

Per verificare la configurazione SSL di HAProxy, usa SSL Labs e inserisci il nome del tuo dominio. Lo strumento fornirà un rapporto completo sulla tua configurazione SSL/TLS, compresi i dettagli del certificato ed eventuali problemi.


Conclusione

In sintesi, imparare a configurare un certificato SSL in HAProxy è essenziale per proteggere le tue applicazioni web e garantire una comunicazione affidabile tra client e server. Impostando correttamente la configurazione SSL di HAProxy, puoi proteggere i dati sensibili e migliorare la sicurezza generale. Seguire queste linee guida aiuta a implementare una solida crittografia e garantisce che il tuo sito web operi in modo sicuro su HTTPS, offrendo un’esperienza più sicura ai tuoi utenti.

Risparmia il 10% sui certificati SSL ordinando oggi stesso da SSL Dragon!

Emissione rapida, crittografia avanzata, affidabilità del browser al 99,99%, assistenza dedicata e garanzia di rimborso entro 25 giorni. Codice coupon: SAVE10

Un'immagine dettagliata di un drago in volo
Scritto da

Scrittore di contenuti con esperienza, specializzato in certificati SSL. Trasforma intricati argomenti di cybersicurezza in contenuti chiari e coinvolgenti. Contribuisci a migliorare la sicurezza digitale attraverso narrazioni d'impatto.