Ajuda em regra para firewall [RESOLVIDO]

1. Ajuda em regra para firewall [RESOLVIDO]

Vanderlei Leal
VLeal

(usa Outra)

Enviado em 05/03/2010 - 08:35h

Bom dia.

Preciso bloquear uma lista de ip´s e deixar liberado apenas para alguns usuarios,
então fiz esta regra com base em pesquisa na internet:

for ip in ip.livre.um ip.livre.dois ...
do
iptables -A FORWARD -d ip.bloqueado.um -p udp ! -s $ip -j DROP
iptables -A FORWARD -d ip.bloqueado.um -p tcp ! -s $ip -j DROP
iptables -A FORWARD -d ip.bloqueado.dois -p udp ! -s $ip -j DROP
iptables -A FORWARD -d ip.bloqueado.dois -p tcp ! -s $ip -j DROP
...
done

Alguem poderia me dizer se esta regra esta correta?
Se não poderia me dizer como corrijo para fazer o bloqueio com as excessões?
Obrigado




  


2. Re: Ajuda em regra para firewall [RESOLVIDO]

Eduardo Paim Silveira
eduardo

(usa Linux Mint)

Enviado em 05/03/2010 - 09:26h

Porque você utilizou esse for? Acho que não vai funcionar.

Você pode fazer essas regras para bloquear por IP.
iptables -A FORWARD -d ip.bloqueado.um -p udp ! -s $ip -j DROP
iptables -A FORWARD -d ip.bloqueado.um -p tcp ! -s $ip -j DROP

E essas para liberar.
iptables -A FORWARD -d ip.liberado.um -p udp ! -s $ip -j ACCEPT
iptables -A FORWARD -d ip.liberado.um -p tcp ! -s $ip -j ACCEPT

Ou você pode liberar acima e bloquear todo o resto da rede. Assim você diminui o número de regras.


3. Re: Ajuda em regra para firewall [RESOLVIDO]

Vanderlei Leal
VLeal

(usa Outra)

Enviado em 05/03/2010 - 09:54h

thedrummer, obrigado pela atenção.

Então, a lista de ip´s bloqueados tem uns 20 ip´s, e eu queria liberar o acesso apenas para uns 5 e bloquear para o resto.
Não manjo de iptables, fui montando a regra com o que li e pesquisei na net.
Mas vou ver isto que vc me passou, vlw.


4. Re: Ajuda em regra para firewall [RESOLVIDO]

Davi Rodrigues
davirodrigues

(usa Debian)

Enviado em 05/03/2010 - 11:06h

Assim se são 20 ips realmente, por que vc não utiliza a politica do firewall como DROP e libera somente o que vc quer quer passe tipo assim...

iptables -P FORWARD DROP
iptables -I FORWARD -d ip.liberado.um -j ACCEPT

Fazendo dessa forma vc estará bloqueando tudo para FORWARD (passagem), e deixando passar somente o que vc quer...eu acho que seria mais simples, assim, outra coisa vi que no seu script vc estava liberando tudo para UDP e TCP, então quando se quer fazer isto, não precisa especificar, pois ele vai entender como ANY (tudo), ok?

qualquer dúvida entre em contato.


5. Re: Ajuda em regra para firewall [RESOLVIDO]

Vanderlei Leal
VLeal

(usa Outra)

Enviado em 06/03/2010 - 11:08h

Vamos começar do inicio...
Estou tentando bloquear o skype, mas deixar liberado para uns 5 usuários da minha rede.
Tentei pelo L7 e funcionou...
Bloqueou o skype... e junto com ele ssh, smtp, ftp, acesso ao aplicativo ERP pela filial, etc...
Os problemas com smtp, ssh e do erp eu consegui consertar, mas agora ele ta bloqueando a conectividade social!
Ai tentei outra abordagem, achei uma lista de ip´s em um forum ( http://forums11.itrc.hp.com/service/forums/questionanswer.do?admit=109447626+1267883892068+28353475&..., e mais alguns que eu achei pela internet e pelo SARG e fiz uma lista para bloquear apenas o acesso ao skype, testei pareceu funcionar, ai tentei fazer uma regra para poder liberar o acesso a estes endereços para os usuários que tem que usar o skype.
Mas agora nem esta lista esta mais bloqueando a conexão, ele funciona do mesmo jeito.
Tentei redirecionar ele para um ip inválido, mas também não funcionou ou eu não soube fazer (o mais provavel).
Tentei forçar ele a usar uma unica porta de saida, mas não consegui montar esta regra, não soube como fazer.
Tentei tambem umas regras pelo SQUID (que achei aqui no forum e outras), mas tambem não funcionaram.
Se alguem conseguiu fazer isto e puder ajudar, agradeço.
Eu uso o BrazilFW com SQUID, tenho o L7 e uso o SARG para gerar relatórios.
Se precisarem de outras informções por favor peçam.
Obrigado


6. Re: Ajuda em regra para firewall [RESOLVIDO]

Vanderlei Leal
VLeal

(usa Outra)

Enviado em 10/03/2010 - 10:50h

Bom dia a todos.

Depois de muita briga consegui alguma coisa.
Os serviços (e-mail, ssh, etc), acessos a servidores e conectividade social estão funcionando, tenho ainda problemas com alguns sites mas acho que agora já mais fácil para resolver...
A todos que estão sofrendo com este problema segue o meu script do firewall:

# Conectividade Social e outros bichos
iptables -t mangle -A POSTROUTING -s 192.168.0.0/24 -d 200.201.174.0/24 -j ACCEPT # Conectividade
iptables -t mangle -A POSTROUTING -s 192.168.0.0/24 -d 74.125.47.121/0 -j ACCEPT # mapeia 1
iptables -t mangle -A POSTROUTING -s 192.168.0.0/24 -d 200.234.200.182/0 -j ACCEPT # mapeia 2
iptables -t mangle -A POSTROUTING -s 192.168.0.0/24 -d www.mapeia.com.br -j ACCEPT # mapeia 3
iptables -t mangle -A POSTROUTING -s 192.168.0.0/24 -d www.averbweb.com.br -j ACCEPT # averbweb
iptables -t mangle -A POSTROUTING -s 192.168.0.0/24 -d maps.google.com.br -j ACCEPT # google maps 1
iptables -t mangle -A POSTROUTING -s 192.168.0.0/24 -d maps.google.com -j ACCEPT # google maps 2
iptables -t mangle -A POSTROUTING -s 192.168.0.0/24 -d pagead2.googlesyndication.com -j ACCEPT # google maps 3
iptables -t mangle -A POSTROUTING -s 192.168.0.0/24 -d partner.googleadservices.com -j ACCEPT # google maps 4
####### eu coloquei aqui também os ips fixos da matriz e filiais para aceitar conexões externas e internas

# Libera portas de trabalho
iptables -t mangle -A POSTROUTING -m layer7 --l7proto pop3 -j ACCEPT
iptables -t mangle -A POSTROUTING -m layer7 --l7proto smtp -j ACCEPT
iptables -t mangle -A POSTROUTING -m layer7 --l7proto ssh -j ACCEPT
iptables -t mangle -A POSTROUTING -m layer7 --l7proto ftp -j ACCEPT

# Servidores (pra não zicar conexões externas)
iptables -t mangle -A POSTROUTING -s 192.168.0.x -d 0/0 -m layer7 --l7proto skypetoskype -j ACCEPT
iptables -t mangle -A POSTROUTING -s 192.168.0.x -d 0/0 -m layer7 --l7proto skypeout -j ACCEPT
iptables -t mangle -A POSTROUTING -s 0/0 -d 192.168.0.x -m layer7 --l7proto skypetoskype -j ACCEPT
iptables -t mangle -A POSTROUTING -s 0/0 -d 192.168.0.x -m layer7 --l7proto skypeout -j ACCEPT
iptables -t mangle -A POSTROUTING -s 192.168.0.y -d 0/0 -m layer7 --l7proto skypetoskype -j ACCEPT
iptables -t mangle -A POSTROUTING -s 192.168.0.y -d 0/0 -m layer7 --l7proto skypeout -j ACCEPT
iptables -t mangle -A POSTROUTING -s 0/0 -d 192.168.0.y -m layer7 --l7proto skypetoskype -j ACCEPT
iptables -t mangle -A POSTROUTING -s 0/0 -d 192.168.0.y -m layer7 --l7proto skypeout -j ACCEPT

# Libera Skype por IP (pessoas que podem usar o skype)
iptables -t mangle -A POSTROUTING -s 192.168.0.w -d 0/0 -m layer7 --l7proto skypetoskype -j ACCEPT
iptables -t mangle -A POSTROUTING -s 192.168.0.w -d 0/0 -m layer7 --l7proto skypeout -j ACCEPT
iptables -t mangle -A POSTROUTING -s 0/0 -d 192.168.0.w -m layer7 --l7proto skypetoskype -j ACCEPT
iptables -t mangle -A POSTROUTING -s 0/0 -d 192.168.0.w -m layer7 --l7proto skypeout -j ACCEPT
iptables -t mangle -A POSTROUTING -s 192.168.0.z -d 0/0 -m layer7 --l7proto skypetoskype -j ACCEPT
iptables -t mangle -A POSTROUTING -s 192.168.0.z -d 0/0 -m layer7 --l7proto skypeout -j ACCEPT
iptables -t mangle -A POSTROUTING -s 0/0 -d 192.168.0.z -m layer7 --l7proto skypetoskype -j ACCEPT
iptables -t mangle -A POSTROUTING -s 0/0 -d 192.168.0.z -m layer7 --l7proto skypeout -j ACCEPT

# Bloqueia Skype para toda a rede
iptables -t mangle -A POSTROUTING -m layer7 --l7proto skypeout -j DROP
iptables -t mangle -A POSTROUTING -m layer7 --l7proto skypetoskype -j DROP

iptables -t mangle -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT



Usei a mesma tabela (mangle) e chain (postroute) para toda a regra, senão funcionava uma coisa mas outra não ou nem funcionava.
Se alguem puder melhorar eu agradeço.
Com certeza vai dar outros problemas, vai depender do que voce pretende liberar ou não terá que inserir nas regras acima.
A todos que colaboram até agora obrigado.
T+






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts