Logo Hardware.com.br
arthas_dk
arthas_dk Super Participante Registrado
871 Mensagens 29 Curtidas

Dúvida simples com firewall

#1 Por arthas_dk 21/11/2010 - 13:31
Boa Tarde,

Estou com uma dúvida em uma configuração de um firewall que estou fazendo em um computador de casa. O cenário é o seguinte:

Eu tenho um túnel para um computador remoto na minha porta local 3724 (fiz utilizando o ssh, é um tunnel local).

Eu gostaria que somente as conexões através dessa porta pudessem ser utilizadas, colocando as políticas do INPUT e OUTPUT como drop.

A minha conexão é ADSL (ppp0).

O firewall que configurei é esse:


# Setando as regras padrões para as tabelas
iptables -P INPUT DROP
iptables -P OUTPUT DROP

echo "Setting iptables INPUT rules........... [OK]"

#Regras de Segurança e configuração

iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
echo 0 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
iptables -A INPUT -m state --state INVALID -j DROP

#Regras de entrada e interfaces locais

iptables -A INPUT -i lo -p ALL -j ACCEPT
iptables -A INPUT -i ppp0 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp --syn -j REJECT
iptables -A INPUT -p udp --dport 0:1023 -j REJECT

#echo "Setting iptables OUTPUT rules........... [OK]"
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -p tcp --sport 0:65535 --dport 3724 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 2220 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 1863 -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT

Perguntas:

1) Para poder usar o DROP na política do INPUT o único jeito que consegui foi fazer:

iptables -A INPUT -i ppp0 -m state --state ESTABLISHED -j ACCEPT

Mas tenho impressão que torna a entrada do firewall uma peneira ... Estou Certo?

2) Caso o firewall esteja uma peneira por conta disso como devo fazer para que o computador continue a navegar, utilizar dns ,etc utilizando a política DROP para o INPUT?


Desde já agradeço a atenção de todos!
Motherboard G8-IRX (Intel ICH2)
Processador Intel Pentium 4 1.70 GHZ
2GB RAM SAMSUNG DDR 4266
SAMSUNG 20GB
2 x SAMSUNG 40GB
GRAVADORA DE DVD LG H-20N
Geforce FX 5500, 256 MB AGP

SO:

Debian Lenny + Kernel 2.6.25-rt8 | Slackware 12 +Kernel 2.6.25-rt8
Arathor
Arathor Membro Junior Registrado
53 Mensagens 2 Curtidas
#2 Por Arathor
21/11/2010 - 17:28
arthas_dk disse:
Perguntas:

1) Para poder usar o DROP na política do INPUT o único jeito que consegui foi fazer:

iptables -A INPUT -i ppp0 -m state --state ESTABLISHED -j ACCEPT

Mas tenho impressão que torna a entrada do firewall uma peneira ... Estou Certo?

2) Caso o firewall esteja uma peneira por conta disso como devo fazer para que o computador continue a navegar, utilizar dns ,etc utilizando a política DROP para o INPUT?


Desde já agradeço a atenção de todos!


mano, apesar de gostar muito de linux, especialmente do iptables estou ainda iniciando na área, mas tava avaliando seu script, não pude testar que estou sem meu note, mas me interessei, vc pode me explicar como seria uma peneira?nao_sei.gif
e sobre a navegação, creio para que haja navegação vc tem que deixar uns portas de "INPUT" aberta, tais como a tcp->21(FTP, se for usar), tcp e udp->53(DNS),tcp->80(HTTP), tcp->443(HTTPS) e portas altas udp que são utilizadas para resposta de DNS.
isso se tratanto apenas somente de navegação.

Realmente espero ter ajudado, qualquer coisa posta ai
mshonorato
mshonorato General de Pijama Registrado
3.8K Mensagens 156 Curtidas
#3 Por mshonorato
22/11/2010 - 10:35
Eu aconselho vc colocar uma linha "iptables -P FORWARD DROP" também pois não vi em seu script.

E para abrir entrada somente pelo tunel que vc criou, acredito que seja assim:

iptables -A INPUT -p tcp --dport 3724 -j ACCEPT

E caso esse fw seja uma máquina separada por onde os acessos passarão por ele para chegar em outra máquina, insira a linha abaixo também.

iptables -A FORWARD -p tcp --dport 3724 -j ACCEPT

Coloquei no link abaixo, um scritp bem básico de iptables mas que pode te ajudar.

http://mshonorato.t35.com/iptables-basico.php
Marcos Honorato
Debian Bullseye
kubuntu 22.04.2 LTS
jqueiroz
jqueiroz Cyber Highlander Registrado
104K Mensagens 5.7K Curtidas
#4 Por jqueiroz
23/11/2010 - 15:40
Eu tenho um túnel para um computador remoto na minha porta local 3724 (fiz utilizando o ssh, é um tunnel local).

Eu gostaria que somente as conexões através dessa porta pudessem ser utilizadas, colocando as políticas do INPUT e OUTPUT como drop.

O túnel passa por uma interface especial (tun0 ou tap0). Use essa interface para filtrar os pacotes que podem entrar ou sair.

PS: Não bloqueie os pacotes que entram ou saem pela interface loopback, ou seu sistema vai ficar irritantemente lento.
"chmod 777 nunca ajudou ninguém" (c) 2002-2021 JQueiroz/FGdH
Conheça o Blog do Zekke
jqueiroz
jqueiroz Cyber Highlander Registrado
104K Mensagens 5.7K Curtidas
#6 Por jqueiroz
23/11/2010 - 20:25
Não, estou dizendo que se vc cria uma VPN, ela é criada em torno de uma dessas interfaces (p.ex. tun0).

Se bem que, relendo agora, vc está usando o SSH, ele não cria um túnel, e sim um redirecionamento.

Sendo um redirecionamento SSH, ele redireciona uma porta do "localhost", então vc poderia bloquear as interfaces ethX, pra todas as portas, exceto aquelas que vc está usando pra conexão SSH original.
"chmod 777 nunca ajudou ninguém" (c) 2002-2021 JQueiroz/FGdH
Conheça o Blog do Zekke
arthas_dk
arthas_dk Super Participante Registrado
871 Mensagens 29 Curtidas
#7 Por arthas_dk
24/11/2010 - 10:35
Acredito que eu tenha entendido hehe

Vou testar home quando chegar em casa e dou um retorno.

Mas já vou agredecendo a atenção dispensada.
Motherboard G8-IRX (Intel ICH2)
Processador Intel Pentium 4 1.70 GHZ
2GB RAM SAMSUNG DDR 4266
SAMSUNG 20GB
2 x SAMSUNG 40GB
GRAVADORA DE DVD LG H-20N
Geforce FX 5500, 256 MB AGP

SO:

Debian Lenny + Kernel 2.6.25-rt8 | Slackware 12 +Kernel 2.6.25-rt8
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal