🌐 ¿Qué es un servidor proxy para red local?
Un proxy de servidor para red local es un servidor intermedio que se ubica dentro de su red corporativa o doméstica y proporciona acceso a Internet a todos los dispositivos de la red a través de un único punto de control.
Cómo funciona:
- El usuario (ordenador, smartphone, tableta) en la red local envía una solicitud
- El servidor proxy (192.168.1.100:3128) recibe la solicitud y comprueba las reglas de acceso
- El proxy envía la solicitud a Internet en su nombre
- El servidor en Internet responde al servidor proxy
- El proxy transmite la respuesta de vuelta al usuario
💡 Analogía sencilla
Imagine una oficina con un único secretario. Todos los empleados pasan sus solicitudes a través del secretario en lugar de llamar directamente. El secretario controla a quién se le permite llamar, registra todas las llamadas en un diario y puede bloquear números no deseados. Un servidor proxy es ese "secretario" para toda su red local.
❓ ¿Por qué es necesario un servidor proxy local?
Control de acceso
Gestión centralizada del acceso a recursos de Internet. Bloqueo de redes sociales en horario laboral, prohibición de torrents, filtrado por categorías de sitios web.
Monitoreo de tráfico
Estadísticas detalladas: quién, cuándo, qué sitios visitó, cuánto tráfico consumió. Informes por usuario y departamento. Detección de fugas de datos.
Caché
Almacenamiento de archivos solicitados frecuentemente en el servidor proxy. Ahorro de hasta el 40% del ancho de banda, aceleración de las descargas de actualizaciones de Windows y bases antivirus.
Seguridad
Protección contra sitios maliciosos, phishing y virus. Escaneo de archivos descargados. Bloqueo de publicidad y rastreadores a nivel de red.
Ahorro
Reducción de costes de Internet gracias al almacenamiento en caché y al control. Un único canal en lugar de varios. Control de límites para los usuarios.
Evitar bloqueos
Acceso a recursos bloqueados a través de proxies externos. Configuración de una cadena de proxies para eludir restricciones geográficas.
🎯 Casos de uso de un proxy local
🏢 Red corporativa (50-500 empleados)
- Control de productividad: Bloqueo de redes sociales, YouTube, sitios de juegos en horario laboral
- Seguridad: Filtrado de sitios maliciosos, verificación de archivos descargados
- Informes: Registros detallados para el departamento de seguridad y TI
- Ahorro: Caché de actualizaciones de Windows, Office, antivirus
Ejemplo: La empresa "Alfa" con 200 empleados instaló un proxy Squid y redujo el consumo de ancho de banda en un 35% gracias al caché. Ahorro: $450/mes.
🏫 Instituciones educativas
- Protección infantil: Bloqueo de contenido 18+, violencia, juegos de azar
- Control de acceso: Reglas diferentes para profesores y alumnos
- Horarios: Acceso a YouTube solo durante las clases de informática
- Informes para la administración: Monitoreo de la actividad de los estudiantes
🏠 Red doméstica
- Control parental: Restricción de acceso de los niños a ciertos sitios web
- Bloqueo de publicidad: Eliminación de anuncios en todos los dispositivos de la red
- Seguridad IoT: Control del tráfico de dispositivos inteligentes (cámaras, TV, altavoces)
- Ahorro de tráfico: Relevante para Internet móvil con límites
🧪 Pruebas y desarrollo
- Intercepción de tráfico: Análisis de solicitudes API de aplicaciones móviles
- Sustitución de respuestas: Pruebas de aplicaciones con datos modificados del servidor
- Simulación de Internet lento: Throttling para pruebas en 3G
- Inspección SSL: Análisis de tráfico HTTPS para depuración
🔧 Tipos de servidores proxy locales
📡 Proxy HTTP/HTTPS
Propósito: Proxy de tráfico web (navegadores, aplicaciones)
Ejemplos: Squid, Apache Traffic Server, nginx
Características:
✅ Caché de contenido
✅ Filtrado por URL
✅ Modificación de cabeceras
🔌 Proxy SOCKS
Propósito: Proxy universal para cualquier tráfico TCP/UDP
Ejemplos: Dante, Shadowsocks, 3proxy
Características:
✅ Funciona con cualquier protocolo
✅ Soporte para UDP (SOCKS5)
✅ Latencia mínima
🪟 Proxy Transparente
Propósito: Proxy invisible sin necesidad de configuración en los clientes
Ejemplos: Squid en modo transparente + iptables
Características:
✅ No requiere configuración del cliente
✅ Intercepción a nivel de router
⚠️ Más complejo con HTTPS
🔗 Proxy Inverso (Reverse Proxy)
Propósito: Balanceo de carga y protección de servidores web
Ejemplos: nginx, HAProxy, Apache mod_proxy
Características:
✅ Distribución de carga
✅ Terminación SSL
✅ Protección contra DDoS
🏗️ Arquitectura de red local con servidor proxy
Esquema típico de red corporativa
┌─────────────────────────────────────────────────┐
│ 🌐 INTERNET │
└────────────────┬────────────────────────────────┘
│
┌───────▼────────┐
│ 🛡️ Cortafuegos │ (Protección perimetral)
│ 192.168.0.1 │
└───────┬────────┘
│
┌───────▼────────┐
│ 🔄 Router │ (Enrutamiento)
│ 192.168.1.1 │
└───────┬────────┘
│
┌────────────┼────────────┐
│ │ │
┌───▼────┐ ┌───▼────┐ ┌───▼────┐
│ 💻 PC1 │ │ 💻 PC2 │ │ 📱 Teléfono│
│.10 │ │.11 │ │.12 │
└────────┘ └────────┘ └─────────┘
│ │ │
└────────────┼────────────┘
│ (Todas las solicitudes pasan por el proxy)
┌───────▼────────┐
│ 🔧 PROXY │ (Squid/CCProxy)
│ 192.168.1.100 │ Puerto: 3128
│ + Caché (500GB)│
│ + Logs │
│ + Filtros │
└────────────────┘
Cómo funciona el esquema:
- El usuario (PC1) configura el proxy en el navegador:
192.168.1.100:3128 - La solicitud va al servidor proxy, no directamente a Internet
- El proxy comprueba las reglas de acceso (si el sitio está permitido)
- El proxy solicita el contenido en nombre del usuario
- El proxy almacena en caché la respuesta y se la entrega al usuario
- En una solicitud posterior, el proxy entrega los datos desde la caché (instantáneamente)
⚠️ Puntos importantes de la arquitectura
- Tolerancia a fallos: Si el proxy falla, toda la red pierde acceso a Internet (Solución: proxy de respaldo)
- Rendimiento: El proxy debe manejar todo el tráfico de la red (mínimo 4 núcleos de CPU, 8GB de RAM para 100 usuarios)
- Almacenamiento: Se necesita un disco SSD rápido para la caché (se recomiendan 500GB+ para 100-200 usuarios)
- Ancho de banda: La tarjeta de red del proxy debe ser al menos tan rápida como el canal de Internet (Gigabit Ethernet como mínimo)
⚖️ Ventajas y desventajas de un proxy local
✅ VENTAJAS
🎯 Control centralizado
Un único punto de gestión para toda la red. Los cambios se aplican instantáneamente a todos los usuarios sin necesidad de configurar cada dispositivo.
📊 Analítica detallada
Todas las solicitudes se registran. Usted ve: quién, cuándo, qué sitio visitó, cuánto tráfico consumió. Ideal para auditoría y optimización.
💰 Ahorro de ancho de banda
El almacenamiento en caché puede reducir el consumo de Internet entre un 30% y un 40%. Especialmente efectivo para actualizaciones de SO, antivirus y sitios populares.
🛡️ Seguridad de la red
Bloqueo de sitios maliciosos, phishing y virus a nivel de proxy. Una capa adicional de protección además del antivirus en los ordenadores.
🔒 Ocultación de la estructura interna
Todas las solicitudes provienen de la IP del servidor proxy. El mundo exterior no ve las IPs reales de las estaciones de trabajo.
❌ DESVENTAJAS
⚠️ Punto único de fallo
Si el servidor proxy deja de funcionar, toda la red pierde acceso a Internet. Solución: servidor de respaldo o bypass automático.
🐌 Posible reducción de velocidad
Si el rendimiento del servidor es insuficiente, pueden producirse retrasos. Es necesario seleccionar correctamente el hardware para el número de usuarios.
🔧 Complejidad de configuración
Requiere un administrador de sistemas cualificado. Configurar Squid, reglas de filtrado, inspección SSL no es para principiantes.
💾 Requisitos de recursos
Se necesita un servidor dedicado con buen hardware y un disco grande para la caché. Para 200 usuarios: 8-16GB de RAM, 500GB+ SSD.
👁️ Problemas con HTTPS
Para la inspección HTTPS, es necesaria la instalación de un certificado raíz en todos los dispositivos. Algunas aplicaciones pueden no funcionar.
💡 Conclusión
Un servidor proxy local es un imprescindible para redes corporativas de más de 20 usuarios. Las ventajas de control, seguridad y ahorro superan significativamente las complejidades de configuración y mantenimiento. Para una red doméstica, es aconsejable si se tienen habilidades técnicas y tareas específicas (control parental, bloqueo de anuncios).
¿Necesita proxies listos para su negocio?
En lugar de configurar su propio servidor, ¡utilice las soluciones listas de ProxyCove!
¡Regístrese con el código promocional ARTHELLO y obtenga un bono de $1.3!
Elija el tipo de proxy:
📖 Continúe leyendo en la Parte 2: Instalación y configuración paso a paso de Squid para Ubuntu/Debian/CentOS. Autenticación, filtrado de sitios, caché, configuración de clientes.
Instalación del servidor proxy Squid
Parte 2: Configuración paso a paso de Squid para Ubuntu/Debian/CentOS. Autenticación de usuarios, filtrado de sitios, caché, configuración de clientes.
Continuación de la serie | Tiempo de lectura: 15 minutos
📦 Instalación del servidor proxy Squid
🐧 Instalación en Ubuntu/Debian
# Actualizamos el sistema
sudo apt update && sudo apt upgrade -y
# Instalamos Squid
sudo apt install squid -y
# Verificamos la versión
squid -v
# Squid Cache: Version 5.2
# Verificamos el estado del servicio
sudo systemctl status squid
# Habilitamos el inicio automático
sudo systemctl enable squid
🎩 Instalación en CentOS/RHEL/Rocky Linux
# Instalamos Squid
sudo dnf install squid -y
# O para versiones antiguas de CentOS
sudo yum install squid -y
# Iniciamos el servicio
sudo systemctl start squid
# Habilitamos el inicio automático
sudo systemctl enable squid
# Abrimos el puerto en el firewall
sudo firewall-cmd --permanent --add-port=3128/tcp
sudo firewall-cmd --reload
📂 Archivos y directorios importantes
| Archivo/Directorio | Propósito |
/etc/squid/squid.conf |
Archivo de configuración principal |
/var/log/squid/access.log |
Registros de acceso (todas las solicitudes) |
/var/log/squid/cache.log |
Registros de funcionamiento del servicio |
/var/spool/squid/ |
Directorio de caché |
/etc/squid/blocked_sites.txt |
Lista de sitios bloqueados (lo creamos manualmente) |
⚙️ Configuración básica de Squid
⚠️ Importante antes de empezar
Antes de editar el archivo de configuración, haga siempre una copia de seguridad:
sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.backup
Configuración mínima funcional
# /etc/squid/squid.conf
# Puerto del servidor proxy
http_port 3128
# Definimos la red local
acl localnet src 192.168.1.0/24
# Permitimos el acceso desde la red local
http_access allow localnet
# Denegamos todo lo demás
http_access deny all
# Tamaño de la caché en memoria (256 MB)
cache_mem 256 MB
# Directorio y tamaño de la caché en disco (10 GB)
cache_dir ufs /var/spool/squid 10000 16 256
# Tamaño máximo de archivo en caché
maximum_object_size 100 MB
# Nombre del host para los logs
visible_hostname proxy.company.local
# Formato de logs (extendido)
logformat combined %>a %[ui %[un [%tl] "%rm %ru HTTP/%rv" %>Hs %h" "%{User-Agent}>h"
access_log /var/log/squid/access.log combined
# Email del administrador (se muestra en errores)
cache_mgr admin@company.local
Aplicación de la configuración
# Verificamos la configuración en busca de errores
sudo squid -k parse
# Si no hay errores, reiniciamos Squid
sudo systemctl restart squid
# Verificamos el estado
sudo systemctl status squid
# Vemos los logs en tiempo real
sudo tail -f /var/log/squid/access.log
🔐 Autenticación de usuarios
La autenticación permite controlar el acceso por nombre de usuario/contraseña y llevar estadísticas por usuario.
Creación del archivo de usuarios
# Instalamos la utilidad htpasswd
sudo apt install apache2-utils -y
# Creamos el archivo de contraseñas
sudo touch /etc/squid/passwords
# Añadimos el usuario ivan (se solicitará la contraseña)
sudo htpasswd /etc/squid/passwords ivan
# Añadimos más usuarios
sudo htpasswd /etc/squid/passwords maria
sudo htpasswd /etc/squid/passwords admin
# Establecemos los permisos correctos
sudo chown proxy:proxy /etc/squid/passwords
sudo chmod 640 /etc/squid/passwords
# Verificamos el contenido
sudo cat /etc/squid/passwords
# ivan:$apr1$xyz...
# maria:$apr1$abc...
# admin:$apr1$def...
Configuración de squid.conf para autenticación
# Añadir a /etc/squid/squid.conf
# Configuración de autenticación Basic
auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwords
auth_param basic realm Proxy Server Authentication
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive on
# Creamos un ACL para usuarios autenticados
acl authenticated proxy_auth REQUIRED
# Permitimos el acceso solo a los autenticados
http_access allow authenticated
# Mostramos el nombre de usuario en los logs
logformat authenticated %{%Y-%m-%d %H:%M:%S}tl %>a %un "%rm %ru" %>Hs %
Aplicamos los cambios:
sudo squid -k parse && sudo systemctl restart squid
✅ Verificación de autenticación
Ahora, al intentar usar el proxy, el navegador solicitará el nombre de usuario y la contraseña. Formato para la configuración:
🚫 Filtrado de sitios web y contenido
🔒 Bloqueo de sitios por dominios
Paso 1: Creamos un archivo con la lista de dominios a bloquear
# Creamos el archivo
sudo nano /etc/squid/blocked_sites.txt
# Añadimos dominios (uno por línea)
.facebook.com
.vk.com
.instagram.com
.tiktok.com
.youtube.com
.reddit.com
casino
betting
porn
xxx
# El punto al principio significa que se bloquean todos los subdominios
# facebook.com, www.facebook.com, m.facebook.com — todos bloqueados
Paso 2: Añadimos las reglas a squid.conf
# Definimos un ACL con los sitios bloqueados
acl blocked_sites dstdomain "/etc/squid/blocked_sites.txt"
# Denegamos el acceso a estos sitios
http_access deny blocked_sites
# Mostramos una página de error bonita
deny_info ERR_BLOCKED_SITE blocked_sites
⏰ Bloqueo por horario
Bloqueo de redes sociales solo en horario laboral (9:00-18:00, lun-vie):
# Definimos el horario laboral
acl work_hours time MTWHF 09:00-18:00
# Lista de redes sociales
acl social_networks dstdomain .facebook.com .vk.com .instagram.com
# Bloqueamos las redes sociales solo en horario laboral
http_access deny social_networks work_hours
# Fuera del horario laboral, las permitimos
http_access allow social_networks
📊 Bloqueo por tipos de archivo
# Bloqueamos torrents, videos, archivos exe
acl blocked_files urlpath_regex -i \.torrent$ \.exe$ \.msi$ \.mp4$ \.mkv$ \.avi$
http_access deny blocked_files
# Bloqueo por MIME-type
acl video_content rep_mime_type video/mpeg video/x-msvideo video/mp4
http_reply_access deny video_content
💾 Configuración de caché
Una configuración adecuada de la caché puede reducir el consumo de ancho de banda hasta en un 30-40%.
Configuración óptima de caché
# Caché en memoria RAM (512 MB)
cache_mem 512 MB
# Caché en disco: 50GB, 32 directorios de primer nivel, 256 de segundo
cache_dir ufs /var/spool/squid 50000 32 256
# Tamaño mínimo y máximo de objeto en caché
minimum_object_size 0 KB
maximum_object_size 500 MB
# Tamaño máximo de objeto en memoria
maximum_object_size_in_memory 512 KB
# Tiempo de vida de la caché
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320
# Caché de actualizaciones de Windows (¡ahorro de hasta el 40% del tráfico!)
refresh_pattern windowsupdate.com/.*\.(cab|exe) 4320 100% 43200 reload-into-ims
refresh_pattern download.microsoft.com/.*\.(cab|exe) 4320 100% 43200 reload-into-ims
# Caché de archivos populares por más tiempo
refresh_pattern -i \.(jpg|jpeg|png|gif|bmp|webp)$ 1440 90% 10080
refresh_pattern -i \.(pdf|doc|docx|xls|xlsx)$ 1440 80% 10080
refresh_pattern -i \.(js|css)$ 720 50% 4320
Inicializar la caché después de la configuración:
sudo squid -z
sudo systemctl restart squid
📊 Estadísticas de caché
# Ver estadísticas de caché
squidclient -p 3128 mgr:info | grep "Hit Ratio"
# Limpiar toda la caché
sudo systemctl stop squid
sudo rm -rf /var/spool/squid/*
sudo squid -z
sudo systemctl start squid
💻 Configuración de clientes para trabajar con el proxy
🪟 Windows
- Abrir Configuración → Red e Internet → Servidor proxy
- Activar "Usar servidor proxy"
- Dirección:
192.168.1.100 - Puerto:
3128 - Hacer clic en "Guardar"
🍎 macOS
- Abrir Preferencias del Sistema → Red
- Seleccionar la conexión activa (Wi-Fi/Ethernet)
- Hacer clic en "Avanzado" → pestaña "Proxies"
- Marcar "Proxy web (HTTP)"
- Servidor:
192.168.1.100:3128 - Hacer clic en "Aceptar" → "Aplicar"
🌐 Google Chrome / Edge
Chrome utiliza la configuración del proxy del sistema, pero se puede iniciar con un parámetro:
# Windows
"C:\Program Files\Google\Chrome\Application\chrome.exe" --proxy-server="192.168.1.100:3128"
# Linux
google-chrome --proxy-server="192.168.1.100:3128"
# Con autenticación
--proxy-server="http://usuario:contraseña@192.168.1.100:3128"
🦊 Firefox
- Abrir Configuración → General → Configuración de red
- Seleccionar "Configuración manual del proxy"
- Proxy HTTP:
192.168.1.100puerto3128 - ✅ Marcar "Usar este proxy para todos los protocolos"
- Hacer clic en "Aceptar"
🐧 Linux (proxy del sistema)
# Añadir a ~/.bashrc o /etc/environment
export http_proxy="http://192.168.1.100:3128"
export https_proxy="http://192.168.1.100:3128"
export ftp_proxy="http://192.168.1.100:3128"
# Con autenticación
export http_proxy="http://usuario:contraseña@192.168.1.100:3128"
# Aplicar cambios
source ~/.bashrc
# Verificar
curl -I http://google.com
¿No quiere complicarse con la configuración?
Olvídese de Squid, configuraciones y administración: ¡utilice ProxyCove!
Proxies listos con panel de control. Registro con código promocional ARTHELLO = bono de +$1.3
📖 Continuación en la Parte 3: CCProxy y 3proxy para Windows, inspección SSL, monitoreo y solución de problemas.
Proxy para Windows y monitoreo
Parte 3: CCProxy y 3proxy para Windows Server. Inspección SSL, monitoreo de tráfico, resolución de problemas.
Parte final | Tiempo de lectura: 12 minutos
🪟 CCProxy para Windows Server
CCProxy es una popular solución comercial para Windows con interfaz gráfica. Ideal para administradores que no desean lidiar con la línea de comandos.
📥 Instalación de CCProxy
- Descargar desde el sitio oficial:
www.youngzsoft.net - Ejecutar el instalador
ccproxysetup.exe - Seleccionar el directorio de instalación (por defecto
C:\Program Files\CCProxy) - Tras la instalación, ejecutar CCProxy como administrador
- En el primer inicio, seleccionar la tarjeta de red para el proxy
💰 Costo de las licencias (2025):
- Gratis: hasta 3 usuarios (para pruebas)
- Standard: $199 (hasta 100 usuarios)
- Enterprise: $399 (hasta 500 usuarios)
- Unlimited: $799 (sin límites)
⚙️ Configuración básica de CCProxy
1. Configuración de puertos
- Menú Options → Advanced → Network
- Puerto HTTP:
808(o el estándar 3128) - Puerto SOCKS:
1080 - ✅ Habilitar los protocolos necesarios (HTTP, HTTPS, SOCKS, FTP, SMTP)
2. Añadir usuarios
- Menú Account → New
- Indicar login:
ivan - Contraseña:
SecurePass123 - IP permitida (opcional):
192.168.1.50 - Límite de velocidad:
10 Mbps - Cuota de tráfico:
50 GB/mes
3. Filtrado de sitios web
- Menú Options → Filter → Web Filter
- Pestaña Banned Websites
- Añadir dominios uno por uno o importar una lista
- Ejemplos:
*.facebook.com,*.gambling.* - ✅ Habilitar Filtro Web
4. Caché
- Menú Options → Advanced → Cache
- ✅ Habilitar Caché
- Directorio de Caché:
D:\CCProxyCache - Tamaño Máx. Caché:
50 GB - Tiempo de Caché:
7 días
✅ Ventajas de CCProxy
- ✅ Interfaz gráfica — configuración en 5 minutos
- ✅ Estadísticas integradas en tiempo real
- ✅ Gestión de usuarios con cuotas y límites
- ✅ Filtrado de sitios web por categorías
- ✅ Soporte para HTTP, HTTPS, SOCKS4/5, FTP, SMTP
- ❌ Licencia de pago (desde $199)
- ❌ Solo para Windows
🔧 3proxy — Alternativa gratuita
3proxy es un potente servidor proxy gratuito y de código abierto. Funciona en Windows y Linux.
📥 Instalación de 3proxy en Windows
- Descargar:
github.com/3proxy/3proxy/releases - Descomprimir en
C:\3proxy - Crear el archivo de configuración
3proxy.cfg - Instalar como servicio de Windows
Ejemplo de configuración 3proxy.cfg:
# Modo demonio
daemon
# Archivos de log
log C:\3proxy\logs\3proxy.log D
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
# Usuarios (nombre_usuario:CL:contraseña)
users ivan:CL:SecurePass123
users maria:CL:Pass456
# Permitir red local
allow * 192.168.1.0/24
# Proxy HTTP en puerto 3128
auth strong
proxy -p3128 -a
# Proxy SOCKS5 en puerto 1080
socks -p1080 -a
Instalación como servicio de Windows:
cd C:\3proxy
3proxy.exe --install
net start 3proxy
🔐 Configuraciones de seguridad adicionales
# Límite de velocidad (1 MB/s por usuario)
bandlimin 1024000
# Tiempos de espera de conexión
timeouts 10 30 30 60 180 1800 15 60
# Máximo de conexiones por IP
maxconn 50
# Bloqueo de dominios
deny * * *.facebook.com *
deny * * *.gambling.* *
# Permitir solo puertos específicos
allow * * * 80,443,21,22
🔒 Inspección SSL del tráfico HTTPS
⚠️ ¿Qué es la inspección SSL?
Por defecto, el proxy solo ve el dominio de la solicitud HTTPS, pero no su contenido. La inspección SSL permite al proxy descifrar el tráfico HTTPS para filtrarlo y monitorearlo. Para ello, el proxy actúa como intermediario con su propio certificado SSL.
Configuración de la inspección SSL en Squid
Paso 1: Generación del certificado CA
# Creamos el directorio para los certificados
sudo mkdir -p /etc/squid/ssl_cert
cd /etc/squid/ssl_cert
# Generamos la clave privada
sudo openssl genrsa -out squid-ca-key.pem 4096
# Creamos el certificado raíz
sudo openssl req -new -x509 -days 3650 -key squid-ca-key.pem \
-out squid-ca-cert.pem -utf8 \
-subj "/CN=Squid Proxy CA/O=Company Name/C=RU"
# Unimos en un solo archivo
sudo cat squid-ca-cert.pem squid-ca-key.pem > squid-ca.pem
# Establecemos permisos
sudo chown -R proxy:proxy /etc/squid/ssl_cert
sudo chmod 400 squid-ca.pem
Paso 2: Configuración de squid.conf
# Puerto HTTPS con SSL Bump
https_port 3129 intercept ssl-bump \
cert=/etc/squid/ssl_cert/squid-ca.pem \
generate-host-certificates=on \
dynamic_cert_mem_cache_size=16MB
# Reglas de SSL Bump
acl step1 at_step SslBump1
ssl_bump peek step1
ssl_bump bump all
# Directorio para certificados dinámicos
sslcrtd_program /usr/lib/squid/security_file_certgen -s /var/lib/ssl_db -M 16MB
# Inicialización de la base de certificados
# sudo /usr/lib/squid/security_file_certgen -c -s /var/lib/ssl_db
# sudo chown -R proxy:proxy /var/lib/ssl_db
Paso 3: Instalación del certificado en los clientes
Copie squid-ca-cert.pem en todos los ordenadores e instálelo en las Autoridades de Certificación raíz de confianza:
- Windows: Doble clic → Instalar certificado → Autoridades de certificación raíz de confianza
- macOS: Doble clic → Acceso a Llaveros → Siempre confiar
- Linux:
sudo cp squid-ca-cert.pem /usr/local/share/ca-certificates/ && sudo update-ca-certificates
⚠️ Aspectos legales
Importante: La inspección SSL puede violar la confidencialidad. Antes de implementarla:
✅ Notifique a los empleados sobre el monitoreo (requisito legal en algunas jurisdicciones)
✅ Describa las reglas en documentos internos
✅ No descifre sitios bancarios o médicos
✅ Almacene los registros en un lugar seguro
📊 Monitoreo y análisis de registros
Herramientas de monitoreo populares
SARG (Squid Analysis Report Generator)
Genera informes HTML sobre los registros de Squid: sitios más visitados, usuarios, uso de tráfico.
sudo apt install sarg -y
sudo sarg
# Informe en /var/www/html/squid-reports/
Lightsquid
Script ligero en Perl para visualizar estadísticas de Squid en tiempo real.
sudo apt install lightsquid -y
# Interfaz web:
# http://192.168.1.100/lightsquid
Comandos útiles para el análisis de registros
# Top 10 de sitios más visitados
awk '{print $7}' /var/log/squid/access.log | sort | uniq -c | sort -rn | head -10
# Top 10 de usuarios por consumo de tráfico
awk '{user[$8] += $5} END {for (u in user) print u, user[u]}' \
/var/log/squid/access.log | sort -k2 -rn | head -10
# Número de solicitudes por hora
awk '{print $1}' /var/log/squid/access.log | cut -d: -f2 | sort | uniq -c
# Búsqueda de solicitudes de un usuario específico
grep "ivan" /var/log/squid/access.log | tail -50
# Estadísticas de caché (HIT/MISS)
awk '{print $4}' /var/log/squid/access.log | sort | uniq -c
# Monitoreo de logs en tiempo real
tail -f /var/log/squid/access.log | grep --color "TCP_DENIED"
🔧 Resolución de problemas comunes
❌ Problema: El proxy no se inicia
Solución:
# Verificamos la sintaxis de la configuración
sudo squid -k parse
# Vemos los logs de error
sudo tail -f /var/log/squid/cache.log
# Verificamos los permisos de los directorios
sudo chown -R proxy:proxy /var/log/squid /var/spool/squid
❌ Problema: Los clientes no pueden conectarse
Solución:
- Verificamos el firewall:
sudo ufw allow 3128/tcp - Verificamos que Squid esté escuchando en la interfaz correcta:
netstat -tlnp | grep 3128 - Revisamos el ACL en squid.conf (si la subred está especificada correctamente)
❌ Problema: Rendimiento lento / alta carga
Solución:
- Aumentamos
cache_mem(mínimo 512MB) - Movemos la caché a un disco SSD rápido
- Limitamos las conexiones máximas:
http_access deny all maxconn 100 - Aumentamos el número de procesos:
workers 4
❌ Problema: Algunos sitios no se abren
Solución:
- Revisamos los logs:
tail -f /var/log/squid/access.log | grep DENIED - Desactivamos SSL Bump para sitios problemáticos (bancos, medicina)
- Añadimos excepciones a la lista blanca de ACL
❌ Problema: La caché no funciona
Solución:
# Verificamos estadísticas de caché
squidclient -p 3128 mgr:info | grep "Request Hit Ratios"
# Si vemos 0% - verificamos permisos del directorio de caché
ls -la /var/spool/squid/
# Recreamos la estructura de caché
sudo systemctl stop squid
sudo rm -rf /var/spool/squid/*
sudo squid -z
sudo systemctl start squid
🎯 Conclusiones y recomendaciones
✅ Cuándo implementar un proxy local
- ✅ Oficina de 20+ empleados — el control de acceso y el monitoreo se amortizan
- ✅ Canal de Internet limitado — el caché ahorra hasta un 40% del tráfico
- ✅ Requisitos de seguridad — filtrado de sitios maliciosos, protección contra fugas de datos
- ✅ Necesidad de informes — registros para seguridad, RR.HH., dirección
- ✅ Instituciones educativas — protección infantil, control de acceso de estudiantes
❌ Cuándo un proxy local es excesivo
- ❌ Oficina pequeña (hasta 10 personas) — costes de administración demasiado altos
- ❌ Ausencia de especialista en TI — nadie para dar servicio y monitorear el sistema
- ❌ Internet ilimitado de alta velocidad — el caché no proporcionará un beneficio significativo
- ❌ Manejo de datos confidenciales — la inspección SSL puede violar el cumplimiento normativo
🔧 Recomendaciones de elección de solución
Elija Squid (Linux), si:
- Dispone de un administrador de Linux en plantilla
- Necesita el máximo rendimiento
- El presupuesto es limitado (solución gratuita)
- Requiere una configuración flexible a través de archivos
Elija CCProxy (Windows), si:
- La infraestructura está completamente basada en Windows Server
- Necesita una interfaz gráfica sin línea de comandos
- Dispone de presupuesto para licencias ($199-$799)
- Requiere un despliegue rápido (en 5-10 minutos)
Elija 3proxy, si:
- Necesita una solución ligera sin florituras
- Trabaja en Windows sin presupuesto
- Solo requiere filtrado básico
- No necesita caché ni analíticas avanzadas
💡 Consejo principal
Un servidor proxy local es una solución de infraestructura que requiere administración constante. Si no dispone de un especialista en TI dedicado, considere los servicios de proxy en la nube como alternativa. Le ahorrarán el mantenimiento de hardware y la configuración de sistemas complejos.
¿No quiere lidiar con la configuración?
Utilice los proxies listos de ProxyCove — ¡sin servidores que instalar, sin configuraciones, sin dolores de cabeza!
Simplemente regístrese, obtenga su proxy y comience a trabajar. Con el código promocional ARTHELLO, bono de +$1.3
Tarifas de ProxyCove 2025:
📚 Recursos útiles
📖 Documentación de Squid:
wiki.squid-cache.org
🔧 Sitio oficial de CCProxy:
www.youngzsoft.net
⚙️ GitHub de 3proxy:
github.com/3proxy/3proxy
✅ ¡Artículo completado! Ha aprendido todo sobre los servidores proxy para redes locales
Desde la teoría y la arquitectura hasta la configuración práctica de Squid, CCProxy y 3proxy.
Monitoreo, inspección SSL, solución de problemas: todo en un solo lugar.