Página 2 de 2 PrimeiroPrimeiro 12
+ Responder ao Tópico



  1. #6
    drginfo
    Eu também sou a favor de bloquear tudo e liberar só o necessário!
    eu peguei um firewall do Hugo Cisneiros muito bom e fiz algumas modificações veja abixo e modifique ao seu modo:
    Espero que ajude.


    ############################################

    #!/bin/bash
    #
    # Limpa a tela
    clear
    #
    # Define as variaveis
    #
    ipt=/usr/sbin/iptables
    rede=eth0
    lan=10.0.0.0/255.0.0.0
    modem=ppp+
    lo=lo
    localhost=127.0.0.1
    #
    # Carregando os modulos necessarios
    modprobe ip_tables
    modprobe iptable_nat
    modprobe iptable_filter
    modprobe iptable_mangle
    modprobe ipt_conntrack
    modprobe ipt_unclean
    modprobe ipt_limit
    modprobe ipt_REDIRECT
    modprobe ipt_TOS
    modprobe ipt_MASQUERADE
    #
    # Apagando e definindo as politicas padroes do firewall
    $ipt -t filter -F
    $ipt -t filter -X
    $ipt -t filter -Z
    $ipt -t nat -F
    $ipt -t nat -X
    $ipt -t nat -Z
    $ipt -t filter -P INPUT DROP
    $ipt -t filter -P OUTPUT ACCEPT
    $ipt -t filter -P FORWARD DROP
    $ipt -t nat -P PREROUTING ACCEPT
    $ipt -t nat -P OUTPUT ACCEPT
    $ipt -t nat -P POSTROUTING DROP
    $ipt -t mangle -P PREROUTING ACCEPT
    $ipt -t mangle -P OUTPUT ACCEPT
    #
    # Anti-spoofing
    for i in /proc/sys/net/ipv4/conf/*/rp_filter; do
    echo 1 >$i
    done
    #
    # Ativa o redirecionamento de pacotes
    echo 1 > /proc/sys/net/ipv4/ip_forward
    #
    # Define o máximo de conexões para evitar sobrecarga do servidor
    echo 4096 > /proc/sys/net/ipv4/ip_conntrack_max
    #
    ###################### Tabela filter ###############################
    #### Chain INPUT ######
    #
    # Criamos uma nova chain para tratamento da internet
    #
    $ipt -N ppp-input
    #
    # Aceita todo o tráfego vindo do loopback e indo para o loopback
    #
    $ipt -A INPUT -i $lo -j ACCEPT
    # Todo o tráfego da rede interna também é aceito
    $ipt -A INPUT -s $lan -i $rede -j ACCEPT
    #
    # Libera a porta do VNC
    $ipt -A INPUT -p tcp --syn --dport 5800:5910 -j ACCEPT
    # Libera a porta do SSH
    $ipt -A INPUT -p tcp --syn --dport 22 -j ACCEPT
    # Libera a porta FTP
    $ipt -A INPUT -p tcp --syn --dport 20:21 -j ACCEPT
    # Conexões vindas da interface ppp0 são tratadas pela chain ppp-input
    $ipt -A INPUT -i $modem -j ppp-input
    # Qualquer outra conexão desconhecida é imediatamente logada e derrubada
    $ipt -A INPUT -j LOG --log-prefix "Firewall: Input-derrubado"
    $ipt -A INPUT -j DROP
    #
    #### Chain FORWARD ######
    #
    # Permite o redirecionamento de conexões entre as interfaces locais
    # Qualquer tráfego indo e vindo para outras interfaces será bloqueado
    #
    $ipt -A FORWARD -d $lan -i $modem -o $rede -j ACCEPT
    $ipt -A FORWARD -s $lan -i $rede -o $modem -j ACCEPT
    $ipt -A FORWARD -j LOG --log-prefix "Firewall: FORWARD negado"
    $ipt -A FORWARD -j DROP
    #
    #### Chain ppp-input ######
    #
    # Aceita pings vindos da internet com certa limitação
    $ipt -A ppp-input -p icmp -m limit --limit 2/s -j ACCEPT
    # Aceitamos o tráfego vindo da internet para o serviço www (porta 80)
    $ipt -A ppp-input -p tcp --dport 80 -j ACCEPT
    #
    # Tentativas de acesso aos serviços listados abaixo serão registrado
    #
    $ipt -A ppp-input -p tcp --dport 21 -j LOG --log-prefix "Firewall: FTP "
    $ipt -A ppp-input -p tcp --dport 22 -j LOG --log-prefix "Firewall: SSH "
    $ipt -A ppp-input -p tcp --dport 25 -j LOG --log-prefix "Firewall: SMTP "
    $ipt -A ppp-input -p udp --dport 53 -j LOG --log-prefix "Firewall: DNS "
    $ipt -A ppp-input -p tcp --dport 110 -j LOG --log-prefix "Firewall: POP3 "
    $ipt -A ppp-input -p tcp --dport 113 -j LOG --log-prefix "Firewall: IDENTD "
    $ipt -A ppp-input -p tcp --dport 111 -j LOG --log-prefix "Firewall: RPC "
    $ipt -A ppp-input -p udp --dport 111 -j LOG --log-prefix "Firewall: RPC "
    $ipt -A ppp-input -p tcp --dport 137:139 -j LOG --log-prefix "Firewall: SMB "
    $ipt -A ppp-input -p udp --dport 137:139 -j LOG --log-prefix "Firewall: SMB "
    #
    # Bloqueia qualquer conexão de fora para esta máquina
    #
    $ipt -A ppp-input -m state --state ! ESTABLISHED,RELATED -j LOG --log-prefix "Firewall: ppp-in "
    $ipt -A ppp-input -m state --state ! ESTABLISHED,RELATED -j DROP
    # Qualquer outro tipo de tráfego é aceito
    $ipt -A ppp-input -j ACCEPT
    #
    ########################## Tabela nat #################################
    ##### Chain POSTROUTING ######
    # Permite qualquer conexão vinda com destino a lo e rede local para placa
    # de rede da rede interna ( ethx )
    $ipt -t nat -A POSTROUTING -o $lo -j ACCEPT
    $ipt -t nat -A POSTROUTING -s $lan -o $rede -j ACCEPT
    #
    #
    # Todas as requisicoes de e-mail pop3 serao redirecionadas para a porta 8110
    # do antivirus p3vscan
    #$ipt -t nat -A PREROUTING -i $rede -p tcp --dport 110 -j REDIRECT --to-port 8110
    # Não queremos que os usuários tenham acesso externo aos serviços listados
    # abaixo usaremos o squid para controle

    # Redireciona as con. da porta 80 p/ 3120 do squid
    $ipt -t nat -A PREROUTING -i $rede -p tcp --dport 80 -j REDIRECT --to-port 3120
    # Registramos as tentativas de conexões diretas a estes serviços
    $ipt -t nat -A POSTROUTING -s $lan -o $modem -p tcp --dport 80 -j LOG --log-prefix "Firewall: SNAT-www "
    $ipt -t nat -A POSTROUTING -s $lan -o $modem -p tcp --dport 25 -j LOG --log-prefix "Firewall: SNAT-smtp "
    #$ipt -t nat -A POSTROUTING -s $lan -o $modem -p tcp --dport 25 -j DROP
    #$ipt -t nat -A POSTROUTING -s $lan -o $modem -p tcp --dport 80 -j DROP
    #
    # É feito o masquerading dos outros serviços da rede interna indo para a
    # interface ppp+
    $ipt -t nat -A POSTROUTING -s $lan -o $modem -j MASQUERADE
    # Qualquer outra origem de tráfego desconhecida indo para a placa de rede
    # da rede interna (ethx)
    $ipt -t nat -A POSTROUTING -o $rede -d $lan -j LOG --log-prefix "Firewall: SNAT-unknow "
    $ipt -t nat -A POSTROUTING -o $rede -d $lan -j DROP
    # Não bloquearemos a conexão ppp+
    $ipt -t nat -A POSTROUTING -o $modem -j ACCEPT
    # Registra e bloqueia qualquer outro tipo de tráfego desconhecido
    $ipt -t nat -A POSTROUTING -j LOG --log-prefix "Firewall: SNAT "
    $ipt -t nat -A POSTROUTING -j DROP
    #
    ######## Tabela mangle ##################################################
    #### Chain OUTPUT ######
    #
    # prioriza o FTP
    $ipt -t mangle -A OUTPUT -o $modem -p tcp --dport 20:21 -j TOS --set-tos 0x10
    # prioriza o DNS
    $ipt -t mangle -A OUTPUT -o $modem -p udp --dport 53 -j TOS --set-tos 0x10
    # prioriza o SSH
    $ipt -t mangle -A OUTPUT -o $modem -p tcp --dport 22 -j TOS --set-tos 0x10
    #
    # Precaução
    #
    $ipt -A INPUT -p tcp --syn -j DROP


    #############################################
    #fim

  2. #7
    Fred_Luis
    É... pelo jeito é mais fácil liberar o OUTPUT mesmo...

    Valeu pela ajuda galera!






Tópicos Similares

  1. Problemas com IPTABLES
    Por no fórum Servidores de Rede
    Respostas: 4
    Último Post: 20-01-2004, 10:35
  2. Problema com Iptables em Cache Server
    Por no fórum Servidores de Rede
    Respostas: 0
    Último Post: 04-10-2003, 00:53
  3. Problemas com IPTABLES
    Por no fórum Servidores de Rede
    Respostas: 1
    Último Post: 11-07-2003, 16:38
  4. Problemas com IPTABLES
    Por no fórum Servidores de Rede
    Respostas: 0
    Último Post: 26-06-2003, 10:00
  5. problemas com iptables
    Por no fórum Servidores de Rede
    Respostas: 15
    Último Post: 05-02-2003, 18:00

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L