Proxy y Proxy-Caché: Fundamentos y Beneficios
Un proxy es un servidor que centraliza el tráfico entre Internet y una red local, eliminando la necesidad de que cada ordenador tenga una conexión directa a Internet. Además, controla los accesos no permitidos desde Internet hacia la red local.
El proxy-caché actúa como intermediario entre el usuario e Internet, funcionando como una zona caché para acelerar el acceso a páginas web y restringir contenidos.
Funciones de los Servidores Proxy-Caché
- Permiten el acceso a máquinas privadas (con IP privada) a Internet.
- Controlan el acceso web mediante reglas basadas en máquina, página solicitada, día, hora, etc.
- Monitorean el contenido web para detectar ataques (virus, gusanos, troyanos).
- Funcionan como caché de páginas web.
Ventajas del Proxy-Caché
- Mayor velocidad de navegación: Las páginas en caché se sirven rápidamente.
- Uso eficiente de la conexión a Internet: Reduce el uso de la línea externa si la página está en caché.
- Cortafuegos: Actúa como barrera de seguridad.
- Filtrado de servicios: Permite habilitar solo servicios específicos (HTTP, FTP).
Funcionamiento del Servidor Proxy-Caché
- El navegador (cliente) solicita una página o archivo.
- El proxy-caché busca la página en su disco duro (caché).
- Si no está en caché, el proxy la solicita al servidor web, la guarda en caché y la envía al navegador.
- Si está en caché, verifica con el servidor web si la página ha cambiado y, si no, la sirve desde la caché.
Requerimientos Hardware de un Servidor Proxy-Caché
- Espacio en disco con acceso rápido (preferiblemente SCSI).
- Memoria RAM suficiente para gestionar la caché.
- Procesador con requerimientos normales.
Squid: El Servidor Proxy-Caché en GNU/Linux
Squid es el servidor proxy-caché más popular en distribuciones GNU/Linux.
Instalación de Squid
sudo apt-get install squid
Configuración de Squid
El archivo de configuración es /etc/squid/squid.conf
. Una configuración básica incluye:
- nombre_lista: Nombre de la ACL.
- src: Origen (IP del cliente).
- componentes_lista: Direcciones IP de redes o archivos con IPs.
- time: Permite o deniega conexiones en un marco horario.
- srcdomain/dstdomain: Permisos sobre dominios origen y destino.
- url_regex: ACL para URLs con ciertos caracteres o palabras.
- maxconn: Número máximo de conexiones por IP.
Arranque y Parada de Squid
Ejecutar Squid: /usr/sbin/squid -z
Arrancar el servicio: /etc/init.d/squid start
Reiniciar: /etc/init.d/squid restart
Arranque automático como root: sysvconfig
Cortafuegos
Un cortafuegos es un mecanismo de protección de redes (hardware o software). Separa la red interna de Internet, protegiéndola de ataques y filtrando el tráfico.
Host bastión: Es el cortafuegos entre las dos redes, encargado del filtrado de paquetes.
Elementos de un Cortafuegos
- Filtros: Hardware o software para filtrar paquetes.
- Nodo bastión: Máquina entre la red local e Internet.
Objetivos de un Cortafuegos
- Traducir las direcciones IP de la red local a una única IP de salida.
- Filtrar paquetes para permitir solo servicios autorizados.
- Monitorizar el tráfico de la red.
IPTABLES: Reglas y Parámetros
IPTABLES es una herramienta para configurar el cortafuegos en Linux.
-L
: Ver las reglas introducidas.-F
: Borrar todas las reglas.-j
: Indicar el objetivo de una regla.