Como crear tu servidor proxy
A continuación expongo las instrucciones necesarias para configurar un servidor proxy utilizando Squid en Ubuntu Server y AlmaLinux.
Paso 1: Preparar el servidor
Actualizar el sistema
Ubuntu Server:
sudo apt update
sudo apt upgrade -y
AlmaLinux:
sudo dnf update -y
Paso 2: Instalar Squid
Ubuntu Server
sudo apt install squid -y
AlmaLinux
sudo dnf install squid -y
Paso 3: Configurar Squid
- Abre el archivo de configuración de Squid:
sudo nano /etc/squid/squid.conf
- Configura las directivas básicas de Squid:
Busca y modifica las siguientes directivas para adaptarlas a tus necesidades:
# Puerto en el que escucha Squid (puedes cambiarlo si es necesario)
http_port 3128
# Permitir acceso local (esto permite que cualquier dirección IP pueda acceder al proxy)
acl localnet src 0.0.0.0/0
# Configura la política de acceso
http_access allow localnet
http_access allow localhost
http_access deny all
- Guarda y cierra el archivo.
Paso 4: Configurar las reglas del firewall
Ubuntu Server
- Permitir el puerto de Squid en UFW (Uncomplicated Firewall):
sudo ufw allow 3128/tcp
sudo ufw reload
AlmaLinux
- Permitir el puerto de Squid en firewalld:
sudo firewall-cmd --permanent --add-port=3128/tcp
sudo firewall-cmd --reload
Paso 5: Iniciar y habilitar Squid
Ubuntu Server y AlmaLinux
- Inicia el servicio Squid:
sudo systemctl start squid
- Habilita Squid para que inicie automáticamente al arrancar el sistema:
sudo systemctl enable squid
Paso 6: Verificar la configuración de Squid
- Verifica el estado de Squid para asegurarte de que está funcionando correctamente:
sudo systemctl status squid
Deberías ver una salida indicando que Squid está activo y funcionando.
Paso 7: Probar el proxy
- Configura el navegador o el sistema cliente para usar el servidor proxy. Por ejemplo, en la configuración de red del navegador, especifica la dirección IP del servidor y el puerto (3128).
Paso 8: Configuración avanzada (opcional)
-
Limitar el acceso a ciertas IPs:
Puedes editar el archivo de configuración de Squid para permitir el acceso solo a ciertas IPs. Por ejemplo:
acl allowed_ips src 192.168.1.0/24 http_access allow allowed_ips http_access deny all
-
Habilitar autenticación básica:
Para añadir autenticación, instala el paquete de herramientas adicionales y crea un archivo de contraseñas:
Ubuntu Server:
sudo apt install apache2-utils -y
AlmaLinux:
sudo dnf install httpd-tools -y
Luego, crea un archivo de contraseñas y añade usuarios:
sudo htpasswd -c /etc/squid/passwords user1
Edita el archivo de configuración de Squid para incluir la autenticación:
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwords auth_param basic children 5 auth_param basic realm Squid proxy-caching web server auth_param basic credentialsttl 2 hours acl authenticated proxy_auth REQUIRED http_access allow authenticated
Guarda y cierra el archivo, y luego reinicia Squid para aplicar los cambios:
sudo systemctl restart squid
Paso 9: Monitorear Squid
- Los registros de Squid se encuentran en
/var/log/squid/
. Puedes revisar el archivoaccess.log
para ver las solicitudes que está manejando Squid:
sudo tail -f /var/log/squid/access.log
Ahora has configurado un servidor proxy utilizando Squid en Ubuntu Server y AlmaLinux.