Script de Firewall

Publicado por leandro bruno teixeira (última atualização em 11/11/2010)

[ Hits: 7.021 ]

Download 4807.firewall




Esse firewall está em pleno uso, em dois servidores que montei, porém ficarei agradecido a todos que venham a mandar atualizações.

Atenciosamente,
Leandro Bruno Teixeira
E-mail: [email protected]

  



Esconder código-fonte

#!/bin/bash
# Autor: Leandro Bruno Teixeira
# E-mail: [email protected]
# Manutenção: Leandro Bruno Teixeira
# Download: http://seusite.com.br/downloads/firewall 
#
# 
#
# Nome do Programa: Script de firewall
#   Funcionalidade do firewall: esse firewall compartilha a internet, abre as portas 22,3128 e
#   Redireciona todo o trafego da porta 80 para a porta do squid 3128, redireciona tudo que vir para #   porta 9000 9001 9002 9003 para o servidor Geovision CFTV ip-10.0.0.6/24.
# 
#
#
#
#
#
# Histórico:
#
# v1.0 17-10-2010
#
#   - Versão inicial
#
#
# 
# Licença: GPL
#
#
#
# Agradecimentos:
#
#   Agradecemos a todos os colaboradores.
#       
# Raphaela lima - Minha namorada ajudou muito :P
# 
#
#
# Limpando as regras
iptables -F
iptables -t filter -F
iptables -t nat -F
iptables -t mangle -F

# Compartilha a conexão pppoe que a na eth0
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

# Abre a porta 22 tcp, para o uso do ssh 
iptables -A INPUT -p tcp --destination-port 22 -j ACCEPT

# Abre a porta 3128 tcp udp, para o uso do squid
iptables -A INPUT -p tcp --destination-port 3128 -j ACCEPT
iptables -A INPUT -p udp --destination-port 3128 -j ACCEPT

# Redireciona todo o trafego da porta 80 para a porta do squid 3128
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -i eth1 -p udp --dport 80 -j REDIRECT --to-port 3128

# redireciona tudo que vir para porta 9000 9001 9002 9003 para o servidor Geovision CFTV ip-10.0.0.6/24
iptables -t nat -A PREROUTING -i ppp0 -p tcp -m tcp --dport 9090 -j DNAT --to-destination 10.0.0.6:9090
iptables -t nat -A PREROUTING -i ppp0 -p tcp -m tcp --dport 9001 -j DNAT --to-destination 10.0.0.6:9001
iptables -t nat -A PREROUTING -i ppp0 -p tcp -m tcp --dport 9002 -j DNAT --to-destination 10.0.0.6:9002
iptables -t nat -A PREROUTING -i ppp0 -p tcp -m tcp --dport 9003 -j DNAT --to-destination 10.0.0.6:9003

# Abre para a rede local
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --syn -s 10.0.0.0/255.255.255.0 -j ACCEPT

# Fecha o resto
iptables -A INPUT -p tcp --syn -j DROP

# Ativando a regra
iptables -t filter -P FORWARD ACCEPT

Scripts recomendados

Limpar arquivos temporários

Teste de desempenho com números primos em BASH

Deletando evicted pods no Kubernetes

Limpa comentários e linhas em branco nos arquivos de configuração (.conf)

Localizar e Matar Determinado Processo Pelo Nome


  

Comentários
[1] Comentário enviado por pochrafa em 13/11/2010 - 13:59h

Fala Leandro, blz cara?

Muito bacana o seu script, mas mudaria a politica do FORWARD pra ter um controle mais efetivo do que as maquinas da sua rede irao acessar. Claro que vai dar um "pouco"mais de trabalho pra vc porque vai precisar monitorar e ver quais portas efetivamente estao sendo usadas para saida.
Outro ponto que nao entendi foi a seguinte linha:
ptables -A INPUT -p udp --destination-port 3128 -j ACCEPT
Porque udp? Pelo que lembro o SQUID roda no 3128/tcp não é ?!

Bom é isso ai !

[2] Comentário enviado por leandrobrunoo em 15/11/2010 - 09:18h

Obrigado,

Eu sou novo nesse mundo Linux, ainda estou começando a criar meus scripts, mais vlw mesmo pela dica, vou da uma olhada na comunidade sobre essas politicas do FORWARD. e vou tambem comentar essa linha
iptables -A INPUT -p udp --destination-port 3128 -j ACCEPT


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts