Articles

Adam O Automador

odeia ou ama; e-mail está em toda parte. O Protocolo para mover esse email para todo o lado é SMTP, e os “roteadores” SMTP são relés SMTP.

configurar relés SMTP varia entre os sistemas, mas se você tem Office 365 como seu provedor de serviços de correio, suas opções são limitadas. A configuração pode ser complicada e propensa a erros, especialmente para dispositivos que não são capazes de TLS.

Note que enviar e-mail através do Office 365 não requer um relé SMTP. Você pode fazer com que os clientes enviem e-mails diretamente para o Office 365 sem adicionar um relé SMTP que não necessita de quaisquer alterações de configuração. Para saber o que são, leia Como enviar o Office 365 Direct Send/SMTP Client Submission Email (PowerShell).

tabela de conteúdo

pré-requisitos

estas são as exigências antes de você poder prosseguir.Assinatura Anual do Serviço das publicações Se você ainda não tem isso, você pode se inscrever para uma assinatura de Teste do Office 365 E5.

  • um computador Windows 10 com PowerShell v5.1
  • um endereço IP estático público. Você ainda pode criar um relé SMTP no Office 365 mesmo sem isso, mas você pode não testar.
  • Porto 25 TCP acesso de um cliente para o seu escritório MX endpoint
  • um certificado SSL válido. Este certificado poderá ser um certificado de caracteres especiais (eg. *.yourdomain.com) emitido por autoridades de certificação de terceiros, como LetsEncrypt, Digicert, etc. Note, que você não pode usar certificados auto-assinados ou certificados emitidos por um PKI interno, porque eles não são suportados. (só é necessário para conexões TLS)
  • para configurar um relé SMTP, você deve primeiro criar um conector no Office 365 para aceitar transações SMTP. Este conector receberá transações de retransmissão SMTP da aplicação ou dispositivo.

    Antes de tentar criar um conector, certifique-se de que a sua conta tem as permissões Online de troca adequadas. Certifique-se de que sua conta é um membro do grupo de gestão da organização.

    Existem duas maneiras de criar um conector. Você pode usar o centro de Administração de Intercâmbio ou PowerShell. Ambas as opções irão realizar a mesma tarefa. Depende de ti qual deles usar. Neste artigo, vamos cobrir ambos. Também vamos cobrir a criação de conectores não-TLS e TLS.

    crie um conector não-TLS usando o Exchange Admin Center

    vamos começar por criar um conector não-TLS. Primeiro vais aprender a fazer isto através do Centro Administrativo de Intercâmbio. Poderá configurar muitas opções SMTP do Office 365 no centro de administração do Exchange.

    once logted in, click on mail flow (1) –> connectors (2) –> New (3). A nova janela do conector vai aparecer.

    Novo Conector
    Novo Conector

    o Novo Conector da janela, selecione a Partir de: organização do servidor de e-mail (1), selecione Para: Office 365 (2), clique em Seguinte (3).

    Seleccionar um cenário de fluxo de email
    a Seleção de um cenário de fluxo de email

    Na janela seguinte, insira o nome de Retransmissão de SMTP (Não-TLS) ou escolher o seu próprio nome (1), escreva a descrição Aceitar a retransmissão de Servidor de SMTP local (2), desmarque a opção Manter interno do Exchange cabeçalhos de e-mails (recomendado) (3) e clique em Seguinte (4).

    Atribuir um nome para o conector
    Atribuir um nome para o conector

    Na janela seguinte, selecione verificar que o endereço IP do servidor de envio corresponde a um dos seguintes endereços IP que pertencem à sua organização (1), e clique em Adicionar (2).

    Adicionar endereços IP permitidos para o conector
    Adicionar endereços IP permitidos para o conector

    Na nova janela pop-up, digite seu endereço IP público (1), em seguida, clique em OK (2). Isto deve trazê-lo de volta para a janela anterior.

    Adicionar endereços IP permitidos para o conector
    Adicionar endereços IP permitidos para o conector

    Verifique se o endereço IP é adicionado na lista (1) e, em seguida, clique em Seguinte (2).

    Adicionar endereços IP permitidos para o conector
    Adicionar endereços IP permitidos para o conector

    Então, você vai ver o resumo das alterações que você precisa para implementar. Trabalhar nas mudanças necessárias primeiro. Se não houver nenhum, pode clicar em Salvar.

    de volta ao Centro Administrativo de Intercâmbio, você pode agora confirmar que o novo conector foi criado.

    Office 365 Conector foi criado.
    Office 365 Conector foi criado.

    agora Você deve ter uma non-TLS conector criado.

    crie um conector TLS usando Exchange Admin Center

    Criando um conector TLS é semelhante à criação de um conector não-TLS. Como como você criou um conector não-TLS, voltar para o novo assistente de Conectores e usar o mesmo cenário de fluxo de E-mail. Eu vou estar usando um conector nome do relé SMTP (não-TLS), mas o seu pode variar.

    Na janela para definir o Office 365 deve identificar o e-mail de seu servidor de e-mail, selecione:

    • verificando que o nome do assunto no certificado que o servidor de envio usa para autenticar com o Office 365 corresponde a este nome de domínio (recomendado) (1)
    • , em seguida, escreva no assunto do certificado SSL (2)
    • e clique em Seguinte (3).
    Criar uma TLS Conector usando o Centro de Administração do Exchange
    Criar um TLS Conector usando o Centro de Administração do Exchange

    Novamente, você verá um resumo das alterações necessárias. Trabalhe neles primeiro antes de processar. Se não houver nenhum, você pode clicar no botão Salvar imediatamente.

    crie um conector não-TLS usando PowerShell

    se criar conectores do Office 365 através de uma interface gráfica não é a sua coisa, você pode sempre criá-los através de PowerShell também. Para isso, em primeiro lugar, certifique-se de que você está conectado para trocar PowerShell on-line.

    para criar o conector, terá de executar o comando New-InboundConnector. Este comando requer alguns parâmetros diferentes para que eu vou configurar estes parâmetros antes do tempo usando o splatting PowerShell.

    eu adicionei alguns comentários no próprio código abaixo, mas aqui está uma discriminação de cada parâmetro e para o que ele é usado:

    • Nome – este é o nome do conector.este é o tipo de conector. Este valor pode ser OnPremises ou Partner. Neste cenário, o tipo apropriado é OnPremises.
    • SenderDomains-esta pode ser uma lista dos domínios de remetente permitidos. Apenas domínios verificados para o seu inquilino são opções válidas. O asterisco (*) significa que você está permitindo que todos os seus domínios verificados retransmitam mensagens usando este conector. Se você só precisa permitir certos domínios do remetente, mude este valor para um array dos domínios. (exemplo. 'domain1.com','domain2.com')
    • SenderIPAddresses – este é o seu endereço IP público. Não se esqueça de mudar isso antes da execução.
    • RestrictDomainsToIPAddresses-quando este valor é definido para $true, indica que este conector só irá aceitar e-mails de endereços de remetentes provenientes do seu endereço IP público permitido.
    $splat = @{ ## Define the name of the connector. Name = 'SMTP Relay' ## Defined the type of connector to create. ConnectorType = 'OnPremises' ## The set of sender domains allowed to relay. SenderDomains = '*' ## Change this to your actual public IP address. SenderIPAddresses = '110.x.x.x' ## Restrict the email relay only to your sender domains and sender IP address RestrictDomainsToIPAddresses = $true}## Create the connectorNew-InboundConnector @splat

    quando executado, você deve ver algo semelhante ao abaixo.

    Novo-InboundConnector
    Novo-InboundConnector

    Criar um TLS conexão utilizando PowerShell

    Supondo que você está conectado, execute o código a seguir para criar um TLS conector com o PowerShell bem. Você pode ver abaixo muitos parâmetros são idênticos à criação de um conector não-TLS. Os parâmetros necessários que diferem da criação de um conector não-TLS são::

    • Requettls-isto especifica que todas as mensagens recebidas por este conector requerem a transmissão de TLS
    • Tlssendertificatename-este é o nome (ou assunto) do certificado utilizado pelo remetente.

    $splat = @{ ## Define the name of the connector. Name = 'SMTP Relay (TLS)' ## The type of connector to create. ConnectorType = 'OnPremises' ## The set of sender domains allowed to relay. SenderDomains = '*' ## Require TLS RequireTLS = $true ## Subject/Name of the SSL certificate TlsSenderCertificateName = '*.YourDomain.com'}## Create the connectorNew-InboundConnector @splat

    Execute o código acima e tenha um conector TLS criado e pronto para receber e-mail.

    testando o conector de relé SMTP do Office 365 com PowerShell

    Depois de criar o conector, prepare-se para testá-lo. A maneira mais fácil de fazer isso é usar PowerShell. Nesta seção, vamos criar alguns scripts PowerShell para permitir que você possa facilmente garantir que o conector está funcionando corretamente.

    Antes de começar a testar, primeiro certifique-se que sabe qual é o URL MX endpoint para o seu domínio Online Exchange. Se você não sabe como encontrar o seu MX endpoint URL, entre no Office 365 Admin Portal. Clique na configuração, selecione Domínios, clique no nome do domínio e copie os pontos MX para endereço ou valor.

    Testing a non-TLS SMTP Relay (IP Address)

    Nota: Este teste deve ser feito a partir do computador cujo endereço IP público é permitido no Office 365 SMTP relay setup.

    Use the PowerShell code below for testing. Certifique-se de alterar oFrom, To e SmtpServer valores dos parâmetros para usar a sua própria configuração do relé SMTP do Office 365 antes de executá-lo.

    • To – deve incluir um destinatário interno do domínio e um destinatário externo do domínio. Não te esqueças de mudar estes valores para os teus.
    • From – deve ser alterado para o seu endereço de remetente nomeado. A parte do domínio do endereço de E-mail deve ser um dos domínios de E-mail do seu inquilino.
    • SmtpServer – deve ser alterado para o ponto final do MX do seu escritório 365 tenant.
    $mailParams = @{ SmtpServer = '<tenant>.mail.protection.outlook.com' Port = '25' From = '' To = '','' Subject = ('SMTP Relay - ' + (Get-Date -Format g)) Body = 'This is a test email using SMTP Relay' DeliveryNotificationOption = 'OnFailure','OnSuccess'}Send-MailMessage @mailParams

    Testing a TLS SMTP Relay (Certificate)

    nota: deve ter o certificado SSL público no formato PFX antes de poder prosseguir com este teste.

    Uma vez que o relé TLS SMTP necessita de um certificado, não pode usar o Send-MailMessage PowerShell cmdlet porque não lhe permite seleccionar um certificado específico. Em vez disso, use dois objectos. net chamados System.Net.Mail.SmtpClient para definir os parâmetros de SMTP e System.Net.Mail.MailMessage para compor a mensagem.

    abaixo encontrará um excerto de código PowerShell que poderá usar para testar o relé SMTP TLS. Não se esqueça de alterar o pfxFilepfxPassFromTo e SmtpServer valores a utilizar o Office 365 de retransmissão de SMTP configurações antes de executá-lo.

    # specify the full path of your PFX certificate$pfxFile = "C:\Certificate\cert.pfx"$pfxPass = '<cert password here>'$pfxBytes = Get-Content -path $pfxFile -encoding Byte -ErrorAction:SilentlyContinue$X509Cert = New-Object -TypeName System.Security.Cryptography.X509Certificates.X509Certificate2$X509Cert.Import(]$pfxBytes, $pfxPass,"Exportable,PersistKeySet")# Build SMTP properties$smtpServer = '<tenant>.mail.protection.outlook.com'$smtpPort = '25'$smtp = New-Object Net.Mail.SmtpClient($smtpServer,$smtpPort)$smtp.ClientCertificates.Add($X509Cert)$smtp.EnableSSL = $true# Compose message$emailMessage = New-Object System.Net.Mail.MailMessage$emailMessage.From = ''$emailMessage.To.Add('')$emailMessage.To.Add('')$emailMessage.Subject = ('SMTP Relay (TLS) - ' + (Get-Date -Format g))$emailMessage.Body = 'This is a test email using SMTP Relay (TLS)'# Send the message$smtp.Send($emailMessage)

    Se configurado o conector TLS estiver correto, os destinatários definem através do método Add() deve receber o e-mail de ensaio.

    a validar o relé Hops SMTP usando o cabeçalho da mensagem

    Agora tem um relé SMTP funcional configurado com um relé SMTP local e um relé SMTP do Office 365. Todos os testes foram bem sucedidos e seus dispositivos podem enviar mensagens para receptores internos e externos. Bom trabalho!se ainda tiver dúvidas e precisar de confirmar se estas mensagens estão a passar pelo relé SMTP do Office 365, pode rever os cabeçalhos das mensagens nos e-mails recebidos.

    Nota: A abertura dos cabeçalhos das mensagens varia entre diferentes clientes de correio. O exemplo abaixo é específico do Gmail.

    abra o e-mail na interface Gmail, abra a mensagem, e clique nos três pontos verticais (1), em seguida, clique em Mostrar original (2).

    Validação de Retransmissão de SMTP Saltos usando o Cabeçalho da Mensagem
    Validação de Retransmissão de SMTP Saltos usando o Cabeçalho da Mensagem

    Uma nova página irá mostrar os cabeçalhos de mensagem de email. Carregue em Copiar para a área de transferência (1).

    Validação de Retransmissão de SMTP Saltos usando o Cabeçalho da Mensagem
    Validação de Retransmissão de SMTP Saltos usando o Cabeçalho da Mensagem

    Abra uma nova guia no navegador e navegue até https://testconnectivity.microsoft.com/.

    Go to the Message Analyzer (1) tab, paste os dados copiados para a caixa (2), e clique em Analisar os cabeçalhos (3).

    Analisar cabeçalhos
    Analisar cabeçalhos

    O resultado da avaliação será apresentado em tabela, como mostrado abaixo.

    Análise de resultados
    Análise de resultados

    Você deve ver o seguinte fluxo de trabalho nos resultados acima:

    1. endereço de IP 192.168.0.3 o indica a origem do computador.o servidor SMTP on-prem recebeu a mensagem.a troca de Proteção Online (EOP) recebeu a mensagem.
    2. troca servidor on-line e reencaminhado para entrega de saída recebeu a mensagem.Office 365 to google.com entregou a mensagem.com base nos resultados da análise, pode confirmar que a mensagem passou pelo relé SMTP do Office 365 como previsto.

      resumo

      neste artigo, você aprendeu a criar um relé SMTP TLS e não-TLS Office 365. Você também aprendeu a testar e confirmar a sua funcionalidade usando técnicas diferentes e como validar as rotas SMTP que a mensagem tinha passado.

      Leitura Adicional