+ Responder ao Tópico



  1. #1

    Padrão Problemas com Outlook + Iptables

    Boa noite galera!

    Sei que esse assunto é meio manjadinho, estive fuçando um monte no fórum, achei milhares de posts sobre o assunto mas nenhum me ajudou.

    O problema é o seguinte:

    O firewall da empresa está permitindo toda a rede receber e-mails pelo Outlook Express normalmente, porém não permite o envio de e-mails. O Outlook cliente conecta no servidor SMTP mas não faz mais nada! O erro do Outlook é de tempo limite, ou seja, após algum tempo conectado, aparece a velha janela dizendo que o servidor SMTP não responde há mais de 60 segundos.

    Então, testei a conexão via telnet pelos clientes. Conecta na porta 25 mas não recebo nenhuma mensagem do servidor. Quando limpo todas as regras do iptables e executo o comando de mascaramento novamente, os clientes conectam normalmente até por telnet, mas quando executo novamente o script de firewall, novamente não enviam mais mensagens e não recebo mais mensagens do servidor SMTP no telnet. Não sei o que eu fiz de errado e preciso de uma ajuda!

    O problema começou quando eu troquei o IP do modem para outra faixa de IP, antes estava funcionando. Alterei para a faixa da eth0 e antes estava na eth1, mas fiz todas as mudanças no firewall.

    Lembrando que temos dois servidores DNS locais funcionando perfeitamente e os clientes acessam os dois, nada de DNS externo.

    Alguém tem alguma luz???

  2. #2

    Padrão Script do Firewall

    #!/bin/sh
    #
    # Variáveis
    LAN=192.168.1.0/24
    LAN1=172.168.15.0/24
    DSALL=0/0
    IFACE=eth0
    IFACE1=eth1
    #
    # Mascaramento de conexão
    iptables -t nat -A POSTROUTING -o $IFACE -s $LAN -j MASQUERADE
    iptables -A INPUT -p tcp --syn -s $LAN -j ACCEPT
    #
    # Redirecionar portas para Squid e Dansguardian
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s $LAN --dport 80 -j REDIRECT --to-port 8080
    iptables -t nat -A PREROUTING -i $IFACE1 -p udp -s $LAN --dport 80 -j REDIRECT --to-port 8080
    #
    # Proteção contra trojans
    iptables -N TROJAN
    iptables -A TROJAN -m limit --limit 15/m -j LOG --log-level 6 --log-prefix "FIREWALL: tojan: "
    iptables -A TROJAN -j DROP
    iptables -A INPUT -p tcp --dport 666 -j TROJAN
    iptables -A INPUT -p tcp --dport 4000 -j TROJAN
    iptables -A INPUT -p tcp --dport 6000 -j TROJAN
    iptables -A INPUT -p tcp --dport 6006 -j TROJAN
    iptables -A INPUT -p tcp --dport 16660 -j TROJAN
    iptables -A INPUT -p udp --dport 666 -j TROJAN
    iptables -A INPUT -p udp --dport 4000 -j TROJAN
    iptables -A INPUT -p udp --dport 6000 -j TROJAN
    iptables -A INPUT -p udp --dport 6006 -j TROJAN
    iptables -A INPUT -p udp --dport 16660 -j TROJAN
    #
    # Proteção contra Worms
    iptables -A FORWARD -p tcp --dport 135 -j DROP
    #
    # SYN-Flood
    iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT
    #
    # Ping da Morte
    iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
    #
    # Port Scanners
    iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j DROP
    #
    # Aceitar lista de portas padrão
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A OUTPUT -o lo -j ACCEPT
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    iptables -A FORWARD -o $IFACE1 -m state --state NEW,INVALID -j DROP
    iptables -t nat -A PREROUTING -p tcp --dport 21 -j ACCEPT
    iptables -t nat -I POSTROUTING -o $IFACE1 -p tcp --dport 25 -s $LAN -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp --dport 25 -s $LAN -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p udp --dport 25 -s $LAN -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp --dport 53 -j ACCEPT -s $LAN
    iptables -t nat -A PREROUTING -p udp --dport 53 -j ACCEPT -s $LAN
    iptables -A INPUT -p tcp --dport 53 -s $LAN -j ACCEPT
    iptables -A INPUT -p udp --dport 53 -s $LAN -j ACCEPT
    iptables -A INPUT -i $IFACE -p tcp --dport 80 -j ACCEPT
    iptables -A INPUT -i $IFACE -p udp --dport 80 -j ACCEPT
    iptables -A INPUT -i $IFACE1 -p tcp --dport 80 -j ACCEPT
    iptables -A INPUT -i $IFACE1 -p udp --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp --dport 110 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p udp --dport 110 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p udp --dport 123 -s $LAN1 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p udp --dport 123 -s $LAN -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p tcp --dport 137 -s $LAN1 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p tcp --dport 138 -s $LAN1 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p tcp --dport 139 -s $LAN1 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p udp --dport 137 -s $LAN1 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p udp --dport 138 -s $LAN1 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p udp --dport 139 -s $LAN1 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp --dport 137 -s $LAN -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp --dport 138 -s $LAN -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp --dport 139 -s $LAN -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p udp --dport 137 -s $LAN -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p udp --dport 138 -s $LAN -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p udp --dport 139 -s $LAN -j ACCEPT
    iptables -A INPUT -i $IFACE -p tcp --dport 137 -s $LAN1 -j ACCEPT
    iptables -A INPUT -i $IFACE -p tcp --dport 138 -s $LAN1 -j ACCEPT
    iptables -A INPUT -i $IFACE -p tcp --dport 139 -s $LAN1 -j ACCEPT
    iptables -A INPUT -i $IFACE -p udp --dport 137 -s $LAN1 -j ACCEPT
    iptables -A INPUT -i $IFACE -p udp --dport 138 -s $LAN1 -j ACCEPT
    iptables -A INPUT -i $IFACE -p udp --dport 139 -s $LAN1 -j ACCEPT
    iptables -A INPUT -i $IFACE1 -p tcp --dport 137 -s $LAN -j ACCEPT
    iptables -A INPUT -i $IFACE1 -p tcp --dport 138 -s $LAN -j ACCEPT
    iptables -A INPUT -i $IFACE1 -p tcp --dport 139 -s $LAN -j ACCEPT
    iptables -A INPUT -i $IFACE1 -p udp --dport 137 -s $LAN -j ACCEPT
    iptables -A INPUT -i $IFACE1 -p udp --dport 138 -s $LAN -j ACCEPT
    iptables -A INPUT -i $IFACE1 -p udp --dport 139 -s $LAN -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p tcp --dport 389 -s $LAN1 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p udp --dport 389 -s $LAN1 -j ACCEPT
    iptables -A INPUT -i $IFACE -p tcp --dport 389 -s $LAN -j ACCEPT
    iptables -A INPUT -i $IFACE -p udp --dport 389 -s $LAN -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp --dport 443 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p udp --dport 443 -j ACCEPT
    iptables -A INPUT -i $IFACE1 -p tcp --dport 445 -s $LAN -j ACCEPT
    iptables -A INPUT -i $IFACE1 -p udp --dport 445 -s $LAN -j ACCEPT
    iptables -A INPUT -i $IFACE -p tcp --dport 445 -s $LAN1 -j ACCEPT
    iptables -A INPUT -i $IFACE -p udp --dport 445 -s $LAN1 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp --dport 465 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp --dport 500 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp --dport 587 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp --dport 995 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p udp --dport 995 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.17/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.31/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.40/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.44/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.70/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.71/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.72/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.73/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.74/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.75/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.76/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.77/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.78/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.79/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.80/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -s 192.168.1.215/32 --dport 1863 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp --dport 1863 -s $LAN -j DROP
    iptables -t nat -A PREROUTING -i $IFACE -p tcp --dport 3050 -s $LAN -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p udp --dport 3050 -s $LAN -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp --dport 5017 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp --dport 5222 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp --dport 5223 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp --dport 5269 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp --dport 5280 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp --dport 8888 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p tcp --dport 6677 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p udp --dport 6677 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp --dport 6677 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p udp --dport 6677 -j ACCEPT
    iptables -t nat -A PREROUTING -i $PFACE -p tcp --dport 6677 -j ACCEPT
    iptables -t nat -A PREROUTING -i $PFACE -p udp --dport 6677 -j ACCEPT
    iptables -A INPUT -i $PFACE -p tcp --dport 6677 -j ACCEPT
    iptables -A INPUT -i $PFACE -p udp --dport 6677 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp --dport 8080 -j ACCEPT -s $LAN
    iptables -t nat -A PREROUTING -i $IFACE1 -p udp --dport 8080 -j ACCEPT -s $LAN
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp --dport 10000 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE1 -p udp --dport 10000 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p tcp --dport 10000 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IFACE -p udp --dport 10000 -j ACCEPT
    iptables -t nat -A PREROUTING -i $PFACE -p tcp --dport 10000 -j ACCEPT
    iptables -t nat -A PREROUTING -i $PFACE -p udp --dport 10000 -j ACCEPT
    iptables -A INPUT -i $IFACE1 -p tcp --dport 10000 -s $LAN -j ACCEPT
    iptables -A INPUT -i $IFACE1 -p udp --dport 10000 -s $LAN -j ACCEPT
    iptables -A INPUT -i $IFACE -p tcp --dport 10000 -j ACCEPT
    iptables -A INPUT -i $IFACE -p udp --dport 10000 -j ACCEPT
    iptables -A INPUT -i $PFACE -p tcp --dport 10000 -j ACCEPT
    iptables -A INPUT -i $PFACE -p udp --dport 10000 -j ACCEPT
    #
    # Minimizar delay na porta SSH e PostgreSQL
    iptables -t mangle -A PREROUTING -j TOS --set-tos Minimize-Delay -p tcp --dport 6677
    iptables -t mangle -A OUTPUT -j TOS --set-tos Minimize-Delay -p tcp --sport 6677
    iptables -t mangle -A PREROUTING -j TOS --set-tos Minimize-Delay -p tcp --dport 5432
    iptables -t mangle -A OUTPUT -j TOS --set-tos Minimize-Delay -p tcp --sport 5432
    #
    # Rejeitar pacotes não listados
    iptables -A INPUT -i $IFACE -p tcp -j DROP
    iptables -A INPUT -i $IFACE1 -p tcp -j DROP
    iptables -A INPUT -i $PFACE -p tcp -j DROP
    iptables -t nat -A PREROUTING -i $IFACE -p tcp -j DROP
    iptables -t nat -A PREROUTING -i $IFACE1 -p tcp -j DROP
    iptables -t nat -A PREROUTING -i $PFACE -p tcp -j DROP

  3. #3

    Padrão

    Cara...pelo que vi, provavelmente é falta de redirecionamento da porta 25.....adiciona as seguintes linhas e testa:

    PORT_SMTP="25"
    iptables -t nat -A PREROUTING -p tcp -i INTERFACE COM IP EXTERNO -d IP EXTERNO --dport $PORT_SMTP -j DNAT --to MAILSERVER:$PORT_SMTP

    iptables -A FORWARD -p tcp -i INTERFACE COM IP EXTERNO -d MAILSERVER --dport $PORT_SMTP -j ACCEPT

    iptables -t nat -A PREROUTING -p tcp -i INTERFACE COM IP INTERNO -d IP EXTERNO --dport $PORT_SMTP -j DNAT --to MAILSERVER:$PORT_SMTP

    iptables -A FORWARD -p tcp -i INTERFACE COM IP INTERNO -d MAILSERVER --dport $PORT_SMTP -j ACCEPT

    Espero ter ajudado!!!

  4. #4

    Padrão

    Verifica o que os colegas pedirão, se realmente os firewall não estiver bloqueando
    o entrada e saida para a porta 25, então vc deve verificar as configuração de seu MTA, sendo assim, você pode postar no forum relacionado a :

    https://under-linux.org/forums/sendmail-qmail-postfix/

    Falow ...

  5. #5

    Padrão

    Slackman, valeu, vou tentar isso, o problema é que são vários servidores SMTPs, mas todos são externos, nenhum é na empresa.

    Citação Postado originalmente por rootmaster Ver Post
    Verifica o que os colegas pedirão, se realmente os firewall não estiver bloqueando
    o entrada e saida para a porta 25, então vc deve verificar as configuração de seu MTA, sendo assim, você pode postar no forum relacionado a :

    https://under-linux.org/forums/sendmail-qmail-postfix/

    Falow ...
    rootmaster, mesma coisa, não temos MTA interno, isso que tá dando dor de cabeça ehehehe.

    O fato é que eu consigo conexão via telnet com o servidor SMTP, mas não obtenho nenhuma resposta.

    Exemplo de conexão sem DROP no firewall: conecto normalmente no SMTP e quando conecto, o SMTP me retorna assim:

    220 endereço.do.smtp
    # ehlo
    250-Hello [Meu IP]...
    E também as máquinas enviam e-mail normalmente.

    Exemplo de conexão com DROP no firewall: conecta no SMTP (ou seja, CONECTA MESMO), chama a linha de comando, mas o SMTP nao responde, não aparece o tal do 220 endereço.do.smtp, sacou?

    Isso está fazendo com que os outlooks conectem com qualquer servidor SMTP, já verifiquei em todos os clientes pelo comando netstat -na e estão realmente conectados nos servidores SMTPs, mas não há ação alguma depois da conexão e o outlook abre uma janela depois de 1 minuto de espera dizendo que o servidor não responde há mais de 60 segundos e se eu quero aguardar o SMTP ou quero cancelar a operação.

    Pra explicar também como está a rede:

    A entrada da internet é feita por um modem com o endereço 172.168.15.254 ligado na eth0 do proxy.

    A distribuição da internet é feita pelo proxy no endereço 192.168.1.101 na eth1.

    Temos dois DNS, o proxy e mais um 192.168.1.102 e todos os clientes estão com esses dois servidores como primário e secundário.

    Eu não sei se pode ser alguma coisa nas UDPs, pois até onde eu saiba, liberando somente a TCP 25 já funciona normalmente e o SMTP não utiliza outra porta.

    Tô perdendo os cabelos!!! aihaiuhaihaaiuha

    Grande abraço e muito obrigado aos dois pela ajuda!!!

  6. #6

    Padrão Caraio!!!

    Caraio galera, esquece isso!!! Não era problema com firewall não.

    Até pode ficar de experiência para quem tiver o mesmo problema.

    Acontece que eu estou usando o layer7 para bloquear alguns P2P, inclusive os programas de chat como MSN e Skype.

    Entao, olhando bem os logs em uma hora fora do horário comercial em que ninguém estaria tentando conectar ao Skype, vi nos logs do layer7 várias mensagens sobre tentativas de conexão do Skype (Match skypeout).

    Aí eu achei esses posts aqui no UnderLinux mesmo:

    https://under-linux.org/forums/proxy...mtp-e-ftp.html

    https://under-linux.org/forums/proxy...mtp-e-ftp.html

    Funfa!!!

    Muito obrigado à quem tentou ajudar! Espero que isso possa resolver mais problemas do gênero pois o layer7 realmente bloqueia o Skype.
    Última edição por glaucioklipel; 25-04-2007 às 22:26.