Firewall Iptables
Publicado por Joel Silva da Silva Junior 02/04/2009
[ Hits: 8.006 ]
Script para Iptables.
#!/bin/bash ################################# # Firewall - V.3 # # Write by: Joel Silva # # Mail: sonic_novel@hotmail.com # # Manaus-AM # ################################# ############################# # Programas: # ############################# firewall=/root/firewall.sh iptables=/usr/sbin/iptables modprobe=/sbin/modprobe ################################ # Parametros da Rede: # ################################ NET_IF=eth0 LAN_IF=eth1 PORTAS_LIBERADAS="20,21,22,143,443,80,25,110,8080" IP_SOURCE="192.168.100.0/24" IP_LIBERADO="/etc/firewall/ips" IP_BLOQUEADO="/etc/firewall/bloqueados" ############################### # Carregando Modulos: # ############################### $modprobe ip_tables $modprobe ip_nat $modprobe ip_nat_ftp $modprobe ip_conntrack_ftp $modprobe ipt_MASQUERADE $modprobe ipt_REJECT $modprobe ipt_LOG $modprobe iptable_filter $modprobe arp_tables $modprobe ipt_TOS ################################ # Parametros do Firewall: # ################################ echo " Ativando Roteamento de Pacotes no Kernel: " echo "1" > /proc/sys/net/ipv4/ip_forward echo " Feito! " firewall_stop () { if [ -ex $firewall ]; then $firewall_stop echo " Limpando Regras! " echo " Feito! " fi } ########################################## ########################################## ########################################## ########################################## firewall_start () { if [ -ex $firewall ]; then echo " Iniciando Firewall " $firewall_start echo " Firewall Iniciado " fi } echo " Liberando Conexoes: " for i in `cat $IP_LIBERADO`; do STATUS=`echo $i | cut -d '-' -f 1` IP=`echo $i | cut -d '-' -f 2` CLIENTE=`echo $i | cut -d '-' -f 3` if [ $STATUS="a" ]; then $iptables -A INPUT -s $IP -d 0/0 -j ACCEPT $iptables -A FORWARD -s $IP -d 0/0 -j ACCEPT $iptables -A OUTPUT -s $IP -d 0/0 -j ACCEPT $iptables -t nat -A POSTROUTING -s $IP -d 192.168.100.254 -j MASQUERADE $iptables -t nat -A PREROUTING -p tcp -d $IP --dport 80 \ -j REDIRECT --to-ports 8080 fi done echo " PERMITIDO - IP:[$IP] - CLIENTE: [$CLIENTE] " for i in `cat $IP_BLOQUEADO`;do STATUS=`echo $i | cut -d '-' -f 1` IP=`echo $i | cut -d '-' -f 2` CLIENTE=`echo $i | cut -d '-' -f 3` ############################################## ############################################## echo " Bloqueando Conexoes: " if [ $STATUS="b" ]; then $iptables -A INPUT -s $IP -d 0/0 -j REJECT fi done echo " BLOQUEADO - IP: [$IP] - CLIENTE: [$CLIENTE] " ####################################################### ####################################################### echo " Liberando Portas: " $iptables -A INPUT -m multiport -p tcp --port $PORTAS_LIBERADAS -j ACCEPT $iptables -A FORWARD -m multiport -p tcp --port $PORTAS_LIBERADAS -j ACCEPT $iptables -A OUTPUT -m multiport -p tcp --port $PORTAS_LIBERADAS -j ACCEPT echo " Feito! " ####################################################### ####################################################### ########################## # Regras de Start/Stop # ########################## case "$1" in 'start') $firewall_start ;; 'stop') $firewall_stop $iptables -F $iptables -F -t nat $iptables -F -t filter ;; 'restart') $firewall_stop $firewall_start ;; *) echo " Usage $0 start | stop | restart " ;; esac
NetScan - o seu scanner de rede!
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Falha com leitor de digitais no Ubuntu: sugestões? (0)
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (1)