fabiano duarte
(usa Debian)
Enviado em 14/10/2010 - 14:42h
Olá pessoal,
estou com difiduldades de fazer rodar o squid como proxy transparente, somente funciona setando o proxy nas propriedades da internet.
Tenho um computador com duas placas de redes, ambas estão espetadas no roteador mas somente a eth0 está configurado o gateway com o ip do roteador, sendo assim, quando eu configuro nos computadores o gateway e o dns buscando o ip da eth1 os computadores só abrem o site se eu colocar o ip exemplo: 64.233.163.104 acessa o site
www.google.com
Deve ser problema com dns mas não sei onde.
Os testes que fiz:
Já coloquei o cabo do modem direto na eth0
Inverti a eth0 pela eth1
Coloquei a eth0 como dhcp
O arquivo /etc/network/interfaces :
auto lo
iface lo inet loopback
auto eth0
#iface eth0 inet dhcp
iface eth0 inet static
address 192.168.1.252
netmask 255.255.255.0
gateway 192.168.1.254
network 192.168.1.0
broadcast 192.168.1.255
auto eth1
iface eth1 inet static
address 192.168.1.253
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
O meu arquivo resolv.conf está o seguinte:
nameserver 200.150.13.246
nameserver 200.150.4.4
squid.conf :
cache_mem 100 MB
maximum_object_size_in_memory 90 KB
cache_swap_low 90
cache_swap_high 95
minimum_object_size 1 KB
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_swap_log /var/spool/squid/swap.log
cache_dir diskd /var/spool/squid 1024 16 256
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
refresh_pattern . 15 20% 2280
error_directory /usr/share/squid/errors/Portuguese/
dns_nameservers 200.150.4.4 200.150.13.246
http_port 3128 transparent
visible_hostname Nexo
acl manager proto cache object
acl SSL_ports port 443 563
acl safe_ports port 80 110
acl safe_ports port 21
acl safe_ports port 443 56
acl safe_ports port 70
acl safe_ports port 210
acl safe_ports port 1025-65535 1863
acl safe_ports port 280
acl safe_ports port 488
acl safe_ports port 591
acl safe_ports port 777
acl CONNECT method CONNECT
acl localhost src 127.0.0.1/255.255.255.255
http_access allow manager localhost
http_access deny manager
http_access deny !safe_ports
http_access deny CONNECT !SSL_ports
acl redeinterna src 192.168.1.0/255.255.255.0
acl all src 0.0.0.0/0.0.0.0
#delay_pools 2
#delay_class 1 2
#acl controle_banda src "/etc/squid/controle_banda"
#delay_parameters 1 3000/3000 3000/3000
#delay_access 1 allow controle_banda
acl sites_comuns url_regex -i "/etc/squid/sites_comuns"
acl liberados src "/etc/squid/liberados"
acl controlados src "/etc/squid/controlados"
acl sites_bloq url_regex -i "/etc/squid/sites_bloq"
acl ips_downloads src "/etc/squid/ips_downloads"
acl downloads url_regex -i "/etc/squid/downloads"
acl download_liberados url_regex -i "/etc/squid/download_liberados"
acl srcmsn url_regex -i "/etc/squid/srcmsn"
acl ips_msnbloque src "/etc/squid/ips_msnbloque"
acl grupo1 src "/etc/squid/grupo1"
acl sites_grupo1 url_regex -i "/etc/squid/sites_grupo1"
acl grupo2 src "/etc/squid/grupo2"
acl sites_grupo2 url_regex -i "/etc/squid/sites_grupo2"
#http_access allow redeinterna sites_comuns
http_access deny ips_msnbloque srcmsn
http_access allow !ips_msnbloque srcmsn
http_access allow redeinterna sites_comuns
http_access allow liberados all
http_access allow ips_downloads download_liberados
http_access deny !ips_downloads downloads
http_access allow grupo1 sites_grupo1
http_access allow grupo2 sites_grupo2
http_access allow controlados !sites_bloq
http_access deny all
arquivo /etc/init.d/rc.firewall :
# /bin/sh
iptables -F
iptables -t nat -F
iptables -t mangle -F
rede_interna="eth0"
rede_externa="eth1"
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
/sbin/modprobe iptable_nat
/sbin/modprobe ip_tables
/sbin/modprobe ipt_state
/sbin/modprobe ip_conntrack
/sbin/modprobe ipt_multiport
/sbin/modprobe iptable_mangle
#iptables -I PREROUTING -t nat -p tcp -s $rede_interna --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -i $rede_interna -p tcp --dport 80 -j REDIRECT --to-port 3128
#iptables -t nat -I POSTROUTING -s $rede_externa -j MASQUERADE
iptables -t nat -I POSTROUTING -o $rede_externa -j MASQUERADE
no arquivo rc.firewall onde está comentado é um teste que fiz colocando a variável rede_interna como 192.168.1.0/24, mas tbm não obtive sucesso...
obrigado.