Iptables (firewall)
Script firewall com suporte a proxy transparente
Categoria: Init
Software: Iptables
[ Hits: 13.386 ]
Por: Perfil removido
Script firewall com suporte a proxy transparente, possui liberação das portas 21, 22, 80 para o servidor firewall, além de oferecer as opções de start, stop, restart do firewall.
#!/bin/bash iniciar(){ #carregando modulo no kernel modprobe iptable_nat #compartilhando a conexao echo 1 > /proc/sys/net/ipv4/ip_forward iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE #echo "compartilhamento de rede ativo" #proxy transparente iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128 #echo "proxy transparente ativo" #permitindo as conexoes na interfce de rede local e na porta 22, 21 e 80 deste computador iptables -A INPUT -i eth0 -j ACCEPT iptables -A INPUT -p tcp --dport 22 -j ACCEPT iptables -A INPUT -p tcp --dport 80 -j ACCEPT iptables -A INPUT -p tcp --dport 21 -j ACCEPT # Protege contra synflood echo "1" > /proc/sys/net/ipv4/tcp_syncookies # Protecao contra ICMP Broadcasting echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts # Protecao diversas contra portscanners, ping of death, ataques DoS, pacotes danificados e etc. iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT iptables -A FORWARD -p tcp -m limit --limit 1/s -j ACCEPT iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT iptables -A FORWARD --protocol tcp --tcp-flags ALL SYN,ACK -j DROP iptables -A FORWARD -m unclean -j DROP iptables -A INPUT -m state --state INVALID -j DROP iptables -N VALID_CHECK iptables -A VALID_CHECK -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP iptables -A VALID_CHECK -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP iptables -A VALID_CHECK -p tcp --tcp-flags ALL ALL -j DROP iptables -A VALID_CHECK -p tcp --tcp-flags ALL FIN -j DROP iptables -A VALID_CHECK -p tcp --tcp-flags SYN,RST SYN,RST -j DROP iptables -A VALID_CHECK -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP iptables -A VALID_CHECK -p tcp --tcp-flags ALL NONE -j DROP #Esta regra e a + importante deste firewall, #bloqueia tudo que nao tenha sido liberado acima iptables -A INPUT -p tcp --syn -j DROP echo "####################################" echo "#Compartilhamento de Internet e Firewall Carregados#" echo "# Firewall Ativo e Verificando ! #" echo "#------------------------------------------------------------#" echo "# Tássio Ferenzini M. Sirqueira #" echo "# tassio@tassio.eti.br #" echo "###################################" } parar(){ iptables -F iptables -t nat -F iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT echo 0 > /proc/sys/net/ipv4/ip_forward echo " " echo "#################################" echo "#Compartilhamento de Internet e Firewall Parados#" echo "# Firewall Desativado #" echo "#--------------------------------------------------------#" echo "# Tássio Ferenzini M. Sirqueira #" echo "# tassio@tassio.eti.br #" echo "#################################" } case "$1" in "start") iniciar ;; "stop") parar ;; "restart") parar; iniciar ;; *) echo "Use os parametros start, stop ou restart" esac
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
E a guerra contra bots continua
Tradução do artigo do filósofo Gottfried Wilhelm Leibniz sobre o sistema binário
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
Instalando o FreeOffice no LMDE 6
Anki: Remover Tags de Estilo HTML de Todas as Cartas
Colocando uma opção de redimensionamento de imagem no menu de contexto do KDE
Reinstalei o Debian 12 e a particao /home foi formatada: recuperando s... (5)
Debian Bookworm para a versão beta Debian 13 Trixie (6)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba