Professional Documents
Culture Documents
Ahora configuraremos proxy transparente pero para poder comenzar previamente tenemos que configurar las tarjetas de red y el DHCP.
para configurar las tarjetas de red editar el archivo /etc/network/interfaces para que quede de la siguiente manera
allow-hotplug eth0
address 172.16.2.111
netmask 255.255.255.0
gateway 172.16.2.1
network 172.16.2.0
broadcast 172.16.2.255
allow-hotplug eth1
address 192.168.2.1
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
Ahora instalamos y configuramos el servidor DHCP que nos servira para proporcionar ips automaticos a las pcs de la red lan
Configuramos el servicio de DHCP para que este disponible en la red interna y acepte las conexiones en dicha red, en este caso es la interfaz eth1, esto se configura en el archivo /etc/default/isc-dhcp-server
INTERFACES="eth1"
Ahora tenemos que modificar algunas lineas el archivo /etc/dhcpd.conf para especificar rango de ips y tiempo que se le proporcionara el ip a la maquina cliente
default-lease-time 600;
max-lease-time 7200;
#default-lease-time 86400;
#max-lease-time 172800;
Con el servidor DHCP se puede asignar un ip especifica a una determinada mac-address, estas direcciones fijas no deben estar en la gama de las direcciones reservadas para la distribucin dinmica.
host desktop {
fixed-address 192.168.2.2;
host laptop {
fixed-address 192.168.2.3;
# /etc/init.d/isc-dhcp-server restart
Ahora el ultimo paso instalacin y configuracin de squid, procedemos a la instalacion con el siguiente comando
Ahora vamos a hacer unos cambios en el fichero de configuracin de squid (/etc/squid/squid.conf). Primero localizamos la lnea con el puerto de entrada de squid (por defecto http_port 3128) y aadimos el parmetro transparente. Debe de quedarnos algo as:
Ahora slo nos queda configurar la mquina como router y direccionar el trfico web (puerto 80) que recibe por el interfaz interno (eth1) al puerto 3128 que es el que usa squid. Esto lo hacemos gracias a IPtables (que vienen instaladas en Debian por defecto) el script que se detalla a continuacin, se debe configurar para que se ejecute de forma automtica.
#!/bin/sh
# squid server IP
SQUID_SERVER="192.168.2.1"
INTERNET="eth0"
LAN_IN="eth1"
# Squid port
SQUID_PORT="3128"
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
modprobe ip_conntrack
modprobe ip_conntrack_ftp
#modprobe ip_nat_ftp
# DNAT port 80 request comming from LAN systems to squid 3128 ($SQUID_PORT) aka transparent proxy
# if it is same system
Para guarde el anterior script nos creamos la carpeta /etc/iptables-script y dentro de ahi colocamos el script con el nombre de proxy.sh, de damos permisos de ejecucin:
# chmod +x /etc/iptables-script/proxy.sh
Y le indicamos al SO que ejecute dicho script al iniciar el sistema para esto editamos el archivo /etc/rc.local, y antes de exit colocamos la siguiente linea:
sh /etc/iptables-script/proxy.sh