Entonces tengo un archivo de configuración personalizado para el proxy inverso y cuando ejecuto sudo nginx -t obtengo
nginx: [emerg] unexpected "m" in /etc/nginx/sites-enabled/<domain>.conf:19
nginx: configuration file /etc/nginx/nginx.conf test failed
A continuación se muestra el contenido de configuración o el bloque que intento aprobar antes de continuar.
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name <server_url>;
ssl_certificate /config/.acme.sh/your-domain/fullchain.cer;
ssl_certificate_key /config/.acme.sh/your-domain/your-domain.key;
access_log /var/log/nginx/<server_url>.access.log;
error_log /var/log/nginx/<server_url>.error.log;
ssl_session_timeout 1d;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:ECDHE-RSA-AES128-GCM-SHA256:AES256+EECDH:DHE-RSA-AES128-GCM-SHA256:AES256+EDH:ECDHE-RSA-AES256-GCM-S$
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
#dh param
ssl_dhparam /config/ssl/dhparam.pem;
# Enable HTTP Strict-Transport-Security
# If you have a subdomain of your site,
# be careful to use the 'includeSubdomains' options
add_header Strict-Transport-Security "max-age=63072000;
includeSubdomains; preload";
# XSS Protection for Nginx web server
add_header X-Frame-Options DENY;
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options nosniff;
ssl_session_cache shared:SSL:10m;
add_header X-Robots-Tag none;
client_max_body_size 0;
proxy_http_version 1.1;
proxy_buffering off;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
location / {
proxy_pass https://<ip_address>;
}
}
Teóricamente, la línea add_header sería la línea 19 por lo que vale.
Pensamientos
Gracias.
J.R.
Respuesta1
Copiaste la línea ssl_ciphers de algún editor que la truncó a lo que cabe en la ventana. Observe cómo la línea básicamente termina con ECDHE-RSA-AES256-GCM-S$
– ese no es un nombre de cifrado válido. Más importante aún, esa tampoco es una cita final.
Esto significa quetodohasta e incluyendo ... Strict-Transport-Security
sigue siendo parte de la lista de cifrado, y la comilla anterior max-age
no es una comilla de apertura, es una comilla de cierre. Básicamente tienes:
ssl_ciphers "blah blah blah "max-age=63072000;