GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo configurar Nginx con SSL

En este tutorial, le mostraremos cómo configurar Nginx con SSL en su servidor Linux. Para aquellos de ustedes que no sabían, Transport Layer Security (TLS) y Secure Socket Layer ( SSL) proporciona un método fácil para cifrar las conexiones entre los usuarios finales y los servidores web. SSL utiliza un sistema de autoridad de certificación para proporcionar verificación de identidad a fin de evitar que los sitios web afirmen falsamente ser otra organización o sitio web. Este tutorial le muestra cómo configurar fuerte seguridad SSL en el servidor web Nginx.

Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y asume que se están ejecutando en la cuenta raíz, si no, es posible que deba agregar 'sudo ' a los comandos para obtener privilegios de root. Le mostraré paso a paso cómo configurar Nginx con SSL en su Linux.

Configurar Nginx con SSL

Obligatorio:

  • Suponiendo que haya instalado el servidor web Nginx.
  • Utilizo Namecheap como registrador y ellos revenden certificados SSL de otras empresas, incluida Comodo.

Paso 1. Crear un directorio

mkdir -p /etc/nginx/ssl/idroot.us

Paso 2. Generación de su clave SSL y CSR

Antes de comprar un certificado, debe generar una clave privada y un archivo CSR (Solicitud de firma de certificado). Se le pedirá el contenido del CSR cuando solicite el certificado. Para Nombre común, ingrese el nombre de dominio deseado sin "www", es decir, idroot.us. Si es un Wildcard SSL, use *.idroot.us.

openssl req -nodes -newkey rsa:2048 -keyout idroot.us.key -out idroot.us.csr

Paso 3. Crear un paquete de certificados

Después de comprar el certificado, eventualmente recibirá un correo electrónico con su certificado SSL. Contiene un archivo zip con lo siguiente:

  • AddTrustExternalCARoot.crt
  • COMODORSAAddTrustCA.crt
  • COMODORSADomainValidationSecureServerCA.crt
  • idroot_net.crt
cat idroot_net.crt AddTrustExternalCARoot.crt COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt >> ssl-bundle.crt

Una vez que haya creado un paquete de certificados, puede moverlo a su directorio Nginx SSL.

mv ssl-bundle.crt /etc/nginx/ssl/idroot.us/

Paso 4. Configurar el Certificado para Nginx

Vaya a la configuración de host virtual de Nginx, el uso de SSL con Nginx requiere una modificación de la directiva de escucha y tres directivas relacionadas con SSL, como se muestra en los siguientes ejemplos:

nano /etc/nginx/conf.d/ssl.conf
server {
   listen 443 ssl spdy;
   server_name www.idroot.us idroot.us;
   root /var/www/idroot.us/public_html;
   index index.php index.html index.htm;
   server_tokens off;

   #SSL CONF
   ssl on;
   ssl_certificate /etc/nginx/ssl/idroot.us/ssl-bundle.crt;
   ssl_certificate_key /etc/nginx/ssl/idroot.us/idroid.us.key;


   #SSL
   ssl_session_cache shared:SSL:20m;
   ssl_session_timeout 10m;

   ssl_prefer_server_ciphers On;
   ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
   ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS;

   ssl_stapling on;
   ssl_stapling_verify on;
   resolver 8.8.8.8 8.8.4.4 valid=300s;
   resolver_timeout 10s;

   # permalink
   location / {
      try_files $uri $uri/ /index.php?$args;
   }

   # php-script handler
   location ~ \.php$ {
      fastcgi_index index.php;
      fastcgi_pass 127.0.0.1:9000;
      root    /var/www/idroot.us/public_html;
      fastcgi_param SCRIPT_FILENAME /var/www/idroot.us/public_html$fastcgi_script_name;
      include /etc/nginx/fastcgi_params;
   }

location  ~ /\.ht {
               deny  all;
           }
    }

Paso 5. Redirigir hosts virtuales HTTP a HTTPS

return 301  https://idroot.us$request_uri;

Paso 6. Reinicie/recargue Nginx.

/etc/init.d/nginx restart

¡Felicitaciones! Ha instalado correctamente Nginx con SSL. Gracias por utilizar este tutorial para instalar y configurar Nginx con SSL en un sistema Linux. Para obtener ayuda adicional o información útil, le recomendamos que consulte el sitio web oficial Sitio web de Nginx.


Cent OS
  1. Cómo instalar un certificado SSL en NGINX

  2. Cómo configurar Nginx para trabajar con PHP a través de PHP-FPM

  3. Configurar Kibana 4 con Nginx | Protección de Kibana 4 – CentOS 7

  4. Cómo configurar origen Cloudflare SSL con Nginx

  5. Cómo configurar IMAP con SSL

Cómo instalar LetsEncrypt SSL con Nginx en CentOS 6

Cómo instalar Let's Encrypt SSL con Nginx en CentOS 7

Cómo instalar Nginx con Let's Encrypt SSL en Fedora 35

Cómo configurar PHP-FPM con NGINX

Cómo proteger Nginx con el certificado SSL de Let's Encrypt

Cómo configurar Load Balancing con NGINX en Jelastic Cloud