[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Res: Iptables não está tratando as exceções.



Marcelo escreveu:
Allan,

E se vc fizer algo mais simples tipo:

Supondo que tua rede interna é 192.168.x.x

##################################################################################################
for i in `cat /home/maquinas-liberadas-squid |grep 192 | awk '{print $1}'`; do
 $iptables -t nat -A PREROUTING -i eth1 -p tcp -s $i -d 0/0 --dport 80 -j ACCEPT
done
$iptables -t nat -A PREROUTING -i eth1 -p tcp -s $rede-interna -d 0/0 --dport 80 -j REDIRECT --to-ports 3128
##################################################################################################


Abraços,
Marcelo



Claudio Rocha de Jesus wrote:
Você já viu se não existe alguma outra regra que esta liberando o acesso?
Pode ser que o problema esteja em outro ponto.

 --------------------------------------
Claudio Rocha de Jesus
Analista de Suporte Técnico
crochadejesus@yahoo.com.br
Linux user number 433834
/*Sem educação não há liberdade.*/
--------------------------------------



----- Mensagem original ----
De: Allan Carvalho <allan@ceb.unicamp.br>
Para: Debian <debian-user-portuguese@lists.debian.org>
Enviadas: Terça-feira, 1 de Setembro de 2009 15:05:25
Assunto: Iptables não está tratando as exceções.

Prezados.

Fiz, no meu gateway, através de iptables, um redirecionamento da porta 80 para porta 3128, para que todas as conexões na porta 80 caiam na porta do proxy, porém, coloquei exceção de alguns IPs, utilizei o seguinte comando:

for i in $ipAllowed; do
$iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 ! -s $i -j REDIRECT --to-port 3128
done

Onde $ipAllowed são os IPs que eu não quero que caiam nessa regra, através do iptables -t nat -L, certifico que os hosts realmente entraram na regra:

amazonas:~# iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target prot opt source destination REDIRECT tcp -- !etch.dominio.com anywhere tcp dpt:www redir ports 3128

Só que todos os hosts estão caindo na regra, ou seja, o iptables está ignorando a exceção, alguém pode me dar uma luz de onde eu errei?

Agradeço desde já.

-- Atenciosamente,
Allan Carvalho

http://allandc.wordpress.com/
Linux Registered User No: 454591

"Para as lagartixas só posso dizer, treine muito e vire um calango, e continue admirando os crocodilos"


-- To UNSUBSCRIBE, email to debian-user-portuguese-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

      ____________________________________________________________________________________
Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com




Seguindo a dica do Elgio no link http://www.vivaolinux.com.br/topico/Squid-Iptables/redirecionamento-3/ implementei da seguinte forma:

# cria a chain
iptables -t nat -N PROXY

# desvia tudo que eh porta 80 para a nova chain
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j PROXY

# Um return para cada ip que tu NAO QUER redir
iptables -t nat -A PROXY -s Ip1 -j RETURN
iptables -t nat -A PROXY -s Ip2 -j RETURN
...

# E no fim, ULTIMA Regra da chain PROXY
iptables -t nat -A PROXY -p tcp --dport 80 -j REDIRECT --to-port 3128

Deste jeito funcionou.

Agradeço à todos pela ajuda.

--
Atenciosamente,
Allan Carvalho

http://allandc.wordpress.com/
Linux Registered User No: 454591

"Para as lagartixas só posso dizer, treine muito e vire um calango, e continue admirando os crocodilos"


Reply to: