Cómo asegurar Nginx con Let's Cifrypt en Ubuntu y Debian
- 3792
- 284
- Carmen Casillas
Siguiendo el anterior Vamos a cifrar tutorial sobre Apache SSL, En este artículo discutiremos cómo generar e instalar un certificado SSL/TLS gratuito emitido por Vamos a cifrar CA para Nginx servidor web en Ubuntu o Debian.
Lea también
- Asegure Apache con Free Let's Ciftpt en Ubuntu y Debian
- Instale Vamos SSL para asegurar Apache en RHEL y CentOS
Prueba de entorno de muestra
Instalar Vamos en cifrado para asegurar Nginx en Ubuntu y DebianRequisitos
- Un dominio registrado con DNS válido
A
registra para señalar a la dirección IP de su servidor. - Un servidor web NGINX instalado con SSL y VHOST habilitado, en caso de que planee alojar múltiples dominios o subdominios.
Paso 1: Instalación del servidor web NGINX
1. En el primer paso, instale el servidor web Nginx, si no está instalado, emitiendo el siguiente comando:
$ sudo apt-get install nginxInstale el servidor web Nginx en Ubuntu 14.04 y Debian 8
Paso 2: Generar un certificado SSL en cifrado para Nginx
2. Antes de generar un certificado SSL/TLS gratuito, instale Vamos a cifrar software /usr/local/
Jerarquía del sistema de archivos con la ayuda de git Cliente emitiendo los siguientes comandos:
$ sudo apt -get -y install git $ cd/usr/local/$ sudo git clone https: // github.com/Letsencrypt/Letsencrypt
3. Aunque el procedimiento de obtener un certificado para Nginx está automatizado, aún puede crear e instalar manualmente un certificado SSL gratuito para NGINX usando Let's Cifrypt Standalone Plugin.
Este método requiere ese puerto 80 No debe estar en uso en su sistema durante un corto período de tiempo, mientras que Cincrypt Client valida la identidad del servidor antes de generar el certificado.
En caso de que ya esté ejecutando NGINX, detenga el servicio emitiendo el siguiente comando.
$ sudo servicio nginx stop o $ sudo systemctl stop nginx
En caso de que esté ejecutando otro servicio que se une al puerto 80 Detén ese servicio también.
4. Confirmar que el puerto 80 es gratuito ejecutando el comando netstat:
$ sudo netstat -tlpn | Grep 80Verifique los puertos de escucha actuales en Linux
5. Ahora es el momento de correr Letsencrypt
Para obtener un certificado SSL. Ir a Vamos a cifrar directorio de instalación que se encuentra en /usr/local/letsencrypt ruta del sistema y ejecutar el Letsencrypt-Auto comandar proporcionando el certonamente --ser único
opción y -d
Indicador para cada dominio o subdominio que desea generar un certificado.
$ CD/USR/LOCAL/LETSECRYPT $ sudo ./Letsencrypt -Auto Certonly -Standalone -d Your_Domain.TLDObtener Let's Encrypt SSL Certificado
6. Ingrese la dirección de correo electrónico que utilizará en Cifrar para la recuperación de clave perdida o avisos urgentes.
Introducir la dirección de correo electrónico7. Acuerde con los términos de la licencia presionando la tecla ENTER.
Aceptar el acuerdo de Letsencrypt8. Finalmente, si todo tuvo éxito, un mensaje similar a la captura de pantalla a continuación debería aparecer en su consola terminal.
Letsencrypt Finises de instalaciónPaso 3: Instale el certificado SSL en Cifrar en Nginx
9. Ahora que se ha generado su certificado SSL es el momento de configurar Nginx Webserver para usarlo. Los recién certificados SSL se colocan en /etc/letsencrypt/live/
bajo un directorio que lleva el nombre de su nombre de dominio. Ejecute el comando LS para enumerar los archivos de certificado emitidos para su dominio.
$ sudo ls/etc/letsencrypt/live/$ sudo ls -al/etc/letsencrypt/live/Caeszar.TKLetsencrypt Certificados SSL
10. A continuación, abra /etc/nginx/sites disponible/predeterminado
Archivo con un editor de texto y agregue el siguiente bloque después de la primera línea comentada que especifica el comienzo del bloque SSL. Use la siguiente captura de pantalla como guía.
$ sudo nano/etc/nginx/sites habilitado/predeterminado
Extracto de bloque nginx:
# Configuración SSL # Escuchar 443 SSL Default_Server; ssl_certificate/etc/letsencrypt/live/cészar.tk/fullchain.pem; ssl_certificate_key/etc/letsencrypt/live/cészar.tk/privkey.pem; ssl_protocols tlsv1 tlsv1.1 TLSV1.2; ssl_prefer_server_ciphers on; SSL_CIPHERS 'EECDH+AESGCM: EDH+AESGCM: AES256+EECDH: AES256+EDH'; ssl_dhparam/etc/nginx/ssl/dhparams.pem;Configurar Nginx para usar Let's Cifrypt SSL
Reemplace los valores del nombre del dominio para los certificados SSL en consecuencia.
11. En el siguiente paso generar un fuerte Diffie-Hellman cifrar /etc/nginx/ssl/ directorio para proteger su servidor contra el Atolladero Ataque ejecutando los siguientes comandos.
$ sudo mkdir/etc/nginx/ssl $ cd/etc/nginx/ssl $ sudo openssl dhparam -out dhparams.PEM 2048Genere Diffie Hellman Cipher para Nginx
12. Finalmente, reinicie el demonio nginx para reflejar los cambios.
$ sudo systemctl reiniciar nginx
y pruebe su certificado SSL visitando la siguiente URL.
https: // www.ssllabs.com/ssltest/analizar.htmlVerifique NGINX Lets en cifrar el certificado SSL
Paso 4: Auto Renew Cifrar certificados Nginx
13. Certificados emitidos por Vamos a cifrar CA son válidos por 90 días. Para renovar automáticamente los archivos antes de la fecha de vencimiento, cree ssl-reno.mierda
Script de Bash en /usr/local/bin/
directorio con el siguiente contenido.
$ sudo nano/usr/local/bin/ssl-renow.mierda
Agregue el siguiente contenido a ssl-reno.mierda
archivo.
#!/bin/bash cd/usr/local/letsencrypt sudo ./Letsencrypt-Auto certonly -A Webroot --agree-tos-renew-by-default--webroot-path =/var/www/html/-d your_domain.TLD SUDO SYSTEMCTL RELOAD NGINX EXIT 0Auto Renew Nginx Let’s Cifrypt SSL Certificado
Reemplace la --patillo web
variable para que coincida con la raíz de su documento Nginx. Asegúrese de que el script sea ejecutable emitiendo el siguiente comando.
$ sudo chmod +x/usr/local/bin/ssl-renow.mierda
14. Finalmente, agregue un trabajo cron para ejecutar el script cada dos meses a la medianoche para asegurar que su certificado se actualizará en aproximadamente 30 días antes de que expire.
$ sudo crontab -e
Agregue la siguiente línea en la parte inferior del archivo.
0 1 1 */2 */usr/local/bin/ssl-renow.sh >>/var/log/your_domain.tld-reno.log 2> y 1Actualizar los certificados SSL en cifrado
Eso es todo! Su servidor NGINX ahora sirve contenido SSL utilizando un Cifbamos SSL certificado.
- « Cómo instalar el servidor NTP y el cliente en Ubuntu
- Cómo instalar OpenSsh 8.0 servidor desde la fuente en Linux »