+ Responder ao Tópico



  1. #1

    Padrão Bloquear tudo Não funciona

    Galera estou com um Grande problema , fiz um script para bloquear tudo na minha rede, deixar só o squid o msn e um redirecionamento de um cliente para o vnc ativado claro q tambem a regra de compartilhamento funcionando , só q notei q não esta funcionando , todos continua usando kazaa , emule, etc ... q é meu principal motivo do script , alguem poderia me ajudar a dar uma olhada no script e me dizer o q esta de errado nele ?

    #!/bin/bash
    firewall_start(){

    #setando polihticas
    $IPTABLES -P INPUT DROP
    $IPTABLES -P FORWARD DROP
    $IPTABLES -P OUTPUT DROP


    iptables -P INPUT DROP
    iptables -P OUTPUT DROP
    iptables -P FORWARD DROP

    iptables -A INPUT -p tcp --syn -j DROP

    # Abre para uma faixa de endereços da rede local
    iptables -A INPUT -s 192.168.254.0/255.255.255.0 -j ACCEPT

    # compartilhar internet
    modprobe iptable_nat
    iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
    echo 1 > /proc/sys/net/ipv4/ip_forward

    # Abre uma porta (inclusive para a Internet)
    iptables -A INPUT -p tcp --destination-port 3128 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 1863 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 80 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 25 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 110 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 5800 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 5900 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 5190 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 8080 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port -j ACCEPT
    iptables -A INPUT -p tcp --syn --destination-port 22 -j ACCEPT

    # rediriciona o trafego da porta 80 para squid
    iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 80 -j REDIRECT --to-port 3128

    # Ignora pings
    echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
    # Proteção contra IP spoofing
    echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter

    # Protege contra synflood
    echo "1" > /proc/sys/net/ipv4/tcp_syncookies

    # Proteção contra ICMP Broadcasting
    echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

    # Bloqueia traceroute
    iptables -A INPUT -p udp --dport 33435:33525 -j DROP

    # Proteções diversas contra portscanners, ping of death, ataques DoS, etc.
    iptables -A FORWARD -m unclean -j DROP
    iptables -A INPUT -m state --state INVALID -j DROP


    # Abre para a interface de loopback.
    # Esta regra é essencial para o KDE e outros programas gráficos funcionarem adequadamente.
    iptables -A INPUT -p tcp --syn -s 127.0.0.1/255.0.0.0 -j ACCEPT

    # Fecha as portas udp de 1 a 1024, abre para o localhost
    iptables -A INPUT -p udp -s 127.0.0.1/255.0.0.0 -j ACCEPT
    iptables -A INPUT -p udp --dport 1:1024 -j DROP
    iptables -A INPUT -p udp --dport 59229 -j DROP

    # Redireciona uma faixa de portas para um micro da rede local
    iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 5800:5900 -j DNAT --to-dest 192.168.254.5
    iptables -A FORWARD -p tcp -i ppp0 --dport 5800:5900 -d 192.168.254.5 -j ACCEPT
    iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 5800:5900 -j DNAT --to-dest 192.168.254.5
    iptables -A FORWARD -p udp -i ppp0 --dport 5800:5900 -d 192.168.254.5 -j ACCEPT

    iptables -A INPUT -s 0/0 -p tcp --dport 1025 -j DROP

    iptables -A INPUT -p tcp --dport 12345 -j DROP
    iptables -A INPUT -p tcp --dport 123456 -j DROP

    #habilitando forward
    echo 1 > /proc/sys/net/ipv4/ip_forward
    }

  2. #2

    Padrão Re: Bloquear tudo Não funciona

    O seu script esta liberando tudo, apenas bloqueia algumas coisas contra ataque externo. Voce esta mascarando tudo com
    iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
    e aceita tudo da rede interna com
    iptables -A INPUT -s 192.168.254.0/255.255.255.0 -j ACCEPT
    voce até abre as portas com
    iptables -A INPUT -p tcp --destination-port 3128 -j ACCEPT ## etc
    mas não bloqueia o resto.
    Eu não testei, mas tenta comentar a linha
    iptables -A INPUT -s 192.168.254.0/255.255.255.0 -j ACCEPT
    Tem outras coisas que podem ser feitas, mas acho que assim vai funcionar.
    Ahh! coloca também a opção "-s 192.168.254.0/24" mas linhas abaixo de " # Abre uma porta (inclusive para a Internet)"
    Acho que vai dar certo, se não der responde.

  3. #3

    Padrão Re: Bloquear tudo Não funciona

    amigão muito obrigado pela dica meu firewall ficou assim, mais mesmo assim não esta funcionando , será q fiz alguma coisa errada ?


    # Ignora pings
    echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
    # Proteção contra IP spoofing
    echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter

    # Protege contra synflood
    echo "1" > /proc/sys/net/ipv4/tcp_syncookies

    # Proteção contra ICMP Broadcasting
    echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

    # Bloqueia traceroute
    iptables -A INPUT -p udp --dport 33435:33525 -j DROP

    # Proteções diversas contra portscanners, ping of death, ataques DoS, etc.
    iptables -A FORWARD -m unclean -j DROP
    iptables -A INPUT -m state --state INVALID -j DROP


    # Abre para a interface de loopback.
    # Esta regra é essencial para o KDE e outros programas gráficos funcionarem adequadamente.
    iptables -A INPUT -p tcp --syn -s 127.0.0.1/255.0.0.0 -j ACCEPT

    # Fecha as portas udp de 1 a 1024, abre para o localhost
    iptables -A INPUT -p udp -s 127.0.0.1/255.0.0.0 -j ACCEPT
    iptables -A INPUT -p udp --dport 1:1024 -j DROP
    iptables -A INPUT -p udp --dport 59229 -j DROP

    # Redireciona uma faixa de portas para um micro da rede local
    iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 5800:5900 -j DNAT --to-dest 192.168.254.5
    iptables -A FORWARD -p tcp -i ppp0 --dport 5800:5900 -d 192.168.254.5 -j ACCEPT
    iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 5800:5900 -j DNAT --to-dest 192.168.254.5
    iptables -A FORWARD -p udp -i ppp0 --dport 5800:5900 -d 192.168.254.5 -j ACCEPT

    iptables -A INPUT -s 0/0 -p tcp --dport 1025 -j DROP

    iptables -A INPUT -p tcp --dport 12345 -j DROP
    iptables -A INPUT -p tcp --dport 123456 -j DROP

    #habilitando forward
    echo 1 > /proc/sys/net/ipv4/ip_forward
    }

  4. #4

    Padrão Re: Bloquear tudo Não funciona

    acho que voce postou apenas a metade, coloca o scriot inteiro ou manda por e-mail.

  5. #5

    Padrão Re: Bloquear tudo Não funciona

    #!/bin/bash
    firewall_start(){

    #setando polihticas
    $IPTABLES -P INPUT DROP
    $IPTABLES -P FORWARD DROP
    $IPTABLES -P OUTPUT DROP


    iptables -P INPUT DROP
    iptables -P OUTPUT DROP
    iptables -P FORWARD DROP

    iptables -A INPUT -p tcp --syn -j DROP

    # Abre para uma faixa de endereços da rede local
    # iptables -A INPUT -s 192.168.254.0/255.255.255.0 -j ACCEPT

    # compartilhar internet
    modprobe iptable_nat
    iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
    echo 1 > /proc/sys/net/ipv4/ip_forward

    # Abre uma porta (inclusive para a Internet)
    iptables -A INPUT -p tcp --destination-port 3128 -s 192.168.254.0/255.255.255.0 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 1863 -s 192.168.254.0/255.255.255.0 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 80 -s 192.168.254.0/255.255.255.0 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 25 -s 192.168.254.0/255.255.255.0 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 110 -s 192.168.254.0/255.255.255.0 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 5800 -s 192.168.254.0/255.255.255.0 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 5900 -s 192.168.254.0/255.255.255.0 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 5190 -s 192.168.254.0/255.255.255.0 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port 8080 -s 192.168.254.0/255.255.255.0 -j ACCEPT
    iptables -A INPUT -p tcp --destination-port -s 192.168.254.0/255.255.255.0 -j ACCEPT
    iptables -A INPUT -p tcp --syn --destination-port 22 -s 192.168.254.0/255.255.255.0 -j ACCEPT

    # rediriciona o trafego da porta 80 para squid
    iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 80 -j REDIRECT --to-port 3128

    # Ignora pings
    echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
    # Proteção contra IP spoofing
    echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter

    # Protege contra synflood
    echo "1" > /proc/sys/net/ipv4/tcp_syncookies

    # Proteção contra ICMP Broadcasting
    echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

    # Bloqueia traceroute
    iptables -A INPUT -p udp --dport 33435:33525 -j DROP

    # Proteções diversas contra portscanners, ping of death, ataques DoS, etc.
    iptables -A FORWARD -m unclean -j DROP
    iptables -A INPUT -m state --state INVALID -j DROP


    # Abre para a interface de loopback.
    # Esta regra é essencial para o KDE e outros programas gráficos funcionarem adequadamente.
    iptables -A INPUT -p tcp --syn -s 127.0.0.1/255.0.0.0 -j ACCEPT

    # Fecha as portas udp de 1 a 1024, abre para o localhost
    iptables -A INPUT -p udp -s 127.0.0.1/255.0.0.0 -j ACCEPT
    iptables -A INPUT -p udp --dport 1:1024 -j DROP
    iptables -A INPUT -p udp --dport 59229 -j DROP

    # Redireciona uma faixa de portas para um micro da rede local
    iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 5800:5900 -j DNAT --to-dest 192.168.254.5
    iptables -A FORWARD -p tcp -i ppp0 --dport 5800:5900 -d 192.168.254.5 -j ACCEPT
    iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 5800:5900 -j DNAT --to-dest 192.168.254.5
    iptables -A FORWARD -p udp -i ppp0 --dport 5800:5900 -d 192.168.254.5 -j ACCEPT

    iptables -A INPUT -s 0/0 -p tcp --dport 1025 -j DROP

    iptables -A INPUT -p tcp --dport 12345 -j DROP
    iptables -A INPUT -p tcp --dport 123456 -j DROP

    #habilitando forward
    echo 1 > /proc/sys/net/ipv4/ip_forward
    }

  6. #6

    Padrão Re: Bloquear tudo Não funciona

    Tem uma linha na na Parte ## Abre uma porta (inclusive para a Internet)
    iptables -A INPUT -p tcp --destination-port -s 192.168.254.0/255.255.255.0 -j ACCEPT

    essa linha deve estar dando erro, comenta ela também e ve se esta dando algum outro erro.

  7. #7

    Padrão Re: Bloquear tudo Não funciona

    Cara vamos "enchugar" um pouco esse teu script do firewall... tome por base o seguinte a cada 2 INPUT vc poder substituir por PREROUTING e se vc tah utilizando NAT eh barbada... vamos lah...


    ############################# Limpar as regras primeiro
    /usr/sbin/iptables -F
    /usr/sbin/iptables -t nat -F

    ############################# Insere os modulos kernel
    /sbin/modprobe iptable_nat
    /sbin/modprobe iptable_mangle
    /sbin/modprobe ipt_conntrack
    /sbin/modprobe ip_conntrack_ftp
    /sbin/modprobe ip_nat_ftp
    /sbin/modprobe ipt_multiport
    /sbin/modprobe ipt_LOG
    /sbin/modprobe ipt_mark
    /sbin/modprobe ipt_MARK

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

    echo "0" > /proc/sys/net/ipv4/tcp_ecn

    ############ rediriciona o trafego da porta 80 para squid
    iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 80 -j REDIRECT --to-port 3128


    # Abre uma porta (um exemplo abaixo aeh vc vai colocando o q vc quiser liberar)
    iptables -t nat -A PREROUTING -p tcp --dport 3128 -j ACCEPT -s 192.168.254.0/255.255.255.0

    # Redireciona uma faixa de portas para um micro da rede local
    iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 5800:5900 -j DNAT --to-destination 192.168.254.5
    iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 5800:5900 -j DNAT --to-destination 192.168.254.5

    ########## Apos feitas as regras rejeitar todos os outros pacotes
    iptables -t nat -p tcp -A PREROUTING -j DROP
    iptables -t nat -p udp -A PREROUTING -j DROP


    Espero ter ajudado.... fiz assim e nao tive mais problemas com os DROP's no final do script fecha todas as portas... aí acima vou fazendo PREROUTING para o que eu quero liberar....

  8. #8

    Padrão Re: Bloquear tudo Não funciona

    amigo já estou testando seu script, só q tenho duas duvidas , a primeira é se esse script vai funcionar o msn ? a segunda duvida é q quando rodei o script deu erro em duas linhas e vou ter reporta abaixo

    ./firewall: line 2: /usr/sbin/iptables: Arquivo ou diretório não encontrado
    ./firewall: line 3: /usr/sbin/iptables: Arquivo ou diretório não encontrado

    aki eu uso o kurumin 6.0 como distribuição

    muito obrigado

  9. #9

    Padrão Re: Bloquear tudo Não funciona

    amigos
    resolvi o problema das linhas q da erro apenas deixando o comando do iptables
    sem direcionar para para o diretorio
    mais pelo iptraf vejo q o emule continua sendo usando o script q o amigo fez pelo jeito não funcionou ops: pelo amor de Deus alguem pode me ajudar ? só quero só navegação,email e msn funcionando em minha rede estou a dias e não consigo

  10. #10

    Padrão Re: Bloquear tudo Não funciona

    só para completar notei no script do nosso amigo no inicio não fexava todas as portas então fiz uma pequena alteração rssss mais pelo geito bloqueou tudo rsss alguem pode me dizer o q esta de errado :?


    ############################# Limpar as regras primeiro
    iptables -F
    iptables -t nat -F
    ############################# fexar tudo
    iptables -P INPUT DROP
    iptables -P OUTPUT DROP
    iptables -P FORWARD DROP
    ############################# Insere os modulos kernel
    /sbin/modprobe iptable_nat
    /sbin/modprobe iptable_mangle
    /sbin/modprobe ipt_conntrack
    /sbin/modprobe ip_conntrack_ftp
    /sbin/modprobe ip_nat_ftp
    /sbin/modprobe ipt_multiport
    /sbin/modprobe ipt_LOG
    /sbin/modprobe ipt_mark
    /sbin/modprobe ipt_MARK

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

    echo "0" > /proc/sys/net/ipv4/tcp_ecn

    ############ rediriciona o trafego da porta 80 para squid
    iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 80 -j REDIRECT --to-port 3128


    # Abre uma porta (um exemplo abaixo aeh vc vai colocando o q vc quiser liberar)
    iptables -t nat -A PREROUTING -p tcp --dport 3128 -j ACCEPT -s 192.168.254.0/255.255.255.0

    # Redireciona uma faixa de portas para um micro da rede local
    iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 5800:5900 -j DNAT --to-destination 192.168.254.5
    iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 5800:5900 -j DNAT --to-destination 192.168.254.5

    ########## Apos feitas as regras rejeitar todos os outros pacotes
    iptables -t nat -p tcp -A PREROUTING -j DROP
    iptables -t nat -p udp -A PREROUTING -j DROP