Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    [RESOLVIDO] 3 Servidores de E-mail saindo com IPS diferentes.

    Scheduled Pinned Locked Moved Portuguese
    10 Posts 4 Posters 2.1k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • R Offline
      ronaldog.araujo
      last edited by

      Boa tarde senhores …

      Acabei de configurar um PFSense-2.2 aqui na empresa ...

      O nosso cenário é:

      Temos 2 links de internet com 5 ips válidos cada link, fazendo loadbalance / failover.

      O Gateway do link 1 é: 100.100.100.100
      O Gateway do link 2 é: 200.200.200.200

      Atrás desse PFSense na minha DMZ tenho 3 servidores de e-mail.

      Para cada servidor de e-mail quero dar 1 ip válido (de cada link) para que seja enviado e-mail com esse IP.

      Dessa forma:
      O servidor 1 vai sair com o IP 100.100.100.101 (link 1). Caso o link 1 caia, ele deverá sair com 200.200.200.201 (link 2). IP LOCAL = 192.168.1.1
      O servidor 2 vai sair com o IP 100.100.100.102 (link 1). Caso o link 1 caia, ele deverá sair com 200.200.200.202 (link 2). IP LOCAL = 192.168.1.2
      O servidor 3 vai sair com o IP 100.100.100.103 (link 1). Caso o link 1 caia, ele deverá sair com 200.200.200.203 (link 3). IP LOCAL = 192.168.1.3

      Pensei em algo assim:

      Quando a origem for 192.168.1.1 e estiver enviando e-mail o IP sainte deverá ser 100.100.100.102 ou 200.200.200.203
      Quando a origem for 192.168.1.2 e estiver enviando e-mail o IP sainte deverá ser 100.100.100.102 ou 200.200.200.203
      Quando a origem for 192.168.1.2 e estiver enviando e-mail o IP sainte deverá ser 100.100.100.102 ou 200.200.200.203

      Não sei se fui claro, mas estou enroscado nessa parte.

      Antes de implantar o PFSense eu tinha essa configuração em IPTABLES e SHELL SCRIPT (pra trocar o parâmetro smtp_bind_address do postfix) quando o link caia. Funcionava 100% ...

      Deve ter alguma forma de se fazer isso no PFSense, mas ainda não achei a solução.

      Quero que esse IP fique registrado no cabeçalho do e-mail (na maioria das vezes, é clicar em cima do e-mail e pedir para MOSTRAL ORIGINAL). Ele te mostra de qual IP foi enviado o e-mail.

      Obrigado por qualquer ajuda.

      Ronaldo Araujo

      1 Reply Last reply Reply Quote 0
      • marcellocM Offline
        marcelloc
        last edited by

        Se os servidores de email não estão no seu firewall, você só precisa criar as regras de balanceamento e definir o ip de saída de cada link no outbound nat.

        Treinamentos de Elite: http://sys-squad.com

        Help a community developer! ;D

        1 Reply Last reply Reply Quote 0
        • R Offline
          ronaldog.araujo
          last edited by

          Bom dia Marcelo …

          Obrigado pela atenção.

          Vamos lá:

          Os meus servidores não estão no firewall. Tenho uma outra máquina onde os 3 servidores são executados. Essa máquina está na minha DMZ.

          Eu já tenho a regra de balanceamento ... Tanto que se um link cai, o pFSense já troca o meu IP de saída (Gateway 1 e Gateway 2)

          Alterei o Mode do Outubound para MANUAL.

          A regra outbound que montei foi a seguinte:

          Interface: DMZ

          Protocol: TCP/UDP

          Source Type: NetWork
          Source Address: 192.168.1.1/32
          Source Port: deixei em branco

          Destination Type: Any
          Destination Port: deixei em branco

          Translation Address: coloquei o IP que quero que seja registrado no caso 100.100.100.101. O gateway dessa rede é: 100.100.100.100
          Translation Port: deixei em branco

          A lógica que usei foi: qdo a origem for a minha DMZ e o destino for *, troque o IP para 100.100.100.101 ...

          Fiz o envio do e-mail e no cabeçalho do mesmo ainda está indo o IP do gateway (100.100.100.100) ao invés do IP que eu setei (100.100.100.101).

          Algumas tentativas que fiz:

          1. Trocar a Interface para WAN.
          2. Trocar  Source Address para 192.168.1.0/24

          E mesmo assim nada ...

          Obrigado mais uma vez pela ajuda.

          1 Reply Last reply Reply Quote 0
          • marcellocM Offline
            marcelloc
            last edited by

            No outbound nat, as regras são definidas pela interface de saída, não de entrada.

            Treinamentos de Elite: http://sys-squad.com

            Help a community developer! ;D

            1 Reply Last reply Reply Quote 0
            • R Offline
              ronaldog.araujo
              last edited by

              Entendi …

              Alterando o Source Type para any, todos os meus e-mails começaram a sair com o IP que eu informei em Translation Address.

              Agora a questão é, como fazer para cada servidor (tenho 3), cada 1 sair com 1 IP diferente ? Como não se tem um campo para informar qual a origem, não estou conseguindo visualizar a solução.

              Talvez com NAT ?

              Obrigado e desculpa a falta de conhecimento para visualizar a solução.

              1 Reply Last reply Reply Quote 0
              • V Offline
                victorfmaraujo
                last edited by

                @ronaldog.araujo:

                Entendi …

                Alterando o Source Type para any, todos os meus e-mails começaram a sair com o IP que eu informei em Translation Address.

                Agora a questão é, como fazer para cada servidor (tenho 3), cada 1 sair com 1 IP diferente ? Como não se tem um campo para informar qual a origem, não estou conseguindo visualizar a solução.

                Talvez com NAT ?

                Obrigado e desculpa a falta de conhecimento para visualizar a solução.

                Creio que deva criar uma regra de nat outbound colocando no campo "source" o IP do seu servidor e em "Translation Address" o IP que você quer que apareça no cabeçalho.  Essa regra também deve estar antes de outra regra que abranja toda a rede DMZ.

                1 Reply Last reply Reply Quote 0
                • marcellocM Offline
                  marcelloc
                  last edited by

                  Claro que tem opção de origem. Você mesmo postou em seu outbound nat.

                  Treinamentos de Elite: http://sys-squad.com

                  Help a community developer! ;D

                  1 Reply Last reply Reply Quote 0
                  • S Offline
                    santello
                    last edited by

                    A questão principal ao meu ver é: O pfSense trocará a regra de Outbound ativa quando o gateway em questão estiver offline?

                    Montando de cabeça o problema, vc teria que configurar outbound pros dois gateways, , maaas só o que possuí gateway ativo deverá funcionar.

                    Pensei também em vários NAT 1:1, conforme o gateway estiver ativo, o IP válido correspondente começa a responder.

                    Me corrijam se falei bobeira.

                    1 Reply Last reply Reply Quote 0
                    • V Offline
                      victorfmaraujo
                      last edited by

                      @santeLLo:

                      A questão principal ao meu ver é: O pfSense trocará a regra de Outbound ativa quando o gateway em questão estiver offline?

                      Montando de cabeça o problema, vc teria que configurar outbound pros dois gateways, , maaas só o que possuí gateway ativo deverá funcionar.

                      Pensei também em vários NAT 1:1, conforme o gateway estiver ativo, o IP válido correspondente começa a responder.

                      Me corrigem se falei bobeira.

                      Exatamente.  Se você observar nas regras automáticas, existirá sempre um Nat colocando o IP addres da interface de saída para cada link de internet.  Sem isso não tem navegação

                      1 Reply Last reply Reply Quote 0
                      • R Offline
                        ronaldog.araujo
                        last edited by

                        Desculpa Marcelo o post pergunta sobre o source …

                        Depois que postei ele olhei com calma e refiz a configuração ...

                        Por enquanto estou me preocupando com somente um link... Funcionando essa parte, a questão dos 2 links comentados pelos amigos será estudado por mim, mas já agradeço as dicas dadas.

                        Senhores agora está funcionando ...

                        Enviando dos 3 servidores fisícos, cada email sai com o IP configurado ...

                        Agora fui para o ambiente oficial da minha empresa ... Esses 3 servidores são virtualizados em 1 único servidor rodando 3 instancias do Postfix ... Nesse cenário, voltou a enviar e-mail com o IP errado.

                        Para funcionar, só precisei adicionar o parametro smtp_bind_address = 192.168.1.X (onde X é o IP da instancia) em cada main.cof do Postifix ...

                        Como as 3 instancias do Postfix rodam no mesmo servidor, além do IP físico da placa, criei mais 2 IP's virtuais e com o smtp_bind_address eu informo qual é o IP de saida o Postfix e o PFSense faz o filtro ....

                        A minha configuração está assim agora:

                        Interface: WAN
                        Protocol: TCP/UPD

                        Source Type: NetWork
                        Source Address: 192.168.1.1/32 
                        Source Port: deixei em branco

                        Destination Type: Any
                        Destination Port: 25

                        Translation Address: 100.100.100.101.
                        Translation Port: deixei em branco

                        Tenho mais 2 regras onde só mudo o Source Address para: Source Address: 192.168.1.2/32  e na outra para Source Address: 192.168.1.2/32 .

                        Agora cada instancia do Postix sai com um IP diferente ...

                        Agora vamos para o FailOver dessa minha situação.

                        Obrigado

                        Ronaldo Araujo

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post
                        Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.