@@ -16,13 +16,49 @@ setup_nginx_conf() {
1616 cat << EOF > /etc/nginx/conf.d/default.conf
1717server {
1818 listen ${PORT} ssl;
19+ http2 on;
1920 server_name ${DOMAIN} ;
2021
22+ # SSL certificate configuration
2123 ssl_certificate /etc/letsencrypt/live/${DOMAIN} /fullchain.pem;
2224 ssl_certificate_key /etc/letsencrypt/live/${DOMAIN} /privkey.pem;
2325
26+ # Modern SSL configuration - TLS 1.2 and 1.3 only
27+ ssl_protocols TLSv1.2 TLSv1.3;
28+
29+ # Strong cipher suites - Only AES-GCM and ChaCha20-Poly1305
30+ ssl_ciphers 'TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305';
31+
32+ # Prefer server cipher suites
33+ ssl_prefer_server_ciphers on;
34+
35+ # ECDH curve for ECDHE ciphers
36+ ssl_ecdh_curve secp384r1;
37+
38+ # Enable OCSP stapling
39+ ssl_stapling on;
40+ ssl_stapling_verify on;
41+ ssl_trusted_certificate /etc/letsencrypt/live/${DOMAIN} /fullchain.pem;
42+ resolver 8.8.8.8 8.8.4.4 valid=300s;
43+ resolver_timeout 5s;
44+
45+ # SSL session configuration
46+ ssl_session_timeout 1d;
47+ ssl_session_cache shared:SSL:50m;
48+ ssl_session_tickets off;
49+
50+ # SSL buffer size (optimized for TLS 1.3)
51+ ssl_buffer_size 4k;
52+
53+ # Disable SSL renegotiation
54+ ssl_early_data off;
55+
2456 location / {
2557 proxy_pass ${TARGET_ENDPOINT} ;
58+ proxy_set_header Host \$ host;
59+ proxy_set_header X-Real-IP \$ remote_addr;
60+ proxy_set_header X-Forwarded-For \$ proxy_add_x_forwarded_for;
61+ proxy_set_header X-Forwarded-Proto \$ scheme;
2662 }
2763
2864 location /evidences/ {
0 commit comments