Script Firewall Completo

Posted by Postado por TECNOLOGIA EM APLICAÇÕES On 12:28

####################################
# Script Atualizado e corrigido por #
# José Renato (ph4h0k) #
####################################

IP_LAN="192.168.10.0/24"

PLACA_REDE_INTERNET="eth0"
PLACA_REDE_LAN="eth2"
IP_FIREWALL_DA_REDE_INTERNA="192.168.10.254/24"
SERVER="192.168.0.13"

IPTABLES="/usr/local/sbin/iptables"

#############################
### carregando os modulos ###
#############################
modprobe ip_tables
modprobe iptable_nat
modprobe ipt_layer7
modprobe ip_tables
modprobe iptable_nat
modprobe ipt_layer7
#######################
### Flush as regras ###
#######################
iptables -F
iptables -Z
iptables -X
iptables -t nat -F

#################################

#####################
### Apagar regras ###
#####################
$IPTABLES -P INPUT DROP
#$IPTABLES -P INPUT ACCEPT
$IPTABLES -P FORWARD ACCEPT
$IPTABLES -P OUTPUT ACCEPT

############################
### Activar o roteamento ###
############################
echo "1" > /proc/sys/net/ipv4/ip_forward

#############################################
### mascarar as redes internas e externas ###
#############################################
$IPTABLES -A POSTROUTING -t nat -o $PLACA_REDE_INTERNET -s $IP_LAN -d 0/0 -j MASQUERADE


#########################
### forward das redes ###
#########################
$IPTABLES -A FORWARD -t filter -o $PLACA_REDE_INTERNET -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -t filter -i $PLACA_REDE_INTERNET -m state --state ESTABLISHED,RELATED -j ACCEPT


#########################
### libera o loopback ###
#########################
$IPTABLES -A OUTPUT -p tcp --syn -s 127.0.0.1/255.0.0.0 -j ACCEPT

############################################
### Ligaçao establizada deve ser mantida ###
############################################
$IPTABLES -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

####################################################
### Permitir ssh da rede interna para a firewall ###
####################################################
$IPTABLES -A INPUT -j ACCEPT -p tcp --dport 222 -s $IP_LAN -i $PLACA_REDE_LAN
$IPTABLES -A OUTPUT -j ACCEPT -p all -d $IP_LAN -o $PLACA_REDE_LAN


####################################################
### Permitir ssh da REDE EXTERNA ###
### libertar só quando necessario ###
####################################################
$IPTABLES -A INPUT -j ACCEPT -p tcp --dport 22 -i $PLACA_REDE_INTERNET
$IPTABLES -A OUTPUT -j ACCEPT -p all -o $PLACA_REDE_INTERNET


################################
### http do sarg na porta 81 ###
################################
$IPTABLES -A INPUT -j ACCEPT -p tcp --dport 81 -s $IP_LAN -i $PLACA_REDE_LAN

###############################################
#### Active Directory ####
###############################################

iptables -A INPUT -s 192.168.10.0/24 -p tcp --dport 139 -j ACCEPT
iptables -A OUTPUT -s 192.168.10.0/24 -p tcp --dport 139 -j ACCEPT
iptables -A INPUT -s 192.168.10.0/24 -p tcp --dport 445 -j ACCEPT
iptables -A OUTPUT -s 192.168.10.0/24 -p tcp --dport 445 -j ACCEPT

iptables -A FORWARD -s 192.168.10.0/24 -d 192.168.0.13 -p tcp --dport 139 -j ACCEPT
iptables -A FORWARD -s 192.168.10.0/24 -d 192.168.0.13 -p tcp --dport 445 -j ACCEPT

iptables -A FORWARD -s 192.168.0.13 -p tcp -d 192.168.10.0/24 --dport 139 -j ACCEPT
iptables -A FORWARD -s 192.168.0.13 -p tcp -d 192.168.10.0/24 --dport 445 -j ACCEPT


###########################################
### tentar abrir as portas para o proxy ###
### verificar se é mesmo preciso ###
###########################################
$IPTABLES -A INPUT -p tcp --destination-port 3128 -j ACCEPT
$IPTABLES -A INPUT -p udp --destination-port 53 -j ACCEPT
$IPTABLES -A INPUT -p tcp --destination-port 3130 -j ACCEPT
$IPTABLES -A INPUT -p tcp --destination-port 53 -j ACCEPT
$IPTABLES -A INPUT -p tcp --destination-port 80 -j ACCEPT
$IPTABLES -A INPUT -p tcp --dport 53 -j ACCEPT
$IPTABLES -A INPUT -p udp --dport 53 -j ACCEPT

$IPTABLES -A INPUT -p tcp --dport 20 -j ACCEPT
$IPTABLES -A INPUT -p tcp --dport 21 -j ACCEPT
$IPTABLES -A INPUT -p udp --dport 20 -j ACCEPT
$IPTABLES -A INPUT -p udp --dport 21 -j ACCEPT

$IPTABLES -A INPUT -p udp --dport 389 -j ACCEPT
$IPTABLES -A INPUT -p udp --dport 636 -j ACCEPT
$iptables -A INPUT -p tcp --dport 80 -j ACCEPT

#############################
### permitir dns externos ###
#############################
$IPTABLES -A FORWARD -p udp --dport 53 -j ACCEPT
$IPTABLES -A FORWARD -p tcp --dport 53 -j ACCEPT

#############################################
### permitir o forward para o smtp e pop3 ###
#############################################
$IPTABLES -A FORWARD -p tcp --dport 25 -j ACCEPT
$IPTABLES -A FORWARD -p tcp --dport 110 -j ACCEPT


###############################################
### Reancaminhar o trafego pela proxy squid ###
###############################################

$IPTABLES -t nat -A PREROUTING -i $PLACA_REDE_LAN -d ! $IP_FIREWALL_DA_REDE_INTERNA -p tcp --dport 80 -j REDIRECT --to-port 3128


###############################################
### LIGAÇÕES TERMINAL SERVER para o servidor ###
###############################################
$IPTABLES -t nat -A PREROUTING -i $PLACA_REDE_INTERNET -p tcp --dport 3389 -j DNAT --to 192.168.10.67
$IPTABLES -A FORWARD -p tcp --destination-port 3389 -j ACCEPT


######################################
### permitir a resposta do firwall ###
######################################

$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

echo "Firewall Inicializada"



Fonte: Viva o linux