Leandrops
(usa Ubuntu)
Enviado em 23/03/2013 - 16:28h
olá galera!
faz dias que estou tentando fazer uma rede acessar a internet passando pelo firewall...mais está complicado... vou colocar meu script para vcs dá uma olhada, quem poder ajudar ai agradeço...Esse script não foi eu que fiz, achei por ai e fiz algumas mudanças...
minha versão é iptables v1.4.12, e uso Ubuntu 12.04...
Quando eu coloca tudo com policas ACCEPT, eu consigo acessar internet de qualquer host na rede.
---------------------------------------------------
#!/bin/bash
######################
# DECLARANDO AS VARIÁVEIS #
######################
# Interface de rede ligada a internet
IFACE_WEB="eth0"
# Interface de rede ligada a rede interna
IFACE_REDE="eth1"
# Rede interna
REDE_INTERNA="192.168.0.0/24"
# Portas liberadas TCP
PORTAS_TCP="20,21,53,80,443"
# Portas liberadas UDP
PORTAS_UDP="53"
# Portas liberadas para a rede interna
PORTAS_REDE_INTERNA="80,25,110"
iniciar(){
# Limpa todas as regras
iptables -F
iptables -t nat -F
iptables -t mangle -F
#exclui chains criadas
iptables -t filter -X
iptables -t nat -X
iptables -t mangle -X
#zera contador
iptables -t filter -Z
iptables -t nat -Z
iptables -t mangle -Z
modprobe iptable_nat
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
modprobe ipt_LOG
modprobe ipt_REJECT
modprobe ipt_MASQUERADE
echo "Carga dos Modulos OK!"
iptables -t nat -A POSTROUTING -s REDE_INTERNA -o IFACE_WEB -j MASQUERADE
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
echo " INPUT DROP, OUTPUT DROP, FORWARD DROP, OK! "
###############
# REGRAS DE INPUT #
###############
# Libera o acesso SSH de qualquer origem
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# Aceita ping apenas da rede interna
iptables -A INPUT -s $REDE_INTERNA -p icmp --icmp-type 8 -j ACCEPT
#libera trafego rede interna
iptables -A INPUT -i eth1 -j ACCEPT
#libera tráfego local
iptables -A INPUT -i lo -j ACCEPT
################
# REGRAS DE OUTPUT #
################
# Libera as portas constantes na variável $PORTAS_TCP
iptables -A OUTPUT -p tcp -m multiport --dports $PORTAS_TCP -j ACCEPT
# Libera ping para qualquer lugar
iptables -A OUTPUT -p icmp --icmp-type 8 -j ACCEPT
##################
# REGRAS DE FORWARD #
#################
# Libera as portas constantes em na variável $PORTAS_REDE_INTERNA (para liberar mais portas, basta inserir as mesmas na variável citada)
iptables -A FORWARD -p tcp -m multiport --dports $PORTAS_REDE_INTERNA -j ACCEPT
# Libera RDP citado na regra de NAT
iptables -A FORWARD -p tcp --dport 3389 -d 10.0.0.5 -j ACCEPT
# FINAL DA FUNÇÃO START #
}