Autor Tópico: Ubuntu Server - Iptables dando pau  (Lida 2621 vezes)

Offline jadirorza

  • Usuário Ubuntu
  • *
  • Mensagens: 9
    • Ver perfil
Ubuntu Server - Iptables dando pau
« Online: 13 de Novembro de 2006, 23:05 »
Olá galera.
Seguinte. To rodando um Ubuntu server aqui na minha prefeitura. O iptables rola legal, só que tem alguns serviços que são liberados, e de vez em quando ele fecha tudo, só rola a navegação pelo proxy. Aí não tem o que dê jeito. Só um init 6 mesmo. Segue aí o meu firewall pra vcs verem se tem algo errado:

Citar

###############INÍCIO

#!/bin/bash

#check dos modulos necessarios
modprobe iptable_nat
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
modprobe ip_conntrack
modprobe ipt_MASQUERADE


#ativação do repasse de pacotes
echo 1 > /proc/sys/net/ipv4/ip_forward


#Restart do iptables
iptables -F
iptables -Z
iptables -t nat -F
iptables -t filter -P INPUT ACCEPT
iptables -t filter -P FORWARD DROP


LINK='eth0'
REDE='eth1'


#Redes certificadas
TRUSTED_NETWORKS='192.168.0.0/16'
for NETWORK in $TRUSTED_NETWORKS; do
iptables -t filter -A INPUT -i $REDE -s $NETWORK -d 0/0 -j ACCEPT
iptables -t filter -A OUTPUT -o $REDE -s $NETWORK -d 0/0 -j ACCEPT
done


#Portas abertas para acesso externo
# 20 e 21 ftp
# 80 www (webserver)
PORT_PERM='20 21 80'
for PORT in $PORT_PERM; do
iptables -t filter -A INPUT -p tcp --destination-port $PORT -j ACCEPT
done


#Forward de portas
# 9090 para 80 no 192.168.1.3 - Portal IPM
# 35133, 35233, 35433 e 35460 para 192.168.1.61 - Compartilhamento de
arquivo
PORT_FORWARD='9090:192.168.1.3:80:tcp 35133:192.168.1.61:35133:tcp
35233:192.168.1.61:35233:udp 35433:192.168.1.61:35433:tcp
35460:192.168.1.61:35460:tcp'
for PFWD in $PORT_FORWARD; do
PROTOCOL=`echo "$PFWD" | cut -d: -f4`
EXT_PORT=`echo "$PFWD" | cut -d: -f1`
INT_PORT=`echo "$PFWD" | cut -d: -f3`
HOST_IP=`echo "$PFWD" | cut -d: -f2`
iptables -t filter -A INPUT -p $PROTOCOL -d $HOST_IP --destination-port
$EXT_PORT -j ACCEPT
iptables -t nat -A PREROUTING -i $LINK -p $PROTOCOL --dport $EXT_PORT -j
DNAT --to-dest $HOST_IP:$INT_PORT
done


#Acesso Priveligiado a Internet
# 192.168.1.61 - Dante
# 192.168.1.7 - Jadir
# 192.168.1.18 - Junior
# 192.168.1.21 - Tributa1 (Iara) Motivo:Software do Itaú
# 192.168.1.195 - VoIP (teste)
VIP_ACCESS='192.168.1.61 192.168.1.7 192.168.1.18 192.168.1.21 192.168.21.3
192.168.1.23 192.168.1.195 192.168.1.23'
for VIP in $VIP_ACCESS; do
iptables -t filter -A FORWARD -d 0/0 -s $VIP -o $LINK -j ACCEPT
iptables -t filter -A FORWARD -d $VIP -s 0/0 -i $LINK -j ACCEPT
iptables -t nat -A POSTROUTING -s $VIP -o $LINK -j MASQUERADE
iptables -t nat -A PREROUTING -i $REDE -p tcp --dport 80 -s $VIP -j ACCEPT
done


#Acesso Avançado a Internet
# 192.168.1.14 - Emanuelle
# 192.168.22.3 - Saúde
# 192.168.22.10 - Saúde
# 192.168.1.223 - Tecnico IPM
# 192.168.1.80 - Detran
# 192.168.1.79 - Detran
# 192.168.1.36 - RH
# 192.168.22.12 - Saúde
ADV_ACCESS='192.168.1.14 192.168.22.3 192.168.22.10 192.168.1.223
192.168.1.80 192.168.1.79 192.168.1.36 192.168.22.12'
for ADV in $ADV_ACCESS; do
iptables -t filter -A FORWARD -d 0/0 -s $ADV -o $LINK -j ACCEPT
iptables -t filter -A FORWARD -d $ADV -s 0/0 -i $LINK -j ACCEPT
iptables -t nat -A POSTROUTING -s $ADV -o $LINK -j MASQUERADE
done


#Proxy transparente (200.201.174.207 C.Social)
iptables -t nat -A PREROUTING -i $REDE -p tcp -d ! 200.201.174.207 --dport
80 -j REDIRECT --to-port 3128


#Conf lo
iptables -t filter -A INPUT -i lo -s 0/0 -d 0/0 -j ACCEPT
iptables -t filter -A OUTPUT -o lo -s 0/0 -d 0/0 -j ACCEPT

####### FIM


Será que estou fazendo alguma caca ???
Valeu pela força.