Flávio
Pelo que eu vi você bloqueou todas as cadeias da tabela filter, fez NAT
e liberou a cadeia FORWARD e INPUT somente para alguns protocolos, ou
seja, o seu firewall recebe e roteia alguns pacotes de forma correta
(mas não consegue responder ou iniciar conecções, seja lá pra onde for).
Primeiro ponto, se você está usando o squid como proxy você NÃO está
usando NAT para acessar a internet. Liberar somente a cadeia FORWARD não
é suficiente, suas estações conectam com o squid e o squid faz uma nova
conecção para fora, e esta nova conecção passa pela cadeia OUTPUT da
tabela filter (que está bloqueada).
Segundo ponto, teu gateway (esta máquina) consegue acessar ALGUMA COISA
na rede externa? Eu chutaria que nem o teu APT funciona mais com esse
firewall.
Ele deveria incluir algumas regras assim (você pode ser mais específico
se você quiser, ao invés de deixar ele iniciar conexões para qualquer
lugar conforme abaixo):
# Permite que esta maquina inicie conexoes
$IPT -A OUTPUT -m state --state NEW -j ACCEPT
# Permite conexoes ja estabelecidas atraves do modulo state, entao o
resto nao e processado
$IPT -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Atenciosamente.
Edmundo Valle Neto
Flávio Barros escreveu:
Senhores, seria possível analisarem meu script de firewall ?
O problema é o seguinte: Quando adoto uma política OUTPUT DROP não
consigo navegar na Internet.
#!/bin/sh
IPTABLES=/sbin/iptables
IFLAN=eth0
IFWAN=eth1
LAN=172.21.5.0/24
WAN=172.18.0.0/16
# Ativando modulos
# -------------------------------------------------------
echo "Ativando modulos"
echo " "
/sbin/modprobe iptable_nat
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_MASQUERADE
/sbin/modprobe sch_sfq
/sbin/modprobe sch_htb
/sbin/modprobe cls_u32
echo "Habilitando o filtro de ip ( seguranca ) Protecao contra IP
spoofing"
echo " "
echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter
echo "1" > /proc/sys/net/ipv4/conf/eth0/rp_filter
echo "1" > /proc/sys/net/ipv4/conf/eth1/rp_filter
# Ativa roteamento no kernel
# -------------------------------------------------------
echo "Ativando repasse de pacotes"
echo " "
echo "1" > /proc/sys/net/ipv4/ip_forward
# Ativa syn cookies
# -------------------------------------------------------
echo "Ativando syn cookies"
echo " "
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
# Zera regras
# -------------------------------------------------------
echo "Limpando as regras antigas"
echo " "
$IPTABLES -F
$IPTABLES -X
$IPTABLES -F -t nat
$IPTABLES -X -t nat
$IPTABLES -F -t mangle
$IPTABLES -X -t mangle
echo "Definindo a politica padrao"
echo " "
# Determina a politica padrao
$IPTABLES -P INPUT DROP
$IPTABLES -P FORWARD DROP
$IPTABLES -P OUTPUT DROP
# Aceita pacotes que ja estabelecerao conexao ( Statefull)
#-----------------------------------------------
echo "Definindo regras Statefull"
echo " "
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Aceitando pela interface interna
#-----------------------------------------------
echo "Liberando icmp local"
echo " "
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT
# Liberando ICMP para rede
#-----------------------------------------------
echo "Liberando icmp para rede"
echo " "
$IPTABLES -A INPUT -p icmp -s $LAN -j ACCEPT
$IPTABLES -A FORWARD -p icmp -s $LAN -j ACCEPT
# Acesso ssh (firewall)
#-----------------------------------------------
echo "Liberando ssh"
echo " "
$IPTABLES -A INPUT -p tcp -i $IFLAN -s $LAN --dport 22 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -i $IFLAN -s $LAN --dport 22 -j ACCEPT
#DNS udp=consulta tcp=transferencia
echo "Liberando DNS"
echo " "
$IPTABLES -A FORWARD -p udp -s $LAN --dport 53 -j ACCEPT
$IPTABLES -A INPUT -p udp -s $LAN --dport 53 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -s $WAN --dport 53 -j ACCEPT
$IPTABLES -A INPUT -p tcp -s $WAN --dport 53 -j ACCEPT
#DHCP
echo "Liberando DHCP"
echo " "
$IPTABLES -A FORWARD -p udp -i $IFLAN -s $LAN --dport 68 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -i $IFLAN -s $LAN --dport 67 -j ACCEPT
#E-Mail
echo "Liberando servico de e-mail"
echo " "
$IPTABLES -A FORWARD -p tcp -i $IFLAN -s $LAN --dport 110 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -i $IFLAN -s $LAN --dport 25 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -i $IFLAN -s $LAN --dport 143 -j ACCEPT
#LDAP, SAMBA e AD
echo "Liberando servico LDAP, SAMBA e AD"
echo " "
#Replicacao LDAP semef
$IPTABLES -A FORWARD -p tcp -i $IFWAN -s 172.18.1.164 --dport 389 -j
ACCEPT
#Microsoft Naked CIFS
$IPTABLES -A FORWARD -p tcp -i $IFLAN -s $LAN --dport 445 -j ACCEPT
$IPTABLES -A FORWARD -p udp -i $IFLAN -s $LAN --dport 445 -j ACCEPT
#NETBIOS Name Service
$IPTABLES -A FORWARD -p udp -i $IFLAN -s $LAN --dport 137 -j ACCEPT
#NETBIOS Datagram Service
$IPTABLES -A FORWARD -p udp -i $IFLAN -s $LAN --dport 138 -j ACCEPT
#NETBIOS session service
$IPTABLES -A FORWARD -p tcp -i $IFLAN -s $LAN --dport 139 -j ACCEPT
#https
echo "Liberando https"
echo " "
$IPTABLES -A FORWARD -p tcp -i $IFLAN -s $LAN --dport 443 -j ACCEPT
#http
echo "Liberando http para acesso ao Sarg"
echo " "
$IPTABLES -A INPUT -p tcp -i $IFLAN -s $LAN --dport 80 -j ACCEPT
$IPTABLES -A INPUT -p tcp -i $IFLAN -s $LAN --dport 3128 -j ACCEPT
$IPTABLES -A FORWARD -p tcp -i $IFLAN -s $LAN --dport 80 -j ACCEPT
# Proxy transparente
# ----------------------------
#echo "Ativando proxy transparente"
#echo " "
$IPTABLES -t nat -A PREROUTING -p tcp -d ! 172.0.0.0/8 --dport 80 -j
REDIRECT --to-port 3128
#################################################
# Tabela NAT #
#################################################
# MASCARAMENTO
$IPTABLES -t nat -A POSTROUTING -o $IFWAN -j MASQUERADE
_______________________________________________________ Você quer
respostas para suas perguntas? Ou você sabe muito e quer compartilhar
seu conhecimento? Experimente o Yahoo! Respostas !
http://br.answers.yahoo.com/
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]