Página 1 de 3 123 ÚltimoÚltimo
+ Responder ao Tópico



  1. tenho aqui um firewall que redireciona as conexões para uma maquina da rede interna, coloquei todas as regras de DNAT, mas não funciona, so funciona se mascarar o ip da maquina

    segue o script abaixo:

    #!/bin/sh

    # Variáveis
    # -------------------------------------------------------
    iptables=/usr/local/sbin/iptables
    IF_EXTERNA=eth1
    IF_INTERNA=eth0
    IF_MCV=eth2

    # Ativa módulos
    # -------------------------------------------------------
    /sbin/modprobe iptable_nat
    /sbin/modprobe ip_conntrack
    /sbin/modprobe ip_conntrack_ftp
    /sbin/modprobe ip_nat_ftp
    /sbin/modprobe ipt_LOG
    /sbin/modprobe ipt_REJECT
    /sbin/modprobe ipt_MASQUERADE

    # Ativa roteamento no kernel
    # -------------------------------------------------------
    echo "1" > /proc/sys/net/ipv4/ip_forward

    # Proteção contra IP spoofing
    # -------------------------------------------------------
    echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter

    # Zera regras
    # -------------------------------------------------------
    $iptables -F
    $iptables -X
    $iptables -F -t nat
    $iptables -X -t nat
    $iptables -F -t mangle
    $iptables -X -t mangle

    # Determina a política padrão
    # -------------------------------------------------------
    $iptables -P INPUT DROP
    $iptables -P OUTPUT DROP
    $iptables -P FORWARD DROP

    #################################################
    # Tabela FILTER
    #################################################

    # Dropa pacotes TCP indesejáveis
    # -------------------------------------------------------
    $iptables -A FORWARD -p tcp ! --syn -m state --state NEW -j LOG --log-level 6 --log-prefix "FIREWALL: NEW sem syn: "
    $iptables -A FORWARD -p tcp ! --syn -m state --state NEW -j DROP

    # Dropa pacotes mal formados
    # -------------------------------------------------------
    $iptables -A INPUT -i $IF_EXTERNA -m unclean -j LOG --log-level 6 --log-prefix "FIREWALL: pacote mal formado: "
    $iptables -A INPUT -i $IF_EXTERNA -m unclean -j DROP

    # Aceita os pacotes que realmente devem entrar
    # -------------------------------------------------------
    $iptables -A INPUT -i ! $IF_EXTERNA -j ACCEPT
    $iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    $iptables -A OUTPUT -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT
    $iptables -A FORWARD -m state --state ESTABLISHED,RELATED,NEW -j ACCEPT

    # Proteção contra tronjans
    # -------------------------------------------------------
    $iptables -N TROJAN
    $iptables -A TROJAN -m limit --limit 15/m -j LOG --log-level 6 --log-prefix "FIREWALL: trojan: "
    $iptables -A TROJAN -j DROP
    $iptables -A INPUT -p TCP -i $IF_EXTERNA --dport 666 -j TROJAN
    $iptables -A INPUT -p TCP -i $IF_EXTERNA --dport 666 -j TROJAN
    $iptables -A INPUT -p TCP -i $IF_EXTERNA --dport 4000 -j TROJAN
    $iptables -A INPUT -p TCP -i $IF_EXTERNA --dport 6000 -j TROJAN
    $iptables -A INPUT -p TCP -i $IF_EXTERNA --dport 6006 -j TROJAN
    $iptables -A INPUT -p TCP -i $IF_EXTERNA --dport 16660 -j TROJAN

    # Proteção contra worms
    # -------------------------------------------------------
    $iptables -A FORWARD -p tcp --dport 135 -i $IF_INTERNA -j REJECT
    $iptables -A FORWARD -p tcp --dport 135 -i $IF_MCV -j REJECT

    # Proteção contra syn-flood
    # -------------------------------------------------------
    $iptables -A FORWARD -p tcp --syn -m limit --limit 2/s -j ACCEPT

    # Proteção contra ping da morte
    # -------------------------------------------------------
    $iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT

    # Proteção contra port scanners
    # -------------------------------------------------------
    $iptables -N SCANNER
    $iptables -A SCANNER -m limit --limit 15/m -j LOG --log-level 6 --log-prefix "FIREWALL: port scanner: "
    $iptables -A SCANNER -j DROP
    $iptables -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -i $IF_EXTERNA -j SCANNER
    $iptables -A INPUT -p tcp --tcp-flags ALL NONE -i $IF_EXTERNA -j SCANNER
    $iptables -A INPUT -p tcp --tcp-flags ALL ALL -i $IF_EXTERNA -j SCANNER
    $iptables -A INPUT -p tcp --tcp-flags ALL FIN,SYN -i $IF_EXTERNA -j SCANNER
    $iptables -A INPUT -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -i $IF_EXTERNA -j SCANNER
    $iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -i $IF_EXTERNA -j SCANNER
    $iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -i $IF_EXTERNA -j SCANNER
    $iptables -A INPUT -p icmp -d 200.x.x.x -j DROP

    # Libera acesso externo a determinadas portas
    # -------------------------------------------------------
    $iptables -A INPUT -p tcp --dport 9900 -i $IF_EXTERNA -j ACCEPT
    $iptables -A INPUT -p tcp --dport 9900 -i $IF_INTERNA -j ACCEPT
    $iptables -A INPUT -p tcp --dport 9900 -i $IF_MCV -j ACCEPT
    $iptables -A INPUT -p tcp --dport 80 -i $IF_INTERNA -j ACCEPT
    $iptables -A INPUT -p tcp --dport 80 -i $IF_EXTERNA -j ACCEPT
    $iptables -A INPUT -p tcp --dport 80 -i $IF_MCV -j ACCEPT
    $iptables -A INPUT -p tcp --dport 9023 -i $IF_EXTERNA -j ACCEPT
    $iptables -A INPUT -p tcp --dport 9023 -i $IF_INTERNA -j ACCEPT
    $iptables -A INPUT -p tcp --dport 9023 -i $IF_MCV -j ACCEPT
    $iptables -A INPUT -p tcp --dport 53 -i $IF_INTERNA -j ACCEPT
    $iptables -A INPUT -p tcp --dport 53 -i $IF_EXTERNA -j ACCEPT
    $iptables -A INPUT -p tcp --dport 53 -i $IF_MCV -j ACCEPT
    $iptables -A INPUT -p tcp --dport 3497 -i $IF_INTERNA -j ACCEPT
    $iptables -A INPUT -p tcp --dport 3497 -i $IF_EXTERNA -j ACCEPT
    $iptables -A INPUT -p tcp --dport 3497 -i $IF_MCV -j ACCEPT
    $iptables -A INPUT -p tcp --dport 443 -i $IF_INTERNA -j ACCEPT
    $iptables -A INPUT -p tcp --dport 443 -i $IF_EXTERNA -j ACCEPT
    $iptables -A INPUT -p tcp --dport 443 -i $IF_MCV -j ACCEPT
    $iptables -A INPUT -p tcp --dport 25 -i $IF_MCV -j ACCEPT
    $iptables -A OUTPUT -p tcp --sport 25 -o $IF_MCV -j ACCEPT
    $iptables -A INPUT -p tcp --dport 110 -i $IF_MCV -j ACCEPT
    $iptables -A OUTPUT -p tcp --sport 110 -o $IF_MCV -j ACCEPT
    $iptables -A INPUT -p tcp --dport 9999 -i $IF_MCV -j ACCEPT
    $iptables -A OUTPUT -p tcp --sport 9999 -o $IF_MCV -j ACCEPT
    $iptables -A INPUT -p tcp --dport 9999 -i $IF_EXTERNA -j ACCEPT
    $iptables -A OUTPUT -p tcp --sport 9999 -o $IF_INTERNA -j ACCEPT
    $iptables -A INPUT -p tcp --dport 9999 -i $IF_MCV -j ACCEPT
    $iptables -A OUTPUT -p tcp --sport 9999 -o $IF_MCV -j ACCEPT

    #################################################
    # Tabela NAT
    #################################################

    # Ativa mascaramento de saída
    # -------------------------------------------------------
    $iptables -A FORWARD -s 15.100.0.2 -j ACCEPT
    $iptables -A FORWARD -d 15.100.0.2 -j ACCEPT
    $iptables -t nat -A POSTROUTING -s 15.100.0.2 -j SNAT --to 201.x.x.x
    #$iptables -t nat -A POSTROUTING -d 15.100.0.2 -j MASQUERADE (O REDIRECIONAMENTO SO FUNCIONA COM ESSA REGRA)
    $iptables -A FORWARD -s 10.85.8.160 -j ACCEPT
    $iptables -A FORWARD -d 10.85.8.160 -j ACCEPT
    $iptables -A POSTROUTING -t nat -s 10.85.8.160 -j MASQUERADE
    $iptables -A POSTROUTING -t nat -d 10.85.8.160 -j MASQUERADE


    # Redireciona portas para outros servidores
    # -------------------------------------------------------
    $iptables -t nat -A PREROUTING -p tcp -d 201.x.x.x --dport 80 -j DNAT --to-destination 15.100.0.2:80
    $iptables -t nat -A PREROUTING -p udp -d 201.x.x.x --dport 80 -j DNAT --to-destination 15.100.0.2:80
    #$iptables -t nat -A PREROUTING -p tcp -d 10.85.8.7 --dport 80 -j DNAT --to-destination 15.100.0.2:80
    #$iptables -t nat -A PREROUTING -p udp -d 10.85.8.7 --dport 80 -j DNAT --to-destination 15.100.0.2:80
    $iptables -t nat -A PREROUTING -p tcp -d 201.x.x.x --dport 443 -j DNAT --to-destination 15.100.0.2:443
    $iptables -t nat -A PREROUTING -p udp -d 201.x.x.x --dport 443 -j DNAT --to-destination 15.100.0.2:443
    $iptables -t nat -A PREROUTING -p tcp -d 10.85.8.7 --dport 443 -j DNAT --to-destination 15.100.0.2:443
    $iptables -t nat -A PREROUTING -p udp -d 10.85.8.7 --dport 443 -j DNAT --to-destination 15.100.0.2:443
    $iptables -t nat -A PREROUTING -p tcp -d 201.x.x.x --dport 9999 -j DNAT --to-destination 15.100.0.2:9999
    $iptables -t nat -A PREROUTING -p udp -d 201.x.x.x --dport 9999 -j DNAT --to-destination 15.100.0.2:9999
    $iptables -t nat -A PREROUTING -p tcp -d 10.85.8.7 --dport 9999 -j DNAT --to-destination 15.100.0.2:9999
    $iptables -t nat -A PREROUTING -p udp -d 10.85.8.7 --dport 9999 -j DNAT --to-destination 15.100.0.2:9999
    $iptables -t nat -A PREROUTING -p tcp -d 201.x.x.x --dport 9023 -j DNAT --to-destination 15.100.0.2:21
    $iptables -t nat -A PREROUTING -p udp -d 201.x.x.x --dport 9023 -j DNAT --to-destination 15.100.0.2:21
    $iptables -t nat -A PREROUTING -p tcp -d 10.85.8.7 --dport 9023 -j DNAT --to-destination 15.100.0.2:21
    $iptables -t nat -A PREROUTING -p udp -d 10.85.8.7 --dport 9023 -j DNAT --to-destination 15.100.0.2:21
    $iptables -t nat -A PREROUTING -p tcp -d 10.85.8.7 --dport 5800 -j DNAT --to-destination 15.100.0.2:5800
    $iptables -t nat -A PREROUTING -p udp -d 10.85.8.7 --dport 5800 -j DNAT --to-destination 15.100.0.2:5800
    $iptables -t nat -A PREROUTING -p tcp -d 10.85.8.7 --dport 5900 -j DNAT --to-destination 15.100.0.2:5900
    $iptables -t nat -A PREROUTING -p udp -d 10.85.8.7 --dport 5900 -j DNAT --to-destination 15.100.0.2:5900
    $iptables -t nat -A PREROUTING -p tcp -d 10.85.8.7 --dport 3497 -j DNAT --to-destination 15.100.0.2:3497
    $iptables -t nat -A PREROUTING -p udp -d 10.85.8.7 --dport 3497 -j DNAT --to-destination 15.100.0.2:3497
    $iptables -t nat -A PREROUTING -p tcp -s 10.85.8.57 -d 10.85.8.7 --dport 1501 -j DNAT --to-destination 15.100.0.2:1501
    $iptables -t nat -A PREROUTING -p udp -s 10.85.8.57 -d 10.85.8.7 --dport 1501 -j DNAT --to-destination 15.100.0.2:1501
    $iptables -t nat -A PREROUTING -p tcp -s 10.85.8.94 -d 10.85.8.7 --dport 1501 -j DNAT --to-destination 15.100.0.2:1501
    $iptables -t nat -A PREROUTING -p udp -s 10.85.8.94 -d 10.85.8.7 --dport 1501 -j DNAT --to-destination 15.100.0.2:1501

    O PROBLEMA ESTA POR QUE TENHO UM SOFTWARE QUE PRECISA MOSTRAR O IP DE QUEM ESTA ACESSANDO, E QUANDO ESTA MASCARADO SO MOSTRA O IP DO FIREWALL, PEÇO A AJUDA DE VOÇES.

  2. cara...

    geralmente, por questões de bom senso, não se usa "urgente" em tópicos, pois se alguém precisa de urgência contrata alguém pra fazer...

    com relação a seu problema... esse redirecionamento é para máquinas na própria rede ou é da internet?



  3. Num tem muito segredo nas regras para redirecionar a outro servidor.
    Abaixo uma linha de REDIRECT para outro servidor INTERNO.
    Talvez o que possa estar faltando são conexões FORWARD para o servidor INTERNO.

    /usr/sbin/iptables -A FORWARD -s $LAN_REDE -p tcp -d 192.168.1.102 -j ACCEPT

    /usr/sbin/iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to 192.168.1.102:3128

    São meros exemplos que vc adequa a sua rede.

    Espero ter ajudado de alguma forma.

  4. primeiramente, acho que voce deve LIMPAR seu firewall..

    tem muita proteção "desnecessaria", da época do onça ...

    deixe ele BASICO, e vá adicionando regra por regra...

    sugestão para o mascaramento é:

    supondo que sua interface de conexao publica (internet) seria a eth1 entao a regra de mascaramento seria:

    iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

    assim.. ele vai faz 'NAT' para tudo que for sair da eth1 ...



  5. Concordo com a citação anterior,
    Não vejo tanta necessidade de utilizar a Politica para OUTPUT como DROP.
    só faz ter mais regras no firewall. Isso é uma opinião e não uma critica.

    abraços






Tópicos Similares

  1. Ajuda em redirecionamento raptorcache em hotspot e ppoe
    Por browncharles no fórum Mikrotik
    Respostas: 6
    Último Post: 28-10-2016, 15:20
  2. ajuda em enlance...urgente ....
    Por matheustoledo no fórum Redes
    Respostas: 3
    Último Post: 18-08-2012, 21:48
  3. Ajuda em openwebmail com html urgente !
    Por squidbr no fórum Servidores de Rede
    Respostas: 2
    Último Post: 15-03-2007, 08:00
  4. Ajuda em servidor de e-mail urgente !!!!
    Por squid_br no fórum Servidores de Rede
    Respostas: 10
    Último Post: 31-12-2005, 09:10
  5. Ajuda em Autenticação
    Por PandaAzul no fórum Servidores de Rede
    Respostas: 1
    Último Post: 07-01-2003, 17:02

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L