Diferencia entre revisiones de «Instalación, configuración e uso de nginx»

De MediaWiki
Ir a la navegación Ir a la búsqueda
Línea 33: Línea 33:
 
= Conexión á máquina por SSH ou VNC =
 
= Conexión á máquina por SSH ou VNC =
 
== SSH ==
 
== SSH ==
Pódese levar a cabo con calquer cliente SSH, coma Putty:
+
Pódese levar a cabo con calquer cliente SSH, coma Putty ou o cliente multiplataforma Termius:
 
 
 
 
Ou cun cliente multiplataforma coma pode ser Termius:
 
  
 +
gallery>
 +
File:Configuracion_ssh_putty.PNG| Conexión SSH con cliente Putty
 +
File:Configuracion_ssh_termius.PNG| Conexión SSH con cliente Termius
 +
</gallery>
  
 
En ambos casos será preciso:
 
En ambos casos será preciso:

Revisión del 17:00 7 ago 2022

Prerequisitos

A práctica pode levarse a cabo a través de máquinas virtuais en entorno local.

No aquí detallado, fíxose a través da contratación dun VPS (Virtual Private Server) en Contabo e do dominio aclasedopeque.com en namecheap.com. O sistema operativo utilizado foi Debian 11.

Hosting

En contabo, no momento de escritura deste artigo, hay opcións moi económicas por 4€ ou 5€ o mes. No noso caso optamos pola opción máis económica (sendo posible obter un prezo todavía mellor se o pagamento se fai anual en lugar de mensual):

Pasadas unhas horas, chegará un correo electrónico cos datos de acceso:

Dominio e configuración DNS

Algúns enlaces de referencia para a configuración DNS:

Conexión á máquina por SSH ou VNC

SSH

Pódese levar a cabo con calquer cliente SSH, coma Putty ou o cliente multiplataforma Termius:

gallery> File:Configuracion_ssh_putty.PNG| Conexión SSH con cliente Putty File:Configuracion_ssh_termius.PNG| Conexión SSH con cliente Termius </gallery>

En ambos casos será preciso:

  1. Introducir IP da máquina
  2. Introducir usuario e contrasinal
  3. Aceptar que se confía na conexión

Pódese consultar o titorial do proveedor para máis información.

INTERESANTE. Tamén e boa a recomendación que se da respecto o uso de chaves SSH no canto de constrasinais.
From a security standpoint, we recommend all customers to use SSH Keys instead of traditional passwords while connecting via SSH. SSH Keys are like a “keycard” to access your server without a password. Read our in-depth SSH Keys tutorial to learn how to generate the keys, upload them on your server and set up all necessary parameters.

VNC

Pódese consultar o titorial do proveedor para máis información.

Coma se indica alí, e preferible a conexión por SSH por cuestións de seguridade.

While VNC technology is very convenient and easy to use, it’s not ideal from a security standpoint.
Please keep in mind that VNC access is not as safe as a connection via SSH or Windows Remote Desktop. Under normal circumstances, you should always connect to your server using methods that are more secure.
We recommend using VNC only in case your server is not accessible via SSH or Remote Desktop.

Instalación

Para levar a cabo a instalación actualizamos o repositorio e instalamos o paquete nginx:

apt update
apt install nginx -y

Comprobamos que queda levantado:

systemctl status nginx

Comprender o funcionamento

Podemos instalar o comando tree que amosa os ficheiros xerárquicamente estruturados por cartafois:

apt install tree

Accedemos a carpeta onde queda instalado nginx:

cd /etc/nginx

Podemos executar tree para ver a estrutura de carpetas e ficheiros do programa:

tree .


conf.d configuraciones propias de nuestro servidor modules-enabled modulos que queramos activar proxy_params parámetros del proxy nginx.com No tocar. Configuración global. cd sites-available/ cat default cd ../sites_enabled contiene enlaces simbolicos (un acceso directo que apunta al fichero real) nano default encriptacion punto a punto con nginx nano ngingx.conf


Configuración do firewall

Para instalar ufw:

apt install ufw

Para comprobar o seu estado:

ufw status

Para levantalo:

ufw enable

Para fixar reglas que permitan tráfico http e https:

ufw allow 22
ufw allow 80
ufw allow 443
ufw allow ssh
ufw allow http
ufw allow https

Para comprobar estado e reccargar coas regras:

ufw status
ufw reload

Comprobación de logs

nano nginx.conf

Podemos observar onde se ubican as rutas de access_log e error_log, e consultar os mesmos:

cd /var/log/nginx/
pico access.log
pico error.log

Configuración dun server block

Un server block en nginx e o equivalente os denominados virtual host en Apache.

Vemos la web por defecto:

cd /var/www/html
pico index.nginx-debian.html

Cualquier cambio que hagamos y guardemos en este fichero se verá reflejado cuando accedamos a través del navegador.

Accedemos a sites-available:

cd /etc/nginx/sites-avaible

Podemos ver a configuración da web por defecto:

pico default

MOI IMPORTANTE. Unha vez feitos cambios e preciso recargalos co comando:

systemctl restart nginx

Engadir un server block

cd /etc/nginx/sites-avaible
pico aclasedopeque.com                                                        
server {
 server_name aclasedopeque.com www.aclasedopeque.com;

 root /var/www/aclasedopeque.com/htdocs;
}
cd /etc/nginx/sites-avaible
ln -s /etc/nginx/sites-available/aclasedopeque.com /etc/nginx/sites-enabled/aclasedopeque.com
systemctl restart nginx

Si accedemos a través del navegador, por ahora error 404 porque no existe la ruta /var/www/aclasedeopeque.com/htdocs.

 cd /var/www/
 mkdir aclasedopeque.com
 cd aclasedopeque.com
 mkdir htdocs
 cd htdocs
 pico index.html
 <h1>Esto es una prueba! </h1>

Accedemos co navegador a aclasedopeque.com ou www.aclasedopeque.com e amosa o texto:

Troubleshooting

Ferramentas de rede

ping, traceroute,nslookup, host, dig

systemctl

Podes comprobar o estado do servizo con:

systemctl status nginx

E sempre e preciso reinicialo tras facer cambios con:

systemctl restart nginx

nginx -t

Para axuda na procura de erros de sintaxe nos ficheiros de configuración existe este comando:

nginx -t

revisar ficheiros de configuración

Acceder a ruta:

cd /etc/nginx/conf.d

Aquí poderíanse engadir novos ficheiros de configuración.

erros frecuentes

  • duplicate default server error. Ver este fío

Ampliación

Referencias