Descrição:
Como exemplos Lan Houses ou provedores de acesso que precisam liberar outras coisas mais importantes. Uma dica para estes ambientes é não bloquear tudo com aquela política padrão (-P), pois não é necessário tanto controle, mas se mesmo assim quiser bloquear alguma coisa tem muitos exemplos no capítulo de regras para ambientes rígidos.
Neste exemplo eu incluo regras de redirecionamento que podemos fazer de forma mais simples, basta acrescentar a porta, o protocolo e o ip de pacotes de serviços destinados a serem redirecionados a outros computadores. Em linhas gerais, sendo este script implementado a um gateway os computadores que estão fora da rede Interna, isto na internet, que não podem se comunicarem diretamente aos computadores da rede interna, ao não ser que se faça redirecionamento como, por exemplo: acessar por vnc de forma externa algum pc da rede interna, emule com id baixa ou acessar outro serviço qualquer oferecido pela rede interna, neste formato fica mais fácil se você faz muitos redirecionamentos, assim não precisa várias com a mesma finalidade.
Para acrescentar esta funcionalidade basta acrescentar este linha a seguir no inicio do script junto às outras variáveis; sugiro que seja no final.
REDILIST="/etc/configuracao_personalizada/listaderedirecionamento"
É recomendado que estas próximas linhas que se seque sejam colocadas antes dos bloqueios de portas e de ataques.
for i in `cat $REDILIST`; do
REDIPROTO=`echo $i | cut -d ';' -f 1` #recebe o protocolo a ser redirecionado
REDIPORTA=`echo $i | cut -d ';' -f 2` #recebe a porta a ser redirecionado
REDIP=`echo $i | cut -d ';' -f 3` #recebe o ip a ser redirecionado
REDISERVICO=`echo $i | cut -d ';' -f 4` #recebe o nome do serviço
REDIHOST=`echo $i | cut -d ';' -f 5` #recebe o nome do host
$IPTABLES -A FORWARD -p $REDIPROTO --dport $REDIPORTA -j ACCEPT
$IPTABLES -t nat -A PREROUTING -p $REDIPROTO -i $WAN --dport $REDIPORTA -j DNAT --to $REDIP
echo "ativado o serviço $REDISERVICO para o $REDIHOST"
done # fim do comando laço for
echo "ativado o redirecionamento das portas da WAN para LAN"
echo "ON ...................................................... [ OK ]"
A sintaxe do arquivo é "protocolo;porta;ip;nome_do_servico;nome_do_host" muito semelhante ao do exemplo de amarrar ip ao mac, eu coloquei nome do serviço e nome do host, apenas para fim organizacional do arquivo.
Exemplo do arquivo "/etc/configuracao_personalizada/listaderedirecionamento".
#Redireciona as conexões do VNC
tcp;5900;192.168.253.2;VNC;debian-home
#Redirecionar as portas do emule para o host 192.168.253.2
tcp;4662;192.168.253.2;EMULE;debian-home
udp;4672;192.168.253.2;EMULE;debian-home
Coloque estas em caso se gateway pertence a uma lan house, estou dando prioridade a porta 80 e 3128.
# ativando o tráfego de prioridade de saída e entrada pela tabela mangle
$IPTABLES -t mangle -A OUTPUT -o $WAN -p tcp --dport 80 -j TOS --set-tos 16
$IPTABLES -t mangle -A INPUT -i $LAN -p tcp --sport 80 -j TOS --set-tos 16
$IPTABLES -t mangle -A FORWARD -i $LAN -p tcp --sport 80 -j TOS --set-tos 8
$IPTABLES -t mangle -A INPUT -i $LAN -p tcp --sport 3128 -j TOS --set-tos 16
$IPTABLES -t mangle -A OUTPUT -o $LAN -p tcp --dport 3128 -j TOS --set-tos 16
$IPTABLES -t mangle -A INPUT -i $WAN -p tcp --sport 22 -j TOS --set-tos 8
$IPTABLES -t mangle -A OUTPUT -o $WAN -p tcp --dport 22 -j TOS --set-tos 8
echo "ativado o trafego de prioridades mangle TOS:"
echo "ON ....................................................... [ OK ]"
Estas regras foram encontradas na internet e serve para libera a radio da UOL mesmo com o proxy transparente, a fim de não passar por ele. O curioso sobre a radio UOL, é que nem mesmo pelo ISA SERVER, que o proxy da Microsoft, não funciona. Lembre-se de colocar estas regras antes do Proxy transparente. Outra coisa importante referente a isto é que eu não coloquei as portas e endereços sendo liberadas nos arquivos portslib e nem no listaderedirecionamento por que elas são especificas para a rádio UOL.
# Liberar Radio UOL
$IPTABLES -t nat -I PREROUTING -i $LAN -m tcp -p tcp -d 200.221.0.0/16 --dport 80 -j ACCEPT
$IPTABLES -A FORWARD -s $REDE -p tcp --dport 554 -j ACCEPT
$IPTABLES -A FORWARD -d $REDE -p udp --sport 554 -j ACCEPT
$IPTABLES -t nat -I PREROUTING -d app.radio.musica.uol.com.br -j ACCEPT
$IPTABLES -t nat -I PREROUTING -d radio.musica.uol.com.br -j ACCEPT
$IPTABLES -A INPUT -p tcp --dport 111 -j ACCEPT
$IPTABLES -A INPUT -p udp --dport 111 -j ACCEPT
$IPTABLES -A INPUT -p udp --dport 2049 -j ACCEPT
echo "Liberado a Radio UOL"
echo "ON ......................................................... [ OK ]"
No arquivo (portslib) coloque estas portas:
MSN=1863
ICQ=5190