GNU/Linux >> Tutoriales Linux >  >> Linux

Proteja Nginx con el certificado Let's Encrypt SSL en Ubuntu 18.04

¿Qué es el Certificado SSL?

Con el tiempo, los casos de violaciones de seguridad relacionadas con Internet han ido en aumento a medida que los piratas informáticos continúan trabajando las 24 horas para robar datos de los usuarios con fines maliciosos. Un certificado SSL es un certificado digital que se instala en los servidores de sitios web principalmente para cifrar los datos enviados entre el navegador del usuario y el servidor para que solo el destinatario pueda acceder a ellos. Esto es crucial porque, sin encriptación, la información se envía como datos de texto sin formato y los piratas informáticos pueden interceptarla fácilmente.

Por esta razón, la mayoría de las tiendas de comercio electrónico y las plataformas de pago de dinero en línea como PayPal encriptan sus sitios web. El certificado SSL también permite la autenticación y garantiza que la información se envíe al servidor correcto y no a un hacker.

A Google le gustan los sitios seguros

El certificado SSL ayuda a posicionar su sitio más alto en Google. Según el anuncio de Google, los sitios con cifrado SSL tendrán una clasificación más alta que los que no lo tienen y que se consideran inseguros. Un sitio seguro está simbolizado por un candado en la barra de URL y la URL precedida por https en lugar de HTTP. Si sus sitios carecen de una extensión HTTPS segura, Google indica la URL del sitio como "No segura" y esto puede afectar negativamente
la clasificación de su sitio.

Nginx con certificación Let's Encrypt SSL en Ubuntu

En este artículo, veremos cómo proteger Nginx con Let's encrypt SSL en Ubuntu 18.04. Let's Encrypt es un SSL gratuito y automatizado proporcionado por la autoridad de Let's Encrypt. En 2018, Let's Encrypt había asegurado más de 150 millones de sitios web.

Comencemos y veamos cómo podemos asegurar Nginx con Let's encrypt SSL en Ubuntu 18.04.

Requisitos

Para comenzar, asegúrese de tener lo siguiente:

  • Instancia de servidor del servidor Ubuntu 18.04 con acceso ssh
  • Un uso no root con privilegios sudo
  • Un nombre de dominio totalmente calificado (FQDN) con un registro A que apunta a la dirección IP del servidor
  • En este ejemplo, vamos a utilizar el nombre de dominio crazytechgeek.info que apunta a un VPS con dirección IP 18.191.46.130 .

Paso 1. Instalación de Nginx

Lo primero será instalar el servidor web Nginx. Pero primero, actualice su sistema iniciando sesión como usuario no root y ejecutando el siguiente comando.

$ sudo apt update

A continuación, instale Nginx con el siguiente comando.

$ sudo apt install nginx

Salida :

Una vez instalado, verifique que Nginx se esté ejecutando ejecutando el siguiente comando.

$ sudo systemctl status nginx

Salida :

¡Excelente! Ahora que hemos instalado nuestro servidor web, pasemos al siguiente paso.

Paso 2. Instalar Certbot

Instalemos ahora Certbot en nuestro servidor. En este ejemplo, usaremos el repositorio de software de Ubuntu que contiene todos los archivos actualizados. Para agregar el repositorio de Certbot, ejecute el siguiente comando.

$ sudo add-apt-repository ppa:certbot/certbot

Salida :

Instalación de Certbot

Para que los repositorios del sistema estén al tanto de los cambios realizados, actualice el sistema.

$ sudo apt update

Paso 3. Instalar el paquete Certbot Nginx

Luego vamos a instalar el paquete Certbot Nginx. Para lograr esto, ejecute el siguiente comando:

$ sudo apt-get install python-certbot-nginx

Salida

Paso 4. Actualizar el cortafuegos para permitir el tráfico HTTPS

necesitamos permitir el tráfico HTTPS a través del firewall para que SSL funcione usando el puerto 443. Primero verifiquemos el estado del firewall.

$ sudo ufw status

Salida

Antes de habilitar el firewall, primero permitamos "Nginx Full", que se encargará de HTTP y HTTPS.

$ sudo ufw allow 'Nginx Full'

Salida

Habilitemos ahora el firewall ufw. Presione 'y' cuando se le solicite.

$ sudo ufw enable

Salida

Verifiquemos si las reglas se agregaron al firewall.

$ sudo ufw status

Salida

Estado Ufw activo

Paso 5. Generación del certificado SSL

La última parte es la generación del certificado Let's Encrypt SSL. Para lograr esto, use la siguiente sintaxis.

$ sudo certbot --nginx -d example.com -d www.example.com

Esto generará el certificado SSL que será válido tanto para ejemplo.com como para www.ejemplo.com.

En nuestro caso, tendremos;

$ sudo certbot --nginx -d crazytechgeek.info -d www.crazytechgeek.info

Salida

Si está ejecutando Certbot por primera vez, primero se le pedirá que ingrese una dirección de correo electrónico.

Luego se iniciará la comunicación con el servidor Let's Encrypt e intentará verificar que usted controla el dominio para el que está solicitando un certificado.

Próximo. Presiona A para aceptar los términos del servicio.

A continuación, se le preguntará si desea que su dirección de correo electrónico se comparta con EFF. Aquí, puede optar por participar o no.

El siguiente paso es donde todo importa. Este es el punto en el que se le pedirá que redirija las solicitudes de HTTP a HTTPS. Selecciona la segunda opción.

Si todo salió bien, recibirá un mensaje de verificación de que todo salió bien.

¡Maravilloso! ha instalado correctamente Let's encrypt SSL en su servidor web Nginx.

Para verificar esto, vaya a la dirección de su servidor en el navegador y actualice.

Tenga en cuenta que la URL ha cambiado de HTTP a HTTPS al principio. Para ver más información sobre el certificado SSL, haga clic en el símbolo del candado y seleccione la opción 'Certificado'.

Salida

Renovar el certificado SSL de Let's Encrypt

La validez del certificado Let's Encrypt es de 90 días. Esto significa que la renovación es después de 3 meses. Let's encrypt realiza automáticamente la renovación para la automatización. Para probar el proceso de renovación, haga una prueba con Certbot como se muestra.

sudo certbot renew --dry-run

Si no hay errores, todo salió según el plan y, según sea necesario, se llevará a cabo la renovación automática. Todos los mensajes sobre la caducidad de la CA se enviarán a la dirección de correo electrónico especificada durante la configuración.


Linux
  1. SSL gratis para Nginx en Centos por Let's encrypt

  2. Asegure Nginx con Let's Encrypt SSL en Debian 10/11

  3. Asegure Nginx con Let's Encrypt en Ubuntu 18.04 - ¿Cómo hacerlo?

  4. Cómo proteger Nginx con Let's Encrypt en Ubuntu 20.04

  5. Cómo asegurar una conexión SSL con Apache en Ubuntu 18.04

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

Cómo instalar Let's Encrypt SSL con Nginx en Ubuntu 16.04 LTS

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

Cómo proteger el servidor LEMP con Let's Encrypt Free SSL en Ubuntu 18.04 VPS

Cómo proteger Nginx con Let's Encrypt en CentOS 8

Cómo proteger Nginx con Let's Encrypt en Ubuntu 20.04