luizhtioted
(usa Debian)
Enviado em 21/12/2015 - 11:16h
Bom dia pessoal da VOL,
Eu fiz um proxy com o squid e coloquei o dansguardian como filtro de conteúdo, porém o modo de como eu consegui fazer pra ele funcionar é que me deixou confuso. De acordo com vários artigos inclusive os do VOL o Squid tem que está transparente (ou intercept, a partir da versão 3), e depois colocar o iptables para redirecionar as conexões para a porta 8080, que é a porta do dansguardian. Depois de vários testes em modo transparente o squid funciona normalmente, porém quando coloco o iptables pra redirecionar para o dansguardian, tudo fica bloqueado. Fiz um teste com as maquinas sem o modo transparent e funcionou normalmente o dansguardian, porém pra minha surpresa tirei as configurações do proxy e coloquei pra funcionar sem colocar o squid em modo transparente, e com o iptables já redirecionado pro dansguardian e funcionou!!! Percebi também que se colocar a ACL de rede local também bloqueia tudo, mas tirando o modo transparente e a acl de rede local o dansguardian já funciona em modo transparente.
Está tudo funcionando mas gostaria que quem puder dá uma olhada nas configurações abaixo pra ver se ficou devendo algo.
Configuração do Squid3:
http_port 3128
visible_hostname luke
cache_mem 256 MB
maximum_object_size_in_memory 64 KB
maximum_object_size 10 MB
minimum_object_size 0 KB
cache_dir aufs /var/spool/squid3 1000 16 128
cache_swap_low 70
cache_swap_high 90
cache_access_log /var/log/squid3/access.log
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
refresh_pattern . 15 20% 2280
#acl localhost src 127.0.0.1
#acl to_localhost dst 127.0.0.0/8
acl_uses_indirect_client on
acl SSL_ports port 443 563
acl Safe_ports port 21 80 443 563 70 210 280 488 59 777 901 1025-65535
acl purge method PURGE
acl CONNECT method CONNECT
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
#acl redelocal src 192.168.1.0/24
#acl rede10 src 10.0.0.0/8
#http_access allow redelocal
#http_access allow rede10
#follow_x_forwarded_for allow redelocal
#http_access deny all
Configuração do Dansguardian:
filterip = 10.0.0.250
# the port that DansGuardian listens to.
filterport = 8080
# the ip of the proxy (default is the loopback - i.e. this server)
proxyip = 127.0.0.1
# the port DansGuardian connects to proxy on
proxyport = 3128
Configuração script firewall:
iptables -F
iptables -t nat -F
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A PREROUTING -i eth1.20 -p tcp --dport 80 -j REDIRECT --to-port 8080
Lembrando que desta forma está funcionando, porém se eu descomentar a linha das acls redelocal e rede10, ou colocar intercept no http_port, o squid bloqueia tudo