Firewall

Publicado por Perfil removido 28/02/2007

[ Hits: 4.739 ]

Download rc.firewall




Script de firewall simples, com segurança e bem explicativo.

Um script fácil para administradores de redes que têm a necessidade de conexão por vnc para auxilio de usuários.

  



Esconder código-fonte

#!/bin/bash
# Script Criado por Goku - filipecm@terra.com.br / goku@gokunet.net - www.gokunet.net
########################## Variáveis ##########################

#Ips externos liberados para conexão em SSH
LIBERADOS_F=""
#Variável para o range de ip da sua rede interna.
IP_INTERNO="192.168.0.0/16"
#Insira os ips da rede,que você quer redirecionar, na variavel de redirecionamento e as portas que serão redirecionadas.
REDIRECIONAMETO=""
PORTA_REDI="3389"
# INFORME QUAL PLACA DE REDE INTERNA
IFACE_INT="eth0"
#VARIAVEIS DE CONFIGURACAO DA CONEXAO
#SE FOR IP FIXO PREENCHA AS VARIAVEIS IP_EXT, MASK_EXT, GW_EXT
#SE FOR CONEXAO PPPoE PREENCHA APENAS A IFACE_EXT COM "ppp0" OU A CONEXAO QUE VOCE CONFIGUROU
#A IFACE_EXT OBRIGATORIAMENTE DEVE SER PREENCHIDA COM A PLACA DE REDE OU CONEXAO PPPoE
IP_EXT=""
MASK_EXT=""
GW_EXT=""
IFACE_EXT="eth0:0"


## Opcoes do Kernel
echo 1 > /proc/sys/net/ipv4/ip_forward

########################## Inicio das Regras de IPTABLES ##########################
stop(){
        echo "Limpando REGRAS"
        iptables -F
        iptables -F -t nat 
        iptables -X
        iptables -Z
        iptables -t nat -F
        echo "PARANDO FIREWALL"
        iptables -P INPUT ACCEPT
        iptables -P FORWARD ACCEPT
        iptables -P OUTPUT ACCEPT
}


start(){
        echo "Setando Politicas Defaut"
        iptables -P INPUT DROP
        iptables -P OUTPUT ACCEPT
        iptables -P FORWARD ACCEPT
        echo "Liberando LocalHost"
        iptables -A INPUT -p ALL -s 127.0.0.1 -i lo -j ACCEPT
        iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
        echo "Libera DNS"
        iptables -A FORWARD -s $IP_INTERNO -p udp --dport 53 -j ACCEPT
        echo "Iniciando proxy transparente"
        #RedireLciona tudo da porta 80 pelo protocolo tcp para a 3128
        iptables -t nat -A PREROUTING -s $IP_INTERNO -i $IFACE_INT -p tcp --dport 80 -j REDIRECT --to-port 3128  
   iptables -t nat -A PREROUTING -s $IP_INTERNO -i $IFACE_INT -p udp --dport 80 -j REDIRECT --to-port 3128      
        echo "Iniciando NAT"
        iptables -A FORWARD -s $IP_INTERNO -j ACCEPT
        #Essa linha faz o processo de direcionar todas as requisicoes da REDE INTERNA para a conexao de internet
        iptables -A POSTROUTING -t nat -s $IP_INTERNO -o $IFACE_EXT -j MASQUERADE 
        echo "Fim das regras de NAT"
        echo "Iniciando o Filtro de PORTAS"
        iptables -A INPUT -p ALL -s $IP_INTERNO -j ACCEPT       
        
   for i in $LIBERADOS_F; do
                iptables -A INPUT -p ALL -s $i -j ACCEPT
        done

        iptables -A FORWARD -j ACCEPT -p icmp --icmp-type echo-reply
        iptables -A FORWARD -j ACCEPT -p icmp --icmp-type echo-request -i eth1
        iptables -A INPUT -j ACCEPT -p icmp --icmp-type echo-reply
        echo "Finalizando Filtro por PORTAS"
########################## Redirecionar portas #########################
echo "iniciando REDIRECIONAMENTO"
        for i in $REDIRECIONAMENTO; do
                for e in $PORTAS_REDI; do
                          iptables -t nat -A PREROUTING -p tcp -s 0.0.0.0/0 --dport $e -j DNAT --to $i 
                done
        done
########################## Fim do Redirecionador ######################
echo "INICIANDO O FIREWALL"
}

case "$1" in
'start')
   start
   ;;
'stop')
   stop
   ;;
'restart')
   stop
   start
   ;;
   *)
   echo "Use $0 {start|stop|restart}"
   exit 0
   ;;
esac

Scripts recomendados

Acessar celular Motorola via USB

Reinicia todos os trabalhos de todas as filas CUPS

Script para rotacionar logs dos sites no Apache

M4L Player Console

Prova 1.0


  

Comentários
[1] Comentário enviado por maiam em 14/04/2007 - 18:01h

cara esse seu firewall eh mto bom parabens


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts