quinta-feira, 5 de julho de 2007

Modelo de Firewall IPTABLES

#!/bin/bash

# Script de firewall - MODELO
# Criado por: Humberto Saback Junior
# Em: 07/07/2007
# Alterado por: Humberto Saback Junior
# Em: 07/07/2007

# Carrega o modulo da conntrack
modprobe ip_conntrack

# Carrega o modulo de encriptacao da VPN
modprobe ppp-mppe

# Limpa as regras de firewall existentes

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X

# Habilita o repasse de pacotes

echo 1 > /proc/sys/net/ipv4/ip_forward

# Seta o valor maximo da conntrack para um aceitavel

echo 5000000 > /proc/sys/net/ipv4/ip_conntrack_max

# Sobe a interface eth0 com um IP invalido

ifconfig eth0 up
ifconfig eth0 169.254.254.254 netmask 255.255.255.254

# Carrega o modulo de VLAN e adiciona as VLAN's que o servidor faz parte

modprobe 8021q
vconfig add eth0 4
vconfig add eth0 208

# Configura as interfaces de rede de VLAN
ifconfig eth0.4 10.251.2.1 netmask 255.255.254.0
ifconfig eth0.208 10.9.208.30 netmask 255.255.255.0

# Adiciona a rota default
route add -net default gw 10.9.208.1


# Faz PAT da porta 5900 para o servidor do cinema
iptables -t nat -A PREROUTING -i eth0.208 -p tcp --dport 5900 -j DNAT --to-destination 10.251.2.31

# Regra liberando apenas a rede da INGRESSO para ser colocada apos os testes
#iptables -t nat -A PREROUTING -i eth0.208 -s XXX.XXX.XXX.XXX/32 -p tcp --dport 5900 -j DNAT --to-destination 10.251.2.31

# Direciona o trafego para o proxy transparente
iptables -t nat -A PREROUTING -s 10.251.2.0/23 -p tcp --dport 80 -j REDIRECT --to-port 3128

# Dropa as requisicoes que tentem passar por fora do proxy
iptables -A INPUT -p tcp --dport 80 -j DROP

# Mascara as outras conexoes de saida
iptables -t nat -A POSTROUTING -o eth0.208 -j MASQUERADE