Configurarea SSL/TLS, HTTP/2 și HTTP/3 în Nginx în Nginx

Criptare și Protocoale Moderne Nginx Core 1.25+ (HTTP/3 QUIC)

Securizarea traficului web cu certificate SSL/TLS moderne, criptare de nivel A+ pe SSL Labs și activarea protocoalelor rapide HTTP/2 și HTTP/3.

Sintaxă
listen 443 ssl http2 & ssl_protocols TLSv1.2 TLSv1.3

Securizarea conexiunilor prin HTTPS este obligatorie pe web-ul modern atât pentru protecția datelor utilizatorilor, cât și pentru poziționarea SEO în Google. Cu toate acestea, o configurare învechită poate lăsa serverul vulnerabil la atacuri cibernetice sau poate încetini încărcarea paginilor.

O configurare modernă de Nginx elimină protocoalele depășite (SSLv3, TLS 1.0, TLS 1.1) și activează exclusiv TLSv1.2 și TLSv1.3 alături de algoritmi de criptare siguri (ECDHE-ECDSA/RSA cu AES-GCM și CHACHA20).

Prin adăugarea directivelor http2 și noului suport nativ pentru HTTP/3 (QUIC peste UDP), Nginx transmite resursele în mod multiplexat printr-o singură conexiune fără blocaje de tip ‘head-of-line’, reducând timpul de încărcare a site-ului cu până la 40% pe conexiuni mobile.

Sintaxă, opțiuni și concepte cheie

Opțiune / Concept Descriere practică
ssl_certificate / ssl_certificate_key Căile către certificatul public și cheia privată (ex. emise gratuit de Let’s Encrypt).
ssl_protocols TLSv1.2 TLSv1.3 Restricționarea exclusivă la protocoalele moderne imune la vulnerabilitățile istorice.
ssl_session_cache & ssl_session_timeout Memorarea cache a sesiunilor SSL pentru a elimina handshake-ul la cereri consecutive.
http2 / quic Parametrii de ascultare ce activează multiplexarea modernă pe TCP și UDP.

Exemple practice și cod

Exemplul 1: Configurație completă Nginx pentru scor A+ pe Qualys SSL Labs

Blocul recomandat de directive de criptare și performanță.

server {
    listen 443 ssl http2;
    server_name www.dexblog.ro;

    ssl_certificate /etc/letsencrypt/live/dexblog.ro/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/dexblog.ro/privkey.pem;

    # Protocoale și Cifre moderne de securitate maximă:
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384;
    ssl_prefer_server_ciphers off;

    # Optimizare viteză handshake:
    ssl_session_timeout 1d;
    ssl_session_cache shared:SSL:10m;
    ssl_session_tickets off;

    # OCSP Stapling (validare rapidă a stării certificatului):
    ssl_stapling on;
    ssl_stapling_verify on;
    resolver 1.1.1.1 8.8.8.8 valid=300s;
}

Rezultat & Impact

Criptare militară impecabilă cu viteză de conectare ultra-rapidă.

Greșeli frecvente și bune practici

  • Păstrarea protocoalelor vechi `TLSv1` sau `TLSv1.1` active, ceea ce duce la picarea imediată a auditurilor PCI-DSS sau a testelor SSL Labs.
  • Uitarea activării OCSP Stapling, forțând browserul fiecărui vizitator să contacteze separat autoritatea de certificare, adăugând 100-300ms la primul acces.

Ghiduri și noțiuni înrudite