GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo configurar origen Cloudflare SSL con Nginx

Resumen

En este artículo, vamos a seguir los pasos para configurar el certificado SSL de Cloudflare de origen con el servidor web Nginx. Estos pasos son para servidores web que se ejecutan en Linux (CentOS, Debian, etc.). Cloudflare es una plataforma de protección CDN y DDoS bastante famosa, pero ofrece muchos otros servicios; uno de esos servicios son los certificados SSL. Si ya está utilizando Cloudflare, también puede adquirir un certificado SSL de ellos. Los certificados SSL son gratuitos (incluso en el plan gratuito) pero los certificados del servidor de origen son gratuitos. Los certificados perimetrales no lo son. Una desventaja de los certificados de origen es que el certificado generado es compartido (un certificado SSL por varios usuarios), pero lo bueno es que el certificado proporcionado puede durar hasta 15 años y es compatible con TLS v1.3, HSTS y Onion. enrutamiento.

Generar el certificado SSL en Clouflare

Entonces, para adquirir el certificado SSL de Cloudflare, ya debe usar sus servicios y agregar su dominio en Cloudflare. En su tablero, navegue hasta el menú SSL/TLS y luego vaya al servidor Origin.

Haga clic en la opción para Crear un certificado. Luego recibirá un mensaje en el que debe elegir el tipo de clave (vaya con el tipo RSA). Además, seleccione que desea que Cloudflare genere la clave por usted.

Después de eso, seleccione cuánto tiempo desea que sean válidos. Cloudflare ofrece claves válidas desde 7 días hasta 15 años. Una vez que haga clic en el botón Crear, obtendrá un mensaje de ventana en el que se mostrarán las claves públicas y privadas.

Copie las dos claves. Esos son necesarios para el siguiente paso.

Cree el archivo de certificado y el archivo de clave privada en el servidor

Una vez que se genera el certificado SSL, el siguiente paso es instalar el certificado en el servidor Linux. Para eso, necesitamos crear dos archivos en nuestro servidor y en esos archivos pegar las claves que copiamos de Cloudflare. Para crear archivos, simplemente podemos usar un editor de texto y luego, en el nuevo archivo, pegamos los códigos clave. Cada archivo de certificado debe ir al directorio específico. Puede usar estos comandos para crear los archivos:

sudo nano /etc/ssl/certs/cert.pem

sudo nano /etc/ssl/private/key.pem

Como puede ver, necesitamos dos archivos, para cada clave que copiamos de Cloudflare. Además, puede saber por la línea de comando dónde deben ir, en qué directorio. Primero, el archivo cert.pem:en él, pegue el código del certificado y, en el archivo key.pem, pegue el código de la clave privada. Una vez que haya pegado el código, guarde los archivos.

Configura tu servidor y Nginx con Cloudflare SSL

Después de crear los archivos de certificado, ahora debemos configurar el SSL de origen de Cloudflare con nginx, lo que significa que debemos decirle a nginx que use el SSL de origen de Cloudflare que generamos anteriormente. Nuevamente, con el editor de texto, abra la configuración del servidor Nginx para su sitio web. Por lo general, se encuentra en:

etc/nginx/sitios-disponibles/predeterminado

o si no usa el archivo de configuración predeterminado y tiene un archivo de configuración específico para su sitio, edite ese archivo en su lugar. En el archivo, justo después de – escuche 80 líneas:agregue estas líneas también:

listen 443 ssl http2;
listen [::]:443 ssl http2;

ssl on;
ssl_certificate /etc/ssl/certs/cert.pem;
ssl_certificate_key /etc/ssl/private/key.pem;

Guarda el archivo y cierra. Al final, la nueva configuración debería verse así:

server {
listen 80;
listen [::]:80;
listen 443 ssl http2;
listen [::]:443 ssl http2;

ssl on;
ssl_certificate /etc/ssl/certs/cert.pem;
ssl_certificate_key /etc/ssl/private/key.pem;

root /var/www/html/;
index index.php index.html index.htm;

server_name somesite.com www.somesite.com;

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

location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
## include fastcgi_params;
}

}

Nota:la línea del nombre del servidor debe reflejar su nombre de dominio. La entrada en la configuración anterior solo se usa como ejemplo.

Una vez guardada la configuración, salga del editor y reinicie el servidor Nginx:

sudo systemctl restart nginx.service

Y eso es todo.

Resumen

Cubrimos los pasos sobre cómo configurar Cloudflare SSL de origen con Nginx. Nuevamente, debo decir que los certificados de origen son los únicos que son gratuitos en el plan gratuito de Cloudflare. No son la solución SSL perfecta, pero funcionan bastante bien y admiten muchos protocolos SSL. Teniendo en cuenta que ofrecen certificados gratuitos de hasta 15 años, eso no está nada mal.

Por supuesto, este no es el único método gratuito para proteger su sitio web con un SSL gratuito. Otra buena opción, que también es, si no el método más popular, es con un SSL del servicio Let's encrypt. Cubrimos el mismo proceso sobre cómo proteger un sitio web de Nginx con Let's Encrypt SSL. Puedes consultar la publicación en este enlace.

Le agradezco su tiempo y espero que la información haya sido útil.


Linux
  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. Cómo configurar múltiples SSL en una IP con Nginx

  4. Cómo configurar IMAP con SSL

  5. ¿Cómo configurar VSFTPD con conexión encriptada SSL/TLS?

Cómo usar Let's Encrypt con Cloudflare

¿Cómo usar CloudFlare CDN con un SSL?

Cómo configurar PHP-FPM con NGINX

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

Cómo configurar NGINX en un servidor CentOS 7

Cómo configurar Load Balancing con NGINX en Jelastic Cloud