Pessoal tenho duas redes q acessam a mesma internet, como fazer o nat?
iptables -t nat -A PREROUTING -i eth1,eth2 -p tcp --dport 80 -j REDIRECT --to-port 3128
assim dá certo?
Pessoal tenho duas redes q acessam a mesma internet, como fazer o nat?
iptables -t nat -A PREROUTING -i eth1,eth2 -p tcp --dport 80 -j REDIRECT --to-port 3128
assim dá certo?
Olha, acho que não, vc tem que fazer um redirecinamento pra cada placa de rede.
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -i eth2 -p tcp --dport 80 -j REDIRECT --to-port 3128
Aqui eu fiz assim.
Valeu.
Deu certo não, pior, nem só com uma linha não tá dando certo, depois q ativo o proxy transparente a internet não funciona mais, o arquivo tá assim:
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -i eth2 -p tcp --dport 80 -j REDIRECT --to-port 3128
e no squid.conf:
http_port 3128 transparent
to usando o Debian 5.0, já tentei só com uma linha e tb não funciona. E agora?
Eu consigo pingar no site mas não consigo visualiza-los no navegador
vc criou as acls liberando pras duas redes, tipo:
acl redelocal src 192.168.1.0/24
http_access allow redelocal
acl redelocal2 src 192.168.2.0/24
http_access allow redelocal2
Olá amigo faça da seguinte forma:
1° redirecionamento porta 80 ->> 3128
iptables -t nat -A PREROUTING -s 192.168.1.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -s 192.168.2.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128
2° NAT
iptables -t nat POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
iptables -t nat POSTROUTING -s 192.168.2.0/24 -j MASQUERADE
3° acl's squid
acl src redelocal1 192.168.1.0/24
acl src redelocal2 192.168.2.0/24
http_access redelocal1 allow
http_access redelocal2 allow
e por último especifique ip:porta por onde o squid irá escutar as solicitações http dos clientes (não é obrigado especificar ip, mas por questões de segurança recomendo, evitando o uso do squid por outros host fora da sua rede).
http_port 192.168.1.1 3128
http_port 192.168.2.1 3128
Mas seria interessante vc postar seu script de firewall e o seu squid.conf, caso a dica acima não resolva seu problema.
abraços
Ainda nada rrinfor, tai meu squid.conf:
http_port 3128 transparent
visible_hostname prioserver
cache_mem 128 MB
maximum_object_size_in_memory 64 KB
maximum_object_size 256 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid 4096 32 128
cache_access_log /var/log/squid/access.log
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
refresh_pattern . 15 20% 2280
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80
acl Safe_ports port 21
acl Safe_ports port 443 563
acl Safe_ports port 70
acl Safe_ports port 210
acl Safe_ports port 1025-64435
acl Safe_ports port 280
acl Safe_ports port 488
acl Safe_ports port 591
acl Safe_ports port 777
acl Safe_ports port 901
acl purge method PURGE
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
acl rede1 src 10.0.0.0/8
http_access allow rede1
acl rede2 src 172.19.0.0/16
http_access allow rede2
http_access allow localhost
http_access deny all
e o arquivo q ativa o compartilhamento:
#!/bin/sh
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s 172.19.0.0/16 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 10.10.0.0/8 -j MASQUERADE
#iptables -t nat -A PREROUTING -s 172.19.0.0/16 -p tcp --dport 80 -j REDIRECT --to-port 3128
#iptables -t nat -A PREROUTING -s 10.10.0.0/8 -p tcp --dport 80 -j REDIRECT --to-port 3128
#iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
#echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
#iptables -A INPUT -m state --state INVALID -j DROP
#iptables -A INPUT -i lo -j ACCEPT
#iptables -A INPUT -i eth1 -j ACCEPT
#iptables -A INPUT -i eth2 -j ACCEPT
#itpables -A INPUT -p tcp --dport 2442 -j ACCEPT
#iptables -A INPUT -p tcp --syn -j DROP
desta forma a rede navega normalmente, mas, é só eu ativar as linhas:
#iptables -t nat -A PREROUTING -s 172.19.0.0/16 -p tcp --dport 80 -j REDIRECT --to-port 3128
#iptables -t nat -A PREROUTING -s 10.10.0.0/8 -p tcp --dport 80 -j REDIRECT --to-port 3128
e já era.
Vc conseguiu rrinfor, é incrível como apenas uma simples linha pode nos dar tanta informação:
tail -f -n 20 /var/log/syslog
jamais te esquecerei.
olha só o q ela me disse:
Mar 17 19:49:14 prioserver squid[2677]: #011Failed to verify one of the swap dir ectories, Check cache.log#012#011for details. Run 'squid -z' to create swap dir ectories#012#011if needed, or if running Squid for the first time.
Mar 17 19:49:14 prioserver squid[2490]: Squid Parent: child process 2677 exited due to signal 6
Mar 17 19:49:17 prioserver squid[2490]: Squid Parent: child process 2680 started
Mar 17 19:49:17 prioserver squid[2680]: #011Failed to verify one of the swap dir ectories, Check cache.log#012#011for details. Run 'squid -z' to create swap dir ectories#012#011if needed, or if running Squid for the first time.
Mar 17 19:49:17 prioserver squid[2490]: Squid Parent: child process 2680 exited due to signal 6
Mar 17 19:49:17 prioserver squid[2490]: Exiting due to repeated, frequent failur es
Mar 17 19:49:24 prioserver named[2162]: network unreachable resolving 'login.liv e.com/A/IN': 2001:503:231d::2:30#53
Mar 17 19:51:00 prioserver named[2162]: network unreachable resolving 'ns1.mozil la.org/A/IN': 2001:500:c::1#53
Mar 17 19:51:00 prioserver named[2162]: network unreachable resolving 'ns2.mozil la.org/A/IN': 2001:500:c::1#53
Mar 17 19:51:00 prioserver named[2162]: network unreachable resolving 'ns2.mozil la.org/AAAA/IN': 2001:500:c::1#53
ou seja, foi só usar o squid -z, para criar os diretorios e pronto tá funcionando, obrigado; agora, e esses "network unreachable resolving", são problemas? pq continua assim mesmo a internet estando normal.
outra coisa, sobre essa linhas:
http_port 192.168.1.1 3128
http_port 192.168.2.1 3128
no meu caso vão ficar assim:
http_port 172.19.0.1:3128 transparent
http_port 10.10.0.1:3128 tranparent
mais uma vez obrigado
Tranquilo, estamos ai pra ajudar e aprender tbm.
As linhas acima estão correta contanto que o ip citado acima seja das interfaces local no server onde esta intalado o squid, ou seja o gateway das redes.
Quanto a mensagem "network unreachable resolving 'ns2.mozil la.org/AAAA/IN': 2001:500:c::1#53" é normal aparecer coisas do tipo, é uma falha de resolução dns, portanto seria interessante um dns cache junto com o squid ex:
instalando o bind (dns cache)
apt-get install bind9
configurando dns no squid
dns_nameservers 127.0.0.1 << interface loopback onde o bind esta escutando por padrão
abraços e não esqueça do botãozinho mágico no canto direito :-)