Iptables (rc.firewall)
Iptables com opções de proxy transparente.
Categoria: Segurança
Software: Iptables
[ Hits: 16.875 ]
Por: Perfil removido
Iptables com proxy tarnsparente e internet para a rede local liberada! Yeah! :)
Para este script o seu "servidor" deve ter na eth0 sua interface de internet e na eth1 a conexão com a rede local. Além disso deve estar rodando o squid na porta padrão (3128). O squid vai controlar apenas as conexões para HTTP, mas se você quiser usar para o FTP também, basta configurar o squid e adicionar uma linha de redirecionamento da porta 21 para 3128 na cadeia FORWARD.
#!/bin/bash # Script de Firewall ##################################### ### Passo 1: Primeiro vamos arrumar a casa :) ### ##################################### # Limpando as Regras iptables -F INPUT iptables -F OUTPUT iptables -F FORWARD # Definindo a Politica Default das Cadeias iptables -P INPUT DROP iptables -P OUTPUT ACCEPT iptables -P FORWARD DROP ###################################### ### Passo 2: Antes de Servir, vamos nos proteger ! ### ###################################### # Desabilitando o trafego IP Entre as Placas de Rede echo "0" > /proc/sys/net/ipv4/ip_forward # Configurando a Protecao anti-spoofing echo "Setting anti-spoofing .....[ OK ]" for spoofing in /proc/sys/net/ipv4/conf/*/rp_filter; do echo "1" > $spoofing done ####################################### ### Passo 3: Carregando os modulos do iptables ### ####################################### modprobe ip_tables modprobe iptable_filter modprobe iptable_mangle modprobe iptable_nat modprobe ipt_MASQUERADE echo "Setting rules .............[ OK ]" ####################################### ### Passo 4: Agora, vamos definir o que pode passar e o que nao ### ####################################### # Cadeia de Entrada. Esta cadeia, so vale para o proprio host # Qualquer pacote IP que venha do localhost, Ok. iptables -A INPUT -i lo -j ACCEPT # REDE INTERNA LIBERADA iptables -A INPUT -i eth1 -j ACCEPT # No iptables, temos de dizer quais sockets sao validos em uma conexao iptables -A INPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT # Cadeia de Reenvio (FORWARD) # Primeiro, ativar o mascaramento (nat). iptables -t nat -F POSTROUTING iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE # Agora dizemos quem e o que podem acessar externamente # No iptables, o controle do acesso a rede externa e feito na cadeia "FORWARD" # Redireciona porta 80 para 3128 (squid) iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128 # REDE INTERNA LIBERADA iptables -A FORWARD -i eth1 -j ACCEPT # No iptables, temos de dizer quais sockets sao validos em uma conexao iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT ######################################## ### Finalmente, podemos "Ligar" o foward (clientes) :) ### ######################################## # Habilitando o trafego Ip, entre as Interfaces de rede echo "1" > /proc/sys/net/ipv4/ip_forward echo "Firewall OK ...............[ OK ]"
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
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
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
[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