Diferencia entre revisiones de «Como instalar nginx en Ubuntu 16.04»
(Página creada con «Install nginx in Ubuntu 16.04 -- Actualizar sudo apt update sudo apt upgrade -- Instalar nginx sudo apt install nginx sudo ufw app list Verás tres tipos de perfiles…») |
|||
Línea 7: | Línea 7: | ||
-- Instalar nginx | -- Instalar nginx | ||
sudo apt install nginx | sudo apt install nginx | ||
+ | |||
+ | -- Ver que aplicaciones están disponibles para habilitar el firewall de Linux | ||
sudo ufw app list | sudo ufw app list | ||
Línea 18: | Línea 20: | ||
-- Habilitar el firewall para HTTP y HTTPS | -- Habilitar el firewall para HTTP y HTTPS | ||
sudo ufw allow 'Nginx Full' | sudo ufw allow 'Nginx Full' | ||
− | sudo ufw allow ' | + | |
+ | -- Si el servidor es un servidor en la nube seguramente estás accediendo por medio de SSH por lo cual también deberás habilitar este acceso con el comando siguiente. Si por el contrario tienes el teclado y el monitor enfrente tal vez no sea necesario habilitarlo. | ||
+ | sudo ufw allow 'OpenSSH' | ||
+ | |||
+ | - Habilitar el firewall ufw | ||
+ | sudo ufw enable | ||
+ | Verás un mensaje que dice: | ||
+ | Command may disrupt existing ssh connections. Proceed with operation (y|n)? | ||
+ | Asegúrate de que si estás usando SSH el servicio OpenSSH lo hayas habilitado de lo contrario la próxima vez que quieras abrir una terminal no tendrás acceso, si ya estás seguro responde con una "y" y continúa, verás un mensaje que dice: | ||
+ | Firewall is active and enabled on system startup | ||
-- Verificar el estado del firewall | -- Verificar el estado del firewall | ||
sudo ufw status | sudo ufw status | ||
+ | |||
+ | Verás una salida como la siguiente:<br> | ||
+ | <br> | ||
+ | |||
+ | Status: active<br> | ||
+ | <br> | ||
+ | To Action From. <br> | ||
+ | -- ------ ---- <br> | ||
+ | Nginx Full ALLOW Anywhere <br> | ||
+ | OpenSSH ALLOW Anywhere <br> | ||
+ | Nginx Full (v6) ALLOW Anywhere (v6) <br> | ||
+ | OpenSSH (v6) ALLOW Anywhere (v6) <br> | ||
-- Verificar el estado del servicio nginx | -- Verificar el estado del servicio nginx |
Revisión del 18:29 4 ene 2021
Install nginx in Ubuntu 16.04
-- Actualizar
sudo apt update sudo apt upgrade
-- Instalar nginx
sudo apt install nginx
-- Ver que aplicaciones están disponibles para habilitar el firewall de Linux
sudo ufw app list
Verás tres tipos de perfiles disponibles para nginx:
Nginx Full: Este profile able ambos puertos, el 80 que no emplea tráfico cifrado y el 443 que emplea TLS para cifrar el tráfico entre el cliente y el servidor. Nginx HTTP: Este perfil solo abre el Puerto 80 que no emplea tráfico cifrado Nginx HTTPS: Este perfil solo abre el Puerto 443 que emplea tráfico cifrado
Vamos a dejar abiertos ambos puertos para esta instalación, aunque el puerto 443 no funcionará hasta que en una segunda etapa instalemos un certificado.
-- Habilitar el firewall para HTTP y HTTPS
sudo ufw allow 'Nginx Full'
-- Si el servidor es un servidor en la nube seguramente estás accediendo por medio de SSH por lo cual también deberás habilitar este acceso con el comando siguiente. Si por el contrario tienes el teclado y el monitor enfrente tal vez no sea necesario habilitarlo.
sudo ufw allow 'OpenSSH'
- Habilitar el firewall ufw
sudo ufw enable
Verás un mensaje que dice:
Command may disrupt existing ssh connections. Proceed with operation (y|n)?
Asegúrate de que si estás usando SSH el servicio OpenSSH lo hayas habilitado de lo contrario la próxima vez que quieras abrir una terminal no tendrás acceso, si ya estás seguro responde con una "y" y continúa, verás un mensaje que dice:
Firewall is active and enabled on system startup
-- Verificar el estado del firewall
sudo ufw status
Verás una salida como la siguiente:
Status: active
To Action From.
-- ------ ----
Nginx Full ALLOW Anywhere
OpenSSH ALLOW Anywhere
Nginx Full (v6) ALLOW Anywhere (v6)
OpenSSH (v6) ALLOW Anywhere (v6)
-- Verificar el estado del servicio nginx
systemctl status nginx
-- Probar que ya funciona, obtener la IP pública con el comando
curl ifconfig.co
-- Probar conectándose mediante el browser con la IP de la salida anterior
http://10.20.30.40
-- Administrar el servicio
-- Detener el servicio
sudo systemctl stop nginx
-- Iniciar el servicio
sudo systemctl start nginx
-- Reiniciar el servicio
sudo systemctl restart nginx
-- A veces se requieren hacer cambios en la configuración de nginx y no se quieren tirar conexiones, esto es posible con el comando
sudo systemctl reload nginx
-- Por default nginx está configurado para iniciar automáticamente cuando inicia el servidor, en caso de que se requiera deshabilitar ese comportamiento, se puede usar el comando
sudo systemctl disable nginx
-- Si se requiere habilitar para que inicie automáticamente
sudo systemctl enable nginx
Información Importante
/var/www/html: Por default es este el directorio donde se guardan los archivos estáticos del sitio, se puede cambiar la ruta modificando el archivo de configuración.
Configuración del servidor
/etc/nginx: El directorio de configuración de Nginx, todos los archivos de configuración de nginx se encuentran aquí.
/etc/nginx/nginx.conf: El archivo de confiruación principal de nginx. Este archivo se puede modificar para hacer cambios en la configuración global de nginx.
/etc/nginx/sites-available/: nginx soporta hospedar más de un sitio web con un solo servicio y en este directorio se encuentran los archivos disponibles para que nginx los use, pero va a ignorar la configuración que se encuentre aquí, a menos que estén encadenados “linkeados” al directorio sites-enabled (ver abajo). Tipicamente aquí se configuran los sitios llamados “server-blocks” y se hacen un link hacia en el otro directorio explicado a continuación.
/etc/nginx/sites-enabled/: Es el directorio donde se activan los “server-blocks” que están almancenados en el directorio descrito anteriormente y desde sites-enabled se hace un link para que nginx sepa cuales son los que realmente queremos usar. Estos directorios pueden ser un poco confusos en un inicio pero en otra etapa veremos a que nos referimos
Server Logs
/var/log/nginx/access.log: Todas las peticiones al servidor Web se registran en este archivo de bitácora o log a menos que se cambie la configuración en el archivo nginx.conf descrito más arriba.
/var/log/nginx/error.log: Si nginx tiene algún problema para iniciar o en su ejecución, aquí se va a registrar.