irado
(usa XUbuntu)
Enviado em 10/09/2008 - 10:27h
estou fazendo um fwll o mais simples possivel, para "complica-lo" mais tarde. Por enquanto, não está permitindo a saida dos pacotes a partir da rede, ou seja, as solicitações chegam até o fwll/proxy, mas não saem para a internet. Inclusive o redir para o squid funciona, é só a saida que não vai mesmo. Script:
:=== begin
#!/bin/bash -x
IPT=`which iptables`
LAN=eth1
WAN=eth0
REDE=192.168.0.0/24
modprobe iptable_nat
limpa(){
$IPT -F -t filter
$IPT -X -t filter
$IPT -F -t nat
$IPT -X -t nat
$IPT -F -t mangle
$IPT -X -t mangle
}
iniciar(){
limpa
# estabelecendo politicas
$IPT -t filter -P FORWARD DROP
$IPT -t filter -P INPUT DROP
$IPT -t filter -P OUTPUT DROP
$IPT -t nat PREROUTING ACCEPT
$IPT -t nat POSTROUTING ACCEPT
##--> regras TABELA FILTER, chain INPUT
$IPT -t filter -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$IPT -t filter -A INPUT -p tcp -m multiport --destination-port ssh,5435 -j ACCEPT
$IPT -t filter -A INPUT -p ALL -s $REDE -j LOG --log-prefix "** INPUT - vindo da rede **"
$IPT -t filter -A INPUT -p ALL -s $REDE -j ACCEPT
$IPT -t filter -A INPUT -p tcp --syn -j LOG --log-prefix "** INPUT - DESCARTADOS **"
$IPT -t filter -A INPUT -p tcp --syn -j DROP
#
###--> regras TABELA FILTER, chain OUTPUT
#
$IPT -t filter -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$IPT -t filter -A OUTPUT -o lo -j ACCEPT
###--> regras TABELA FILTER, chain FORWARD
#
$IPT -t filter -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
$IPT -t filter -A FORWARD -s $REDE -p ALL --dport 53 -j ACCEPT
# --> NAT
###--> regras TABELA NAT, chain PREROUTING
#
$IPT -t nat -A PREROUTING -i $LAN -p tcp -m tcp --dport 80 -j LOG --log-prefix "** log de prerouting **"
$IPT -t nat -A PREROUTING -i $LAN -p tcp -d 0/0 --dport 80 -j REDIRECT --to-port 3128
###--> regras TABELA NAT, chain POSTROUTING
#
$IPT -t nat -A POSTROUTING -o $WAN -j MASQUERADE
}
encerrar(){
limpa
$IPT -t filter -P FORWARD ACCEPT
$IPT -t filter -P INPUT ACCEPT
$IPT -t filter -P OUTPUT ACCEPT
}
case "$1" in
start)
iniciar
;;
stop)
encerrar
limpa
;;
restart)
encerrar
iniciar
;;
*)
echo "Uso $0 {start | stop | restart}"
;;
esac
:=== end
o traceroute diz que chego até o fwll:
[root@Tec1003:/home/br1003$]: traceroute
www.uol.com.br
traceroute: Warning:
www.uol.com.br has multiple addresses; using 200.98.249.120
traceroute to
www.uol.com.br (200.98.249.120), 30 hops max, 38 byte packets
1 192.168.0.1 (192.168.0.1) 0.274 ms 0.257 ms 0.223 ms
2 * * *
3 * * *
4 * * *
o squid/access.log diz que estou chegando até ele:
1221051910.663 0 192.168.0.21 NONE/400 1848 GET /dica/Conectividade-Social-e-Squid/ - NONE/- text/html
1221051917.015 0 192.168.0.21 NONE/400 1780 GET / - NONE/- text/html
1221051917.069 0 192.168.0.21 NONE/400 1802 GET /favicon.ico - NONE/- text/html
1221052020.811 0 192.168.0.21 NONE/400 1780 GET / - NONE/- text/html
enfim.. devo estar esquecendo de algo, só que não estou enxergando. Alguma dica?
grato,