On Thursday 30 September 2004 18:51, Jorge Godoy wrote:
>
> E quanto �s outras quest�es? Voc� checou / fez o que questionei? Quais
> os resultados?
Eu escolhi a op��o firewall para a instala��o. Estou usando o seguinte script
para o firewall. Eu n�o identifiquei nenhuma abertura da porta 80.
SUBNET=192.168.0.0/24 #rede interna
IF_SUBNET=eth0 #interface conectada a subrede (intranet)
IF_INTERNET=eth1 #interface de acesso a internet
OPEN_PORTS_OUT=25,110,53 #portas liberadas para acesso direto para a rede
interna
OPEN_PORTS_IN=22 #portas de entrada liberadas para acesso externo
iptables -t filter -F
iptables -t filter -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
##### Defini��o de Policiamento #####
# Tabela filter
iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT ACCEPT
iptables -t filter -P FORWARD DROP
# Tabela nat
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
iptables -t nat -P POSTROUTING DROP
# Tabela mangle
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P OUTPUT ACCEPT
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
for i in /proc/sys/net/ipv4/conf/*
do
echo 0 > $i/accept_redirects
echo 0 > $i/accept_source_route
echo 1 > $i/log_martians
echo 1 > $i/rp_filter;
done
##### Ativamos o redirecionamento de pacotes (requerido para NAT) #####
echo "1" >/proc/sys/net/ipv4/ip_forward
##### Chain POSTROUTING #####
# Permite qualquer conex�o vinda com destino a lo e rede local para IF_SUBNET
iptables -t nat -A POSTROUTING -o lo -j ACCEPT
iptables -t nat -A POSTROUTING -s $SUBNET -o $IF_SUBNET -j ACCEPT
# Masquerading somente dos servi�os liberados para acesso a rede externa
#iptables -t nat -A POSTROUTING -s $SUBNET -o $IF_INTERNET -j MASQUERADE
#O MASQUERADE est� sendo feito para cada porta de sa�da a ser liberada porque
o FORWARD n�o est� bloqueando o tcp porta 80
iptables -t nat -A POSTROUTING -s $SUBNET -o $IF_INTERNET -p tcp -m multiport
--dport $OPEN_PORTS_OUT -j MASQUERADE
iptables -t nat -A POSTROUTING -s $SUBNET -o $IF_INTERNET -p udp -m multiport
--dport $OPEN_PORTS_OUT -j MASQUERADE
iptables -t nat -A POSTROUTING -s $SUBNET -o $IF_INTERNET -p icmp --icmp-type
echo-request -j MASQUERADE
# Qualquer outra origem de tr�fego desconhecida indo para SUBNET (conex�es
vindas da INTERNET) s�o bloqueadas
iptables -t nat -A POSTROUTING -o $IF_SUBNET -d $SUBNET -j LOG --log-prefix
"FIREWALL:SNAT unknown "
iptables -t nat -A POSTROUTING -o $IF_SUBNET -d $SUBNET -j DROP
# O tr�fego indo para a interface INTERNET n�o ser� bloqueado. Os bloqueios de
entrada ser�o feitos no chain INPUT da tabela filter
iptables -t nat -A POSTROUTING -o $IF_INTERNET -j ACCEPT
# Registra e bloqueia qualquer outro tipo de tr�fego desconhecido
iptables -t nat -A POSTROUTING -j LOG --log-prefix "FIREWALL:SNAT "
iptables -t nat -A POSTROUTING -j DROP
##### Chain INPUT #####
# Chain que ser� usado para tratar o tr�fego vindo da Internet
iptables -N int_input
# Aceita todo o tr�fego vindo do loopback e indo pro loopback
iptables -A INPUT -i lo -j ACCEPT
# Todo tr�fego vindo da rede interna � aceito
iptables -A INPUT -s $SUBNET -i $IF_SUBNET -j ACCEPT
# Conex�es vindas da INTERNET s�o tratadas pelo chain intput
iptables -A INPUT -i $IF_INTERNET -j int_input
# Qualquer outra conex�o desconhecida � imediatamente registrada e derrubada
iptables -A INPUT -j LOG --log-prefix "FIREWALL:INPUT "
iptables -A INPUT -j DROP
##### Chain FORWARD #####
# Chain que ser� usado para tratar o acesso a internet da rede local
iptables -N internet
# Contra ataques Syn-flood
iptables -A FORWARD -p tcp -m limit --limit 1/s -j ACCEPT
# Contra Ping of Death
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j
ACCEPT
# Port scanners ocultos
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit
1/s -j ACCEPT
# Prote��o contra pacotes danificados ou suspeitos.
#iptables -A FORWARD -m unclean -j DROP
# Redirecionamento de conex�es entre as interfaces locais especificadas
abaixo. Qualquer tr�fego vindo/indo para outras interfaces ser� bloqueado
neste passo
iptables -A FORWARD -d $SUBNET -i $IF_INTERNET -o $IF_SUBNET -j ACCEPT
iptables -A FORWARD -s $SUBNET -i $IF_SUBNET -o $IF_INTERNET -j internet
iptables -A FORWARD -j LOG --log-prefix "FIREWALL: FORWARD "
iptables -A FORWARD -j DROP
##### Chain int_input ####
#Bloqueia o ping
iptables -A int_input -p icmp --icmp-type echo-request -j DROP
# Aceita todas as mensagens icmp vindas da INTERNET com certa limita��o. O
tr�fego de pacotes icmp que superar este limite ser� bloqueado pela regra
"...! ESTABLISHED,RELATED -j DROP" no final do chain intput
iptables -A int_input -p icmp -m limit --limit 2/s -j ACCEPT
# Conexao remota permitida vindo da internet
iptables -A int_input -p tcp -m multiport --dport $OPEN_PORTS_IN -j ACCEPT
# Bloqueia qualquer tentativa de nova conex�o de fora para esta m�quina
iptables -A int_input -m state --state ! ESTABLISHED,RELATED -j LOG
--log-prefix "FIREWALL:INTERNET-in "
iptables -A int_input -m state --state ! ESTABLISHED,RELATED -j DROP
# Qualquer outro tipo de tr�fego � aceito
iptables -A int_input -j ACCEPT
##### Chain internet #####
# Libera��o de servi�os permitidos
# AQUI A PORTA 80 PASSA
iptables -A internet -p tcp -m multiport --dport $OPEN_PORTS_OUT -j ACCEPT
iptables -A internet -p udp -m multiport --dport $OPEN_PORTS_OUT -j ACCEPT
# Nenhuma outra conex�o direta � permitida
iptables -A internet -j REJECT --reject-with icmp-admin-prohibited
---------------------------------------------------------------------------
Esta lista � patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br
Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utiliza��o da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html