Cómo configurar el bloque del servidor Nginx y Nginx seguro con Let’s Encrypt SSL en Rocky Linux 8 / CentOS 8

Un bloque de servidor Nginx es el equivalente a un Apache anfitrión virtual. Brinda a los usuarios la flexibilidad de alojar numerosos sitios web en el mismo servidor. Este es un enfoque rentable de alojamiento de sitios web en lugar de configurar diferentes servidores y configurarlos para diferentes dominios.

En este tutorial, demostraremos la configuración de un bloque de servidor Nginx. Luego, le mostraremos cómo puede asegurar el servidor web con Let’s Encrypt SSL que es un SSL gratuito.

requisitos previos

Antes de continuar, asegúrese de tener Nginx instalado. Tenemos un tutorial completo que recorre la instalación de l Nginx en CentOS 8. Además, confirme que su nombre de dominio apunte a la dirección IP pública de su servidor virtual. Para asegurarse de esto, diríjase a su proveedor de nombre de dominio y configure el registro A para que apunte a la IP del servidor.

Aquí, la dirección IP apunta al dominio llamado linuxtechgeek.info que vamos a utilizar a lo largo de esta guía.

Paso 1: crear la raíz del documento para el dominio

Comenzaremos creando un directorio para nuestro dominio que almacenará los archivos del sitio web. Por lo tanto, ejecute el siguiente comando para lograr esto.

                      
                        $ sudo mkdir -p /var/www/linuxtechgeek.info/html
                      
                    

Para fines de demostración, crearemos una muestra. índice.html expediente.

                      
                        $ sudo vim /var/www/linuxtechgeek.info/html/index.html
                      
                    

Pegue las siguientes líneas HTML.

                      
                        <html>
                      
                      
                         <head>
                      
                      
                         <title>Welcome to my domain.info</title>
                      
                      
                         </head>
                      
                      
                         <body>
                      
                      
                         <h1>Hey fellaz!!.The server block is working.</h1>
                      
                      
                         </body>
                      
                      
                        </html>
                      
                    

Por supuesto, siéntase libre de editar el contenido en el cuerpo según sus preferencias. A continuación, configure la propiedad del directorio del dominio para evitar fallas en los permisos.

                      
                        $ sudo chown -R nginx /var/www/linuxtechgeek.info/
                      
                    

Y configure los permisos como se muestra.

                      
                        $ sudo chmod -R 755 /var/www/linuxtechgeek.info/
                      
                    

¡Genial! Ahora configuremos el archivo de bloque del servidor.

Paso 2: crear un archivo de bloque de servidor Nginx

Configuraremos el archivo de bloque del servidor Nginx en el /etc/nginx/conf.d directorio de la siguiente manera.

                      
                        $ sudo vim /etc/nginx/conf.d/linuxtechgeek.info.conf
                      
                    

Pegue la siguiente configuración

                      
                        server {
                      
                      
                         listen 80;
                      
                      
                         server_name linuxtechgeek.info www.linuxtechgeek.info;
                      
                      
                         root /var/www/linuxtechgeek.info/html;
                      
                      
                         index index.php index.html index.htm;
                      
                      
                         access_log/var/log/nginx/linuxtechgeek.info.access.log;
                      
                      
                         error_log /var/log/nginx/linuxtechgeek.info.error.log;
                      
                      
                        }
                      
                    

Guardar y Salir. Una vez hecho esto, verifique si todas las configuraciones son correctas.

                      
                        $ sudo nginx -t
                      
                    

Desde la salida, todo se ve bien. Para aplicar todos los cambios realizados, reinicie el servidor web Nginx.

                      
                        $ sudo systemctl restart nginx
                      
                    

Y asegúrese de que se está ejecutando.

                      
                        $ sudo systemctl status nginx
                      
                    

Ahora navegue por su sitio web y será dirigido al archivo index.html del bloque de su servidor.

                      
                        
                          https://domain-name.come
                        
                      
                    

Paso 3: Asegure Nginx con Let’s Encyrpt SSL

Nuestro bloque de servidor ya está configurado, pero el servidor web aún no está encriptado. Cifrar el sitio con un certificado SSL es crucial para proteger la información enviada hacia y desde el servidor web. Un certificado SSL también mejorará la clasificación de Google de su sitio y aumentará las interacciones con sus clientes.

Let’s Encrypt es una CA global gratuita (Autoridad de certificación) que permite a los usuarios obtener y proteger sus sitios mediante un certificado SSL/TLS gratuito. Vamos a instalar Certbot que automatizará la instalación del certificado SSL gratuito de Let’s Encrypt.

                      
                        $ sudo dnf install certbot python3-certbot-nginx
                      
                    

Una vez instalado, ejecute cerbot de la siguiente manera para instalar el Let’s Encrypt certificado SSL

                      
                        $ sudo certbox --nginx
                      
                    

Siga las indicaciones como se indica.

Paso 3: Administrar la renovación del certificado

Let’s Encrypt certificado es válido hasta 90 días. Sin embargo, se le enviará una notificación 20 días antes del vencimiento y más notificaciones a partir de los 10 días hasta el último día.

Puede renovar el certificado manualmente usando el comando:

                      
                        $ sudo certbot renew 
                      
                    

Para automatizar la renovación, cree un nuevo trabajo cron.

                      
                        $ crontab -e
                      
                    

Agregue esta línea y guarde los cambios.

                      
                        0 0 * * * /usr/bin/certbot renew > /dev/null 2>&1
                      
                    

¡Y eso es! Así es como puede configurar un bloque de servidor Nginx y proteger su servidor web usando Let’s Encrypt SSL.

Related Posts