En este tutorial vamos a instalar y configurar un Proxy Web en Linux, en este caso en Debian. Para ello debemos instalar Squid3, en una máquina Debian, en mi caso una máquina virtual y para realizar las comprobaciones, vamos a hacer uso de otra máquina virtual con Windows XP.
Requisitos para la práctica
Vamos a usar máquinas virtuales en Virtual Box con las siguientes configuraciones- Debian con dos interfaces, una en Adaptador puente y otra en Red Interna
- Windows XP con una interfaz en Red Interna (misma que Debian)
¿Qué es un Proxy Web?
Un proxy web puede definirse como un software que sirve para controlar e interceptar la navegación de páginas web por motivos de seguridad, rendimiento, anonimato...Instalación y configuración de Squid3
apt-get updateAhora nos iremos a la ruta de Squid3 para ver los archivos de configuración
apt-get install squid3
cd /etc/squid3Vamos a hacer una copia de seguridad de squid.conf por si las moscas
cp squid.conf squid.bakVamos a editar squid.conf con nano (por ejemplo) y vamos a activar las siguientes línes en squid.conf. Como el archivo tiene varios miles de líneas te recomiendo que hagas uso de Ctrl + w para buscar las siguientes líneas y descomentarlas...
cache_mem 256Una cosa interesante sería renombrar partes del archivo para poder buscarlos más fácilmente como podéis ver en las siguientes imágenes... En YOUR OWN RULES... he puesto GALLARDO RULES! y en ACL TYPES... he puesto TIPOS DE ACL, de tal forma que si quiero acceder a cualquiera de estas partes, simplemente hago un Ctrl + w GALLARDO y ya accedo a la línea interesante.
cache_dir ufs /var
Aplicando reglas a nuestro Proxy Web
Bajo la línea YOUR OWN RULES... renombrado como GALLARDO RULES! en mi caso vamos a poner las reglas acl que nos van a servir para empezar a configurar nuestro Proxy Web a nuestro antojo. A estas líneas les seguirán otras líneas http_access que llamarán a las acl para permitir (allow) o denegar (deny). Hay que recordar que cada vez que realicemos modificaciones en nuestro squid.conf tendremos que reiniciar nuestro servicio squid3 con service squid3 restart.Configurar una sola IP con Squid3
En este primer ejemplo vamos a crear nuestra primera regla aclacl "nombre" src "IP"por ejemplo:
acl windows src 10.0.0.2A la que le va a seguir una regla http_access que va a llamar a la regla acl
http_access "allow ó deny" "nombre"por ejemplo:
http_access allow windowsCon lo que vamos a permitir que windows se pueda conectar a internet.
Configurar en los navegadores el Proxy Web
En mi caso para realizar la prueba vamos a usar Internet Explorer (aunque esté un poco obsoleto) pero es el que viene en mi máquina virtual de Windows XP. Para ello nos vamos a Herramientas > Opciones de Internet > Conexiones > Configuración de LAN > Opciones avanzadas > IP : 3128(Check) Usar el mismo servidor proxy para todos los productos como podemos ver en la siguiente imagen.Denegar una sola IP y activar el resto de la red
acl windows src 10.0.0.2
acl red10 src 10.0.0.0/24
http_access deny windows
http_access allow red10
Permitir a un rango de IPs
acl rango1020 src 10.0.0.10-10.0.0.20
http_access allow rango1020
Permitir a todos los equipos de una red excepto a una IP y un rango
acl windows src 10.0.0.2
acl red10 src 10.0.0.0/24
acl rango1020 src 10.0.0.10-10.0.0.20
http_access deny rango1020
http_access deny windows
http_access allow red10
Permitir conectarse a una MAC determinada
acl MAC arp XX:XX:XX:XX:XX:XX
http_access allow MAC
Permitir conectarse a una MAC e IP determinadas
acl windows src 10.0.0.2
acl MAC arp 08:00:23:G5:00:01
http_access allow MAC windows
Permitir conectarse unos días, a unas horas y unos equipos determinados
Para ello vamos a tener en cuenta que S es domingo, M es Lunes, T es Martes, W es Miércoles, H es Jueves, F es Viernes y A es Sábado. Vamos a tomar como nomenclatura acl lo siguiente.acl "nombre" time "DIAS" "H1:M1-H2:M2"Por ejemplo:
acl horariotrabajo time MTWHF 08:00-15:00
acl rango1020 src 10.0.0.10-10.0.0.20
http_access allow horariotrabajo rango1020
Hola,
ResponderEliminarMuy bueno tu aporte. Quería saber si te habías topado con algún error como este:
-------------------------------------------------- ---------------------------------
The following Error was Encountered while trying to retrieve the URL: /
Invalid URL
Some aspect of the requested URL is incorrect.
Some possible problems are:
Missing or incorrect access protocol (Should be http: // or the like)
Missing hostname
Illegal double-escape in the URL-Path
Illegal character in hostname; underscores are not allowed.
Your cache administrator is webmaster.
-------------------------------------------------- ---------------------------------
Mi conexión es:
Router> MikroTik (Ether1)
MikroTik (ether2)> Squid
MikroTik (ether 3)> Switch
Espero me des una mano, gracias.
Saludos.
gilipuertas
EliminarLa forma mas sencilla de configurar el proxy en una red local es:
ResponderEliminarvisible_hostname [nombre del host]
acl all src [dirección de la red, ej: 192.168.0.0/24]
http_port [puerto]
acl [nombre] url_regex "[ruta del archivo con las palabras bloqueadas]"
http_access deny [nombre]
5555555555555555555555555555555555555555555555555555555555555555555555555555555
Eliminar01101100 01100101 01100011 01101000 01100001
Eliminar