Cómo configurar y ejecutar Nginx en Ubuntu

Articulos tematica Microsoft

Nginx es uno de los servidores web más utilizados del planeta. Se ha convertido en la columna vertebral de probablemente los mejores sitios del planeta, incluidos Netflix, WordPress.org, y eso es solo la punta del iceberg

Nginx ha demostrado ser uno de los servidores web más rápidos y ligeros. Esta exposición se debe, en cierta medida, a su forma poco convencional de tratar las solicitudes. Esto contrasta con el comportamiento de Apache más experimentado, que usaba cadenas para hacer frente a las demandas.

Además de funcionar como un servidor web, también puede funcionar como un proxy opuesto, equilibrador de carga, corredor de correo o incluso como tienda HTTP. Sea como fuere, podríamos estar abordando el uso de Nginx como servidor web.

Requisitos del sistema

Para este tutorial, usaremos lo siguiente:

  • Un servidor ServerMania dedicado o híbrido
  • Sistema operativo Ubuntu 20.04
  • 512 MB de RAM
  • 2GB de espacio en disco

Estos requisitos cambian según el flujo de tráfico esperado a su sitio web. Para actualizar, consulte la gama de ofertas de ServerMania. Para alojar Ubuntu 20.04 en un servidor ServerMania, consulte Alojamiento de Ubuntu en ServerMania.

Configurar Ubuntu 20.04

Inicie sesión con su contraseña de root que había establecido al activar la instancia de Ubuntu con el siguiente comando:

root @ localhost: ~ # ssh root @ servermania_server_ip

Alternativamente, puede utilizar claves SSH para realizar un inicio de sesión sin contraseña. Como práctica recomendada, no utilice el usuario root para tareas administrativas.

En su lugar, cree un nuevo usuario y otorgue los privilegios de administrador relevantes a ese usuario. Utilice una contraseña segura para el nuevo usuario.

root @ localhost: ~ # adduser smuser

Para otorgar privilegios de usuario, debe agregar este usuario al grupo sudo. Utilice el siguiente comando:

root @ localhost: ~ # usermod -aG sudo smuser

Inicie sesión con el nuevo usuario usando el siguiente comando:

ssh smuser @ servermania_server_ip

Instalar Nginx (Ubuntu 20.04)

Cada sistema operativo generalmente viene con un administrador de paquetes. Con Ubuntu 20.04, puede usar apt o apt-get. Dado que se trata de un servidor nuevo, primero debe actualizar el administrador de paquetes.

Actualice el administrador de paquetes a la última versión compatible:

Puede usar el administrador de paquetes apt o apt-get para instalar Nginx.

sudo apt updateudo apt-get update

Ahora, está listo para instalar Ngnix. Dado que ha iniciado sesión como un usuario no root con privilegios de sudo, deberá anteponer sudo a cada comando que requiera privilegios de administrador.

Instale el servidor web Ngnix usando apt:

sudo apt install nginx sudo apt-get install nginx

Aunque el servicio se inicia automáticamente después de instalar Nginx, antes de que pueda probar si Nginx funciona correctamente o no, deberá configurar el firewall del sistema operativo para acceder a Nginx.

Configurar el firewall para Nginx

La herramienta más común utilizada para definir reglas de entrada y salida en iptables. Ubuntu 20.04 tiene un contenedor fácil de usar encima de iptables, que se llama firewall simple o ufw.

Aunque viene instalado con Ubuntu 20.04, pero para asegurarse de que esté instalado correctamente, instálelo manualmente. Siga los pasos que se mencionan a continuación para configurar el firewall después de instalar Nginx:

Instalar ufw:

sudo apt install ufw

Compruebe si ufw funciona bien:

estado de sudo ufw

Permita el tráfico a través de HTTP y vuelva a verificar el estado:

sudo ufw permite 'Nginx HTTP'

Permita el tráfico a través de TCP (OpenSSH) también si desea iniciar sesión en la máquina nuevamente:

sudo ufw permite 'OpenSSH'

Si el estado estaba inactivo cuando lo verificó anteriormente, habilítelo:

sudo ufw habilitar

Se le pedirá que decida si desea aplicar los cambios o no.

Tenga en cuenta que si deshabilita el tráfico TCP o agrega una regla de denegación de OpenSSH en el firewall, no podrá volver a iniciar sesión en la máquina.

Veamos ahora algunos comandos importantes de Nginx para la administración y gestión.

Instalación y administración de Nginx

Verifique el estado del servidor Nginx:

sudo systemctl estado nginx

También puede verificar si Nginx está funcionando accediendo a su sitio web usando el navegador. Visite el siguiente enlace:

http: // servermania_server_ip

Utilice systemctl para iniciar, detener o reiniciar su servidor Nginx:

sudo systemctl detener nginx sudo systemctl iniciar nginx sudo systemctl reiniciar nginx

El archivo de configuración de Nginx se encuentra en /etc/nginx/nginx.conf. Si realiza cambios en la configuración, puede reiniciar el servidor Nginx o volver a cargar el archivo de configuración.

systemctl reload nginx # recarga la configuración de Nginx

Siempre que sea posible, use el comando de recarga en lugar del comando de reinicio, ya que no afecta sus conexiones existentes a Nginx.

Configurar bloques de servidor

Los bloques de servidor proporcionan una funcionalidad similar a los hosts virtuales de Apache Web Server. Apache Web Server es un servidor muy popular que se usa con mayor frecuencia en LAMP Stack. Para instalar la pila LAMP en servidores ServerMania, consulte Cómo configurar rápidamente su propio servidor.

Los bloques de servidor Nginx le permiten utilizar más de un dominio con su servidor Nginx. Si desea configurar dos dominios, domainone.com y domaintwo.com en el mismo servidor Nginx, debe seguir los pasos a continuación:

Cree un directorio, uno para cada dominio: de forma predeterminada, Nginx crea solo un bloque de servidor que apunta al directorio / var / www / html. Esto funcionaría perfectamente si solo tuviera un sitio.

El subdirectorio html contiene todo el contenido alojado en el sitio web. Cree los subdirectorios html para ambos dominios.

sudo mkdir -p /var/www/domainone.com/htmlsudo mkdir -p /var/www/domaintwo.com/html

Cambiar la propiedad de los directorios: Hacer esto permitirá al usuario crear y editar el contenido de estos nuevos directorios.

sudo chown -R $ usuario: $ usuario /var/www/domainone.com/htmlsudo chown -R $ usuario: $ usuario /var/www/domaintwo.com/html

Modifique los permisos para ambos directorios de dominio: este paso es importante para asegurarse de que no necesita privilegios de root para realizar cambios en ninguno de los sitios.

sudo chmod -R 755 / var / www

Cree una página de destino index.html para ambos dominios. Cree un fragmento de HTML básico para una página de bienvenida para ambos sitios.

nano /var/www/domainone.com/html/index.html

Una vez que el editor esté abierto, pegue lo siguiente en el editor:

Ha llegado a Nginx a través del bloque de servidor n. 1

Guarde el archivo index.html y cree uno similar para el segundo dominio. Asegúrese de cambiar el mensaje de bienvenida.

Crear bloques de servidor: como se mencionó anteriormente, de forma predeterminada, Nginx solo tiene un bloque de servidor. Puede encontrarlo aquí: / etc / nginx / sites-available / default. Ahora, como tenemos dos sitios para servir, necesitaremos dos bloques de servidor. Los bloques de servidor permiten el tráfico en el puerto 80. Copiemos el bloque de servidor predeterminado para nuestros nuevos bloques de servidor.

sudo cp / etc / nginx / sites-available / default /etc/nginx/sites-available/domainone.com

Del mismo modo, copie el archivo predeterminado y cree también el segundo bloque de servidor.

Marque uno de los dos servidores como predeterminado:

Solo puede tener un único servidor predeterminado con la opción default_server habilitada. Quítelo de uno de los bloques del servidor.

Habilite los bloques del servidor y reinicie Nginx:

Puede habilitar los bloques del servidor creando enlaces simbólicos desde los archivos de configuración del bloque del servidor al directorio habilitado para el sitio.

sudo ln -s /etc/nginx/sites-available/domainone.com / etc / nginx / sites-enabled /

Una vez que cree enlaces simbólicos para ambos dominios y reinicie Nginx, comenzará a atender solicitudes de ambos dominios desde sus respectivos bloques recibidos en el puerto 80.

Para probar los cambios, puede intentar visitar ambos dominios y ver si el contenido de index.html se representa correctamente. ¡Ahora está listo para instalar Nginx en Ubuntu 20.04!

Sin usted, esta web no existiria. Gracias por visitarme, espero que le haya gustado y vuelva. Gracias ☺️

Fecha actualización el 2021-12-12. Fecha publicación el 2021-12-12. Categoria: ubuntu Autor: Oscar olg Mapa del sitio Fuente: bollyinside