+ Responder ao Tópico



  1. #1
    Luis_Fred
    Visitante

    Padrão Problemas com iptables

    Pessoal,

    Estou criando regras iptables no meu gateway (RedHat 9) e estou com uma dificuldade.
    Quando uso a politica iptables -P OUTPUT DROP, não consigo mais aceso a internet as outras estão OK.
    Estou direcionando tudo que vem de tcp p/ porta 80 da eth1 p/ o squid.
    Liberei a porta 80 p/ eth0 e mesmo assim, não consigo acesso.
    Quais portas tenho que liberar p/ usar a politica iptables -P OUTPUT DROP e os clientes tenham acesso a net?

  2. #2

    Padrão Problemas com iptables

    tipo num e mais facil ir bloqueando os serviços q vc não quer na rede tipo msn irc etc etc etc...???

    do q bloquear tudo ?? e ir liberando

    tipo acessa essa pagina e da uma olhada

    http://iptables.under-linux.org/

    vai te ajudar bastante

  3. #3

    Padrão Problemas com iptables

    outro detalhe o seu modem ta em modo bridge ?? se tiver em router nem rola os bloqueios tem q ser dados no modem

  4. #4
    Moderador Avatar de Bruno
    Ingresso
    Nov 2002
    Localização
    Guarapuava-PR
    Posts
    4.181
    Posts de Blog
    1

    Padrão Problemas com iptables

    pq bloquear a porta output deixa ele aberta


    se vc quizer fachar vc vai ter que abrir a 53 80 21 25 110 142 443 e mais outras

  5. #5
    netricardo
    Visitante

    Padrão Problemas com iptables

    Bom , eu sou a favor de bloquear tudo e ir liberando so que acessam.
    Mas o OUTPUT deixo liberado.

  6. #6
    drginfo
    Visitante

    Padrão firewall

    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

  7. #7
    Fred_Luis
    Visitante

    Padrão Problemas com iptables

    É... pelo jeito é mais fácil liberar o OUTPUT mesmo...

    Valeu pela ajuda galera!