- Estado de conexões
+ Responder ao Tópico
-
Estado de conexões
Estou com dúvidas com relação às regras que condizem com o estado do pacote.
( NEW, ESTABLISHED, RELATED e INVALID)
Isto acontece porque eu não sei quando é criada uma nova conexão, ou quando a
conexão já existe, e outras coisas referentes a esse assunto.
Registrei LOGs de todo o tráfego e analisei os CODE BITS que apareceram, mas isso
fez uma zona na minha cabeça...hehehehe
Alguém poderia dar-me uma explicação mais prática/acessível sobre a aplicação de regras ligadas ao estado das conexões?
Obrigado.
-
Danilo_Montagna
Visitante
Estado de conexões
NEW - Confere com pacotes que criam novas conexões , ou seja, pacotes que estao com a Flag SYN acesas no pacote IP
ESTABLISHED - Confere com conexões já estabelecidas, , ou seja, pacotes que retornarem com um acknowledgement do pacote SYN..
RELATED - Confere com pacotes relacionados indiretamente a uma conexão, como mensagens de erro icmp, etc.
INVALID - Confere com pacotes que não puderam ser identificados por algum motivo. Como respostas de conexões desconhecidas.
uma boa idéia é vc somente usar eatados de conexoes como RELATED, ESTABLISHED
a regra fica assim para todas as chains..
IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
IPTABLES -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
falow
[ Esta mensagem foi editada por: Danilo_Montagna em 20-06-2003 17:27 ]
-
Estado de conexões
Danilo!
Mas quando uma nova conexão (SYN) é criada, ou estabelecida?
Ao analisar os logs, notei que boa parte dos pacotes (chain FORWARD) que continham a Flag SYN estavam relacionados à porta 110. Logo, eu poderia ter problemas no recebimento de e-mails. Certo???
---------------------
FORFIL_log: IN=eth2 OUT=eth0 SRC=192.168.0.88 DST=200.221.4.7 LEN=48 TOS=0x00 PREC=0x00 TTL=127 ID=46339 DF PROTO=TCP SPT=1128 DPT=110 WINDOW=8192 RES=0x00 SYN URGP=0
----------------------
E as regras que você indicou deverão serem adicionadas no final de cada chain????
Obrigado!
-
Danilo_Montagna
Visitante
Estado de conexões
Mas quando uma nova conexão (SYN) é criada, ou estabelecida?
--------------------------------------------------------------------------------
R.: por default, a porta estando aberta para a rede interna sair na porta 110, o SYN ja esta liberado.. apenas o retorno que tem que ser citado na regra.. que no caso ae será o ESBLISHED..
E as regras que você indicou deverão serem adicionadas no final de cada chain????
----------------------------------------------------------------
R.: conhece aquele ditado... a ordem dos tratores não altera a conheita.. pode ser em qualquer linha da chain..
falow
-
Estado de conexões
Então, para o chain INPUT configurado como DROP, as regras abaixo estão corretas???
###########################################
# Regras para a cadeia INPUT - FILTER #
###########################################
echo -n " Definindo regras da cadeia INPUT........."
#iptables -t filter -A INPUT -m limit --limit 12/m -j LOG --log-prefix "INFIL_log: "
#iptables -t filter -A INPUT -j LOG --log-prefix "INFIL_log: "
# Bloqueia o acesso de alguns computadores
iptables -t filter -A INPUT -s 172.16.0.10 -j DROP
# Aceita todo o tráfego "loopback para loopback"
iptables -t filter -A INPUT -i $LOCALHOST_IF -d $LOCALHOST_IP -j ACCEPT
# Aceita pedidos, via protocolo ICMP, mas com certa limitação
iptables -t filter -A INPUT -p ICMP -m limit --limit 1/s -j ACCEPT
# Aceita conexões via porta 21 (FTP)
iptables -t filter -A INPUT -i $LAN192_IF -p TCP --dport 21 -j ACCEPT
iptables -t filter -A INPUT -i $LAN172_IF -p TCP --dport 21 -j ACCEPT
# Aceita conexões, das redes internas, destinadas à porta 22 (SSH)
iptables -t filter -A INPUT -i $LAN192_IF -p TCP --dport 22 -j ACCEPT
iptables -t filter -A INPUT -i $LAN172_IF -p TCP --dport 22 -j ACCEPT
# Aceita conexões, das redes internas, destinadas à porta 53 (DNS)
iptables -t filter -A INPUT -i $LAN192_IF -p UDP --dport 53 -j ACCEPT
iptables -t filter -A INPUT -i $LAN172_IF -p UDP --dport 53 -j ACCEPT
# Aceita conexões, da internet, originadas da porta 53 (DNS)
iptables -t filter -A INPUT -i $MODEM_IF -p UDP --sport 53 -j ACCEPT
# Aceita conexões, das redes internas, destinadas à porta 8080 (SQUID)
iptables -t filter -A INPUT -i $LAN192_IF -p TCP --dport 8080 -j ACCEPT
iptables -t filter -A INPUT -i $LAN172_IF -p TCP --dport 8080 -j ACCEPT
# Aceita conexões, da internet, originadas da porta 80 (HTTP)
iptables -t filter -A INPUT -i $MODEM_IF -p TCP --sport 80 -j ACCEPT
# Aceita conexões, das redes internas, destinadas ao Broadcast
iptables -t filter -A INPUT -i $LAN192_IF -d $BCAST192_IP -j ACCEPT
iptables -t filter -A INPUT -i $LAN172_IF -d $BCAST172_IP -j ACCEPT
iptables -t filter -A INPUT -s $ETH0_IP -d $BCAST10_IP -j ACCEPT
# Bloqueia novos pacotes TCP que não contenham a flag SYN
iptables -t filter -A INPUT -p TCP ! --syn -m state --state NEW -j DROP
# Aceita pacotes de conexões já estabelecidas ou relacionados a elas
iptables -t filter -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
echo "OK"
===========================
e...valeu pela ajuda...
-
Danilo_Montagna
Visitante
Estado de conexões
SIm, esta ok.. porem.. alguns detalhes..
# Aceita conexões, da internet, originadas da porta 53 (DNS)
iptables -t filter -A INPUT -i $MODEM_IF -p UDP --sport 53 -j ACCEPT
R- pq esta usando --sport? se vc ja tem uma regra de controle de pacotes ESTABLISHED,RELATED isso ae nem precisa... pois por default.. se vc tem uma regra de estado de conexoes.. vc nao precisa mais liberar o retorno dos pacotes de nenhuma regra.. sacou?
# Aceita conexões, da internet, originadas da porta 80 (HTTP)
iptables -t filter -A INPUT -i $MODEM_IF -p TCP --sport 80 -j ACCEPT
R - mesma coisa que eu falei acima..
# Bloqueia novos pacotes TCP que não contenham a flag SYN
iptables -t filter -A INPUT -p TCP ! --syn -m state --state NEW -j DROP
R - essa regra ae pode tirar, ..pois se sua politica padrao esta em DROP, nao precisa fazer regras de DROP.. pois por default.. o que nao tiver regar de ACCEPT já estará bloqueado. incluindo conexoes SYN em portas que nao estarem liberadas..
[]´s
[ Esta mensagem foi editada por: Danilo_Montagna em 23-06-2003 13:28 ]
-
Estado de conexões
Ok, Velhinho...
Comentei aquelas regras e tudo funcionou corretamente...
Valeu pelo esclarecimento sobre o estado das conexões e coisas referêntes a isso...
Já estou pensando em algumas regras mais atrevidas...hehehe
Obrigado!