noticias
Serverspace Tecnologías en los Emiratos Árabes Unidos: lanzamiento de Falconcloud
WT
Febrero 27, 2023
Actualizado julio 6, 2023

Implementación de un proxy inverso con Nginx on Ubuntu 22.04 servidor

NGINX Ubuntu

Una de las funciones fundamentales de un proxy inverso es servir como un búfer de protección, protegiendo los servidores backend al interceptar y manejar las solicitudes de clientes Al hacerlo, oculta información valiosa sobre los servidores, como sus direcciones IP y otros detalles confidenciales. Esto agrega una capa adicional de seguridad a su infraestructura, lo que dificulta que los posibles atacantes apunten directamente a sus servidores.

Instalación y Configurando Nginx

Vamos a obtener todo up a datos y instalar su proveedor web servidor.

apt update
apt install nginx

Cambios Nginxpara determinar cómo maneja las solicitudes entrantes y brinda las respuestas adecuadas:

nano /etc/nginx/sites-available/default

Disabling IPv6

Dentro de este archivo, puede configurar Nginx para adaptarse a sus requisitos específicos. Le permite definir bloques de servidor, certificados SSL y otras directivas para optimizar el rendimiento y la seguridad de su configuración de proxy inverso. Pero por qué vinimos aquí es para comentar la línea relacionada con IPv6, guardar los cambios y salir del archivo.

Ejecuta esto:

dpkg --configure -a

El comando garantiza que todos los paquetes en el sistema estén configurados correctamente mediante el proceso de instalación y configuración de cualquier paquete pendiente. Comprueba el estado de todos los paquetes instalados y los configura según sus respectivos scripts de instalación.

Vuelve a comprobar que Nginx está en buen estado de funcionamiento.

service nginx status

Checking the operation of nginx

Ahora debe configurar un firewall para asegurarse de que solo el tráfico necesario pueda llegar a su proxy inverso. Usaremos Sin Complicaciones Firewall (UFW) para este propósito.

Instalar ufw:

apt install ufw

torre it on:

ufw enable

Permitir HTTP tráfico a go a by:

ufw allow 'Nginx HTTP'

cheque las estado y corriente reglas of las firewall:

ufw status

Setting up the firewall

Vamos a crear el archivo de configuración con el nombre de nuestro dominio.

Dentro de este archivo, defina la configuración específica para su proxy: nombre del servidor, puertos de escucha y la ubicación donde se reenviarán las solicitudes entrantes:

server {
listen 80;
#listen [::]:80;
server_name test_domain.ru www.test_domain.ru;
location / {
proxy_pass ip_addres_app;
include proxy_params;
}
}

Configuration file

Reemplaza ip_dirección_applicación   las real IP dirección or dominio nombre  of su proveedor backend servidor.

El proxy se configura mediante /etc/nginx/proxy_paramarchivo s. La configuración predeterminada está bien para este ejemplo, pero puede cambiarla si lo necesita.

Habilite el proxy inverso haciendo un enlace simbólico:

ln -s /etc/nginx/sites-available/test_domain.ru /etc/nginx/sites-enabled/

Un enlace simbólico, también conocido como enlace simbólico o enlace suave, es un tipo especial de archivo que actúa como un puntero o referencia a otro archivo o directorio en el sistema de archivos. Le permite crear un acceso directo a un archivo o directorio, proporcionando una forma conveniente de acceder o hacer referencia a él desde una ubicación diferente.

Ejecute una prueba para asegurarse de que nada esté roto:

nginx -t

Checking that the settings are correct

If no errores en mostrado:

service nginx restart

En el momento, Nginx está configurado con un proxy inverso. El siguiente paso es instalar y configurar el servidor de pruebas de aplicaciones.

Pruebas

Ahora, para probar el proxy inverso que acaba de crear, comencemos un Gunicorn (abreviatura de "Unicornio verde"). Es un servidor diseñado para trabajar con solicitudes web para Python aplicaciones web mientras Nginx no es tan bueno en hacerlo. Entonces, para probar la funcionalidad de su proxy ejecutaremos un simple Python aplicación para validar si toda esta pila está funcionando.

Instalarlo:

apt install gunicorn

Crear las presentar:

nano wsgi.py

poner así texto dentro it:

def wsgi(environ, start_response):
start_response("200 OK", [])
return iter([b"Welcome, to new wsgi server"])

Function for checking

Este wsgi.py presentar contiene a simples solicitud en línea. esa responde   a "200 OKestado mensaje.

El  comando comienza gunicornio   dos obrero  en costes:

gunicorn --workers=2 wsgi:wsgi

Al iniciar Gunicorn, se inicia un proceso maestro para supervisar el funcionamiento general del servidor. El proceso maestro asume la responsabilidad de administrar los procesos de trabajo, adaptarse a los cambios de configuración y monitorear la salud de los trabajadores. La tarea real de manejar las solicitudes se asigna a los procesos de trabajo.

Cada proceso de trabajo opera de forma independiente, con la capacidad de gestionar una o más solicitudes al mismo tiempo. La cantidad de procesos de trabajo se puede adaptar para satisfacer requisitos específicos, teniendo en cuenta factores como los recursos del sistema disponibles, la carga de tráfico anticipada y las características de su aplicación.

Al emplear múltiples procesos de trabajo, Gunicorn optimiza el manejo de solicitudes, lo que permite un procesamiento paralelo y tiempos de respuesta mejorados. Este enfoque garantiza la utilización eficiente de los recursos del sistema y permite que el servidor maneje un mayor volumen de solicitudes simultáneas sin verse abrumado.

Abra un navegador desde el host remoto e ingrese la dirección/dominio de nuestro servidor. Deberíamos recibir un mensaje como este:

The proxy is successfully working

Conclusiones

Con esta guía has aprendido:

  • cómo instalar Nginx y Gunicornio;
  • añadir una Nginx HTTP regla;
  • configurar la parte del servidor para probar la aplicación;
  • crear enlaces simbólicos;
  • inicie el servidor para probar la aplicación.
Votar:
5 de 5
Calificación promedio: 5
Calificado por: 2
1101 CT Ámsterdam Países Bajos, Herikerbergweg 292
+31 20 262-58-98
700 300
ITGLOBAL.COM NL
700 300
Utilizamos cookies para hacer que su experiencia en el Serverspace mejor. Al continuar navegando en nuestro sitio web, usted acepta nuestros
Uso de Cookies y Sitio de Política de privacidad.