+ Responder ao Tópico



  1. #1
    guachinim
    Visitante

    Padrão Duvida Iptable

    Ae galera, os problems co squid foram sanados!
    agora eh a vez do iptables!!!
    mas tamo ai!!

    Bom.. tive lendo algo por ai..
    mas nao axei nada, ou passei batido, de onde eu coloco as regras...
    c eh em algum arquivo especifico e talz..

    bom... depois que eu axa o comeco vamo o resto!!

    Valeu. e to no aguardo!!!

    Chiko

  2. #2

  3. #3

    Padrão Duvida Iptable

    Crie as regras aonde vc quiser. O que vc precisa fazer eh deixar esse arquivo na primeira linha assim


    #!/bin/sh


    após fazer as regras vc salva e de permissao de execução

    chmod +x "iptables"



    depois adicione no /etc/rc.d/rc.local

    o caminho do arquivo

    /etc/ppp/firewall

    ou qualquer outro lugar que vc deixar as regras

    suponha que vc crie o arquivo rc.firewall (nome comum dado ao iptables) e deixe o arquivo em /etc/ppp/rc.firewall

    deixe assim no /etc/rc.d/rc.local

    /etc/ppp/rc.firewall

    quando a maquina ligar vai carregar o script que vc salvou


    e ja era

    Abraço


  4. #4
    guachinim
    Visitante

    Padrão Duvida Iptable

    Citação Postado originalmente por spyderlinux
    Crie as regras aonde vc quiser. O que vc precisa fazer eh deixar esse arquivo na primeira linha assim

    #!/bin/sh

    após fazer as regras vc salva e de permissao de execução

    chmod +x "iptables"
    Blz.. Valeu amigo.. vo tenta e dpois eu aviso c deu certo ou nao!! 8)

  5. #5

    Padrão Re: Duvida Iptable

    Normalmente e dentro de /etc/init.d/firewall

    Se for slackware pode ser em /etc/firewall

    chmod +x /caminho/do/firewall

    ./firewall

    Normalmente joga dentro do rc.local !!!

    No debian vc faz assim:

    ln -s /caminho/do/firewall /etc/rc2.d/SXXfirewall


    Valeu !!!

  6. #6
    guachinim
    Visitante

    Padrão Duvida Iptable

    eu tentei.. mas ele tah bloqeando td ainda!?
    nao adianto nada muda as permissoes.. liberei a porta 3128 e a 8080
    q sao as portas q meu squid atua.. e nem assim..
    ele tah bloqeando td!!!
    agora num sei...

    Flw..

    Chiko

  7. #7

  8. #8
    evandro_mr
    Visitante

    Padrão nat

    vc nao ta querendo fazer um NAT??
    []s

  9. #9
    guachinim
    Visitante

    Padrão Duvida Iptable

    pegei isso no FGH

    tentei monta uns.. mas agora to cum isso..


    #!/bin/bash/

    # script iptables montado pela comunidade forumgdh.net
    # http://forumgdh.net
    # Última atualização: 06/09/2004
    # ---
    # Participantes na ordem alfabetica:
    # AValle
    # bolao
    # Default
    # JohnDoe
    # Kalicrates
    # ----------------------------------------------------------------

    echo "Carregando o firewall..."

    # Definindo as variaveis
    IPTABLES="/sbin/iptables"
    REDEINT="192.168.0.0/8"
    IPDNSPROVEDOR="192.168.0.1"
    ENT="ppp+"

    # carregando os modulos
    modprobe ip_tables
    modprobe iptable_nat

    # limpando as tabelas
    $IPTABLES -F
    $IPTABLES -t nat -F

    # Protege contra os "Ping of Death"
    $IPTABLES -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT

    # Protege contra os ataques do tipo "Syn-flood, DoS, etc"
    $IPTABLES -A FORWARD -p tcp -m limit --limit 1/s -j ACCEPT

    # Permitir repassamento (NAT,DNAT,SNAT) de pacotes etabilizados e os relatados ...
    $IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

    # Logar os pacotes mortos por inatividade ...
    $IPTABLES -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG

    # Protege contra port scanners avançados (Ex.: nmap)
    $IPTABLES -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT

    # Protege contra pacotes que podem procurar e obter informações da rede interna ...
    $IPTABLES -A FORWARD --protocol tcp --tcp-flags ALL SYN,ACK -j DROP

    # Protege contra todos os pacotes danificados e ou suspeitos ...
    $IPTABLES -A FORWARD -m unclean -j DROP

    # Bloqueando tracertroute
    $IPTABLES -A INPUT -p udp -s 0/0 -i $ENT --dport 33435:33525 -j DROP

    # Protecoes contra ataques
    $IPTABLES -A INPUT -m state --state INVALID -j DROP

    # Performance - Setando acesso a web com delay minimo
    $IPTABLES -t mangle -A OUTPUT -o $ENT -p tcp --dport 53 -j TOS --set-tos Minimize-Delay
    $IPTABLES -t mangle -A OUTPUT -o $ENT -p tcp --dport 80 -j TOS --set-tos Minimize-Delay

    # Deixa passar as portas UDP do servidores DNS, e Rejeitar o restante
    $IPTABLES -A INPUT -i $ENT -p udp -s $IPDNSPROVEDOR -j ACCEPT
    $IPTABLES -A INPUT -i $ENT -p udp -s $IPDNSPROVEDOR -j ACCEPT
    $IPTABLES -A INPUT -i $ENT -p udp -j REJECT

    # Bloqueia qualquer tentativa de conexao de fora para dentro por TCP
    $IPTABLES -A INPUT -i $ENT -p tcp --syn -j DROP

    # Mesmo assim fechar todas as portas abaixo de 32000
    $IPTABLES -A INPUT -i $ENT -p tcp --dport :32000 -j DROP

    # Responde pacotes icmp especificados e rejeita o restante
    $IPTABLES -A INPUT -i $ENT -p icmp --icmp-type host-unreachable -j ACCEPT
    $IPTABLES -A INPUT -i $ENT -p icmp --icmp-type source-quench -j ACCEPT
    $IPTABLES -A INPUT -i $ENT -p icmp -j REJECT --reject-with icmp-host-unreachable

    # Rejeita o Kazaa (não testado ainda)
    #$IPTABLES -A FORWARD -p tcp -m string --string X-Kazaa-Username: -j REJECT --reject-with tcp-reset

    # Rejeita o Emule (não testado ainda)
    #$IPTABLES -A FORWARD -p tcp -m string --string X-Emule-Username: -j REJECT --reject-with tcp-reset

    # libera acesso interno da rede
    $IPTABLES -A INPUT -p tcp --syn -s $REDEINT -j ACCEPT
    $IPTABLES -A OUTPUT -p tcp --syn -s $REDEINT -j ACCEPT
    $IPTABLES -A FORWARD -p tcp --syn -s $REDEINT -j ACCEPT

    # libera o loopback
    $IPTABLES -A OUTPUT -p tcp --syn -s 127.0.0.1/255.0.0.0 -j ACCEPT

    # libera conexoes de fora pra dentro
    $IPTABLES -A INPUT -p tcp --destination-port 80 -j ACCEPT
    $IPTABLES -A INPUT -p tcp --destination-port 3128 -j ACCEPT

    #$IPTABLES -A INPUT -p tcp --destination-port 443 -j ACCEPT
    #$IPTABLES -A INPUT -p tcp --destination-port 20 -j ACCEPT
    #$IPTABLES -A INPUT -p tcp --destination-port 21 -j ACCEPT
    #$IPTABLES -A INPUT -p tcp --destination-port 22 -j ACCEPT

    #libera conexoes de dentro pra fora:
    $IPTABLES -A OUTPUT -p tcp --destination-port 80 -j ACCEPT
    $IPTABLES -A INPUT -p tcp --destination-port 3128 -j ACCEPT

    #bloqueia conexoes de dentro pra fora:
    $IPTABLES -A OUTPUT -p tcp --destination-port 3306 -j DROP
    $IPTABLES -A OUTPUT -p tcp --destination-port 22 -j DROP
    $IPTABLES -A OUTPUT -p tcp --destination-port 20 -j DROP
    $IPTABLES -A OUTPUT -p tcp --destination-port 21 -j DROP
    $IPTABLES -A OUTPUT -p tcp --destination-port 86 -j DROP
    $IPTABLES -A OUTPUT -p tcp --destination-port 5190 -j DROP
    $IPTABLES -A OUTPUT -p tcp --destination-port 443 -j DROP

    # libera o bittorrent - (não testado)
    # troque o X.X.X.X pelo IP da máquina correspondente
    #$IPTABLES -A INPUT -p tcp --destination-port 1214 -j ACCEPT
    #$IPTABLES -t nat -A PREROUTING -i ppp0 -p tcp --dport 1214 -j DNAT --to-dest X.X.X.X
    #$IPTABLES -A FORWARD -p tcp -i ppp0 --dport 1214 -d X.X.X.X -j ACCEPT
    #$IPTABLES -t nat -A PREROUTING -i ppp0 -p udp --dport 1214 -j DNAT --to-dest X.X.X.X
    #$IPTABLES -A FORWARD -p udp -i ppp0 --dport 1214 -d X.X.X.X -j ACCEPT

    # faz o icq receber arquivos - (não testado)
    # troque o X.X.X.X pelo IP da máquina correspondente
    #$IPTABLES -A INPUT -p tcp --destination-port 2000:3000 -j ACCEPT
    #$IPTABLES -t nat -A PREROUTING -i ppp0 -p tcp --dport 2000:3000 -j DNAT --to-dest X.X.X.X
    #$IPTABLES -A FORWARD -p tcp -i ppp0 --dport 2000:3000 -d X.X.X.X -j ACCEPT
    #$IPTABLES -t nat -A PREROUTING -i ppp0 -p udp --dport 2000:3000 -j DNAT --to-dest X.X.X.X
    #$IPTABLES -A FORWARD -p udp -i ppp0 --dport 2000:3000 -d X.X.X.X -j ACCEPT

    # compartilha a web na rede interna
    $IPTABLES -t nat -A POSTROUTING -s $REDEINT -o ppp0 -j MASQUERADE
    echo 1 > /proc/sys/net/ipv4/ip_forward

    # bloqueia o resto
    $IPTABLES -A INPUT -p tcp --syn -j DROP
    $IPTABLES -A OUTPUT -p tcp --syn -j DROP
    $IPTABLES -A FORWARD -p tcp --syn -j DROP

    # bloqueia ping
    echo "0" > /proc/sys/net/ipv4/icmp_echo_ignore_all

    # ----------------------------------------------------------------
    echo "Firewall carregado..."

    # EOF


    Valeu

    Chiko

  10. #10

    Padrão Duvida Iptable

    Tem algumas regras repetidas. Você tem apache rodando e precisa ser acessado fora da sua rede ? Está permindo o acesso ao squid fora da sua rede. Revise essas regras, ou melhor, tente fazer o seu proprio firewall.

    Faça um firewall simples vai incrementando aos poucos e testando e acrescentando na medida que precisa.


    Utilize esse script abaixo, como sendo o principio e vai fazendo as modificações e com isso tera mais controle do seu firewall.

    Código :
    iptables -F
    iptables -X
    iptables -Z
    iptables -F -t nat
     
    iptables -P INPUT  ACCEPT
    iptables -P FORWARD ACCEPT
    iptables -P OUTPUT ACCEPT
    iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

    Obs: Faça a seguinte alteração no seu squid.conf, http_port 3128, como sendo http_port 192.168.0.1:3128
    Assim somente a sua rede interna terá acesso ao squid.

    Boa Sorte!

  11. #11
    guachinim
    Visitante

    Padrão Duvida Iptable

    ok ok.. irei comecar do 0...

    falando nisso...
    c alguem puder me responder o inicio agradeço... heheh :toim:
    pq axo q atravessei um poco o firewall...

    ql eh a 1a. coisa a c fazer???????????????????

  12. #12
    MeioLouko
    Visitante

    Padrão Duvida Iptable

    Opa,

    Pegue um pedaço de papel e escreva o que vc quer proteger? de quem vc quer proteger?

    Determine primeiro regras macro, tipo, ninguem acessa MSN, etc.

    Aconselho a bloquear tudo e depois liberar o necessário e gerar log do que foi bloqueado pra vc saber o que esta acontecendo.

    Mantenha tudo documentado e com base no papel que vc fez, faça auditoria do seu firewall.

    Outra coisa que ajuda é criar chains separadas, tipo CHAIN_DIRETORIA e redireciona a diretoria para essa CHAIN etc.

    Mais uma, pegue outros scripts, mas não para colocar em produção, mas sim pra vc estudar o conteudo, isso ajuda pakas.

    Espero q essas dicas ajude

  13. #13
    guachinim
    Visitante

    Padrão Duvida Iptable

    blz..

    defini algumas coisas...

    pra comeco:

    -bloqeio total IM's
    -bloqeio total de P2P
    -bloqeio total de FTP
    -bloqeio acesso externo total

    apos isso, algumas liberacoes.....mas dae eh por ip's...[vejo isso + tarde]
    Chains sao como grupos?????

    Flw....

  14. #14
    fabricio_
    Visitante

    Padrão Duvida Iptable

    primeiro antes de tudo
    1- Politica de tudo = DROP
    2- No fim de todas as gregras , dropa tudo com log .

    pronto

  15. #15
    guachinim
    Visitante

    Padrão Duvida Iptable

    Tah seguinte..

    pra eu comeca mesmo do zero..! hehe

    preciso 1o. cria um arquivo "firewall" por exemplo.. eu criei tal:

    /etc/rc.d/rc.firewall

    blz.. arquivo vazio!!!

    na 1a. linha do arq vai #!bin/sh ou #!/bin/bash ou eh a mesma coisa..
    [ pra eu q so leigo eh = ]

    duvida!!! '#' eh comentario ou vai mesmo???????

    tah... dae eu comeco mesmo meu arquivo...

    # limpando cadeias
    iptables -F
    # removendo cadeias
    iptables -X
    # restaura cadeias
    iptables -Z
    #dae nego td de tds...
    iptables -t filter -A INPUT -d 192..168.0.0/8 -j DROP

    eh isso mesmo???
    tpw.. assim tah td mundo tah block mesmo!?
    flw...

  16. #16
    fabricio_
    Visitante

    Padrão Duvida Iptable

    # eh comentario , mas voce tem que ele colocar #!/bin/bash para ele saber quem vai interpretar

    sim esta bloqueando todo mundo que entra e tem destino a rede 192.
    soh nao usa -t filter , pois a tabela padrao ja eh a filter

    XD

  17. #17
    guachinim
    Visitante

    Padrão Duvida Iptable

    blz... eu percebi depois...
    hehe.....

    intao tah...

    agora eu preciso libera a porta 3128 dos ips 192.168.0.0/x para eles navegarem!
    esse x ql a diferenca entre 8 - 24 - 32??
    eu uso o 8 mas num sei na verdade heheh....
    voltando:
    iptables -A OUTPUT -d 192.168.0.0/8 -p tpc --dport 3128 -j ACCEPT

    certo?
    preciso bloqia otras portas.. ?
    entao fico:

    #!/bin/bash
    # limpando cadeias
    iptables -F
    # removendo cadeias
    iptables -X
    # restaura cadeias
    iptables -Z
    #liberando a saida 3128
    iptables -A OUTPUT -d 192.168.0.0/8 -p tpc --dport 3128 -j ACCEPT
    #dae nego td de tds...
    iptables -t filter -A INPUT -d 192..168.0.0/8 -j DROP

    flw

  18. #18
    guachinim
    Visitante

    Padrão Duvida Iptable

    galera..
    qndo eu coloco ppp+ ele pega como sendo p/ todas as conexoes ppp
    mas c eu por eth+ funciona????????????

    e to cum o script assim por enqnto:

    #!/bin/bash

    # limpa cadeias
    iptables -F
    # remove cadeias
    iptables -X
    # restaura cadeias
    iptables -Z

    #mascaramento da nat do 192.168.0.0/24
    iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE

    #redireciona da porta 80 pra 3128
    iptables -t nat -A PREROUTING -i eth+ -p tcp --dport 80 -j REDIRECT --to-port 3128

    #bloqueia as entradas syn da telnet vindas da ppp+
    iptables -A INPUT -p tcp --syn --dport 23 -i ppp+ -j DROP

    #bloqueio de portas de entradas
    #porta 21 - ftp
    iptables -A INPUT -p tcp --dport 21 -j DROP
    #porta 23 - telnet
    iptables -A INPUT -p tcp --dport 23 -j DROP
    #porta 25 - smtp
    iptables -A INPUT -p tcp --dport 25 -j DROP
    #porta 80 - http
    iptables -A INPUT -p tcp --dport 80 -j DROP

    #bloqueio de saidas
    #porta icq
    iptables -A OUTPUT -d 192.168.0.0/24 -p tcp --dport 5190 -j DROP
    #portas irc
    iptables -A OUTPUT -d 192.168.0.0/24 -p tcp --dport 6666-6668 -j DROP
    #porta msn
    iptables -A OUTPUT -d 192.168.0.0/24 -p tcp --dport 1863 -j DROP
    #porta http
    iptables -A OUTPUT -d 192.168.0.0/24 -p tcp --dport 80 -j DROP

    #libera saida porta:3128
    iptables -A OUTPUT -d 192.168.0.0/24 -p tpc --dport 3128 -j ACCEPT

    #bloqueia td na rede
    iptables -A INPUT -d 192.168.0.0/24 -j DROP

    c tiveh algo estranho, errado ou algo do tipo.. me falem... nem testei ainda!

    Flw..

    Chiko

  19. #19
    fabricio_
    Visitante

    Padrão Duvida Iptable

    vc tem que lembrar q , tudo q vc libera para sair , vai ter um retorno ! e esse retorno vai ser uma entrada

  20. #20
    guachinim
    Visitante

    Padrão Duvida Iptable

    Citação Postado originalmente por fabricio_
    vc tem que lembrar q , tudo q vc libera para sair , vai ter um retorno ! e esse retorno vai ser uma entrada
    intao.. mas assim.. pelo que coloquei.. axo q a unik coisa liberada eh a 3128 que eh a porta padrao do squid.. pois bem ela eh a saida e a entrada da http... entao eu tenho q libera a entrada da 3128 tbm...

    mas e qnto a entradas ilicitas??!