Articles

Adam Automator

nenávidět nebo milovat; e-mail je všude. Protokol pro přesun e-mailu všude je SMTP a SMTP „směrovače“ jsou SMTP relé.

nastavení relé SMTP se v různých systémech liší, ale pokud máte jako poskytovatele poštovních služeb Office 365, vaše možnosti jsou omezené. Nastavení může být komplikované a náchylné k chybám, zejména pro zařízení, která nejsou schopna TLS.

Upozorňujeme, že odesílání e-mailů přes Office 365 nevyžaduje relé SMTP. Můžete nechat klienty posílat e-maily přímo do sady Office 365 bez přidání relé SMTP, které nevyžaduje žádné změny konfigurace. Chcete-li se dozvědět, co jsou, přečtěte si, jak odeslat e-mail s přímým odesláním/SMTP klienta (PowerShell).

Obsah

Předpoklady

to jsou požadavky, než budete moci pokračovat.

  1. předplatné sady Office 365. Pokud to ještě nemáte, můžete se zaregistrovat k odběru zkušebního předplatného Office 365 E5.
  2. počítač se systémem Windows 10 s PowerShell V5.1
  3. veřejná Statická IP adresa. Stále můžete vytvořit relé SMTP v Office 365 i bez tohoto, ale nemusíte testovat.
  4. TCP port 25 přístup z klienta do koncového bodu Office MX
  5. platný certifikát SSL. Tento certifikát může být zástupný certifikát (např. * . yourdomain.com) vydané certifikačními autoritami třetích stran, jako jsou LetsEncrypt, Digicert atd. Všimněte si, že nemůžete používat self-signed certifikáty nebo certifikáty vydané interním PKI, protože nejsou podporovány. (je zapotřebí jen pro spojení TLS)

nastavit SMTP relay, musíte nejprve vytvořit konektoru v Office 365 přijmout SMTP transakce. Tento konektor bude přijímat přenosové transakce SMTP z aplikace nebo zařízení.

než se pokusíte vytvořit konektor, ujistěte se, že váš účet má správná oprávnění Exchange Online. Ujistěte se, že váš účet je členem skupiny pro správu organizace.

existují dva způsoby, jak vytvořit konektor. Můžete použít Centrum správy Exchange nebo PowerShell. Obě možnosti budou provádět stejný úkol. Je jen na vás, který z nich použít. V tomto článku se budeme zabývat oběma. Budeme také pokrývat vytváření konektorů bez TLS a TLS.

Vytvořte konektor bez TLS pomocí Exchange Admin Center

začněme vytvořením konektoru bez TLS. Nejprve se naučíte, jak to provést prostřednictvím Centra pro správu Exchange. Mnoho nastavení SMTP Office 365 můžete nakonfigurovat v centru správy Exchange.

po přihlášení klikněte na mail flow (1) – > konektory (2) – > Nový (3). Objeví se nové okno konektoru.

konektory
Nový Konektor

V Novém Svazku okno, vyberte si Z: e-mail Vaší organizace serveru (1), vyberte Pro: Office 365 (2), klepněte na tlačítko Další (3).

Výběr toku pošty scénář
Výběr toku pošty scénář

V dalším okně zadejte název SMTP Relé (Non-TLS), nebo si vybrat svůj vlastní název (1), zadejte popis Přijmout relé z místního SMTP Serveru (2), zrušte zaškrtnutí políčka Zachovat vnitřní Výměnu e-mailů (doporučeno) (3) a klepněte na tlačítko Další (4).

Přiřazení názvu ke konektoru
Přiřazení názvu ke konektoru

V dalším okně vyberte na základě ověření, že IP adresu odesílajícího serveru, odpovídá jedna z těchto IP adres, které patří k vaší organizaci (1), a klepněte na tlačítko Přidat (2).

Přidání povolených IP adres na konektor
Přidávání povolených IP adres na konektor

V nové pop-up okno, zadejte vaši veřejnou IP adresu (1), potom klikněte na tlačítko OK (2). To by vás mělo vrátit zpět do předchozího okna.

Přidání povolených IP adres na konektor
Přidávání povolených IP adres na konektor

Ověřte, že adresa IP je přidána do seznamu (1), potom klikněte na tlačítko Další (2).

Přidání povolených IP adres na konektor
Přidávání povolených IP adres na konektor

Pak uvidíte přehled změn, které je třeba implementovat. Nejprve pracujte na nezbytných změnách. Pokud žádný neexistuje, můžete pokračovat a kliknout na Uložit.

zpět v centru správy Exchange můžete nyní potvrdit, že byl vytvořen nový konektor.

Office 365 Konektor byl vytvořen
Office 365 Konektor byl vytvořen

nyní Byste měli mít non-TLS svazku vytvořen.

Vytvořte konektor TLS pomocí Exchange Admin Center

vytvoření konektoru TLS je podobné vytvoření konektoru jiného než TLS. Stejně jako jste vytvořili konektor bez TLS, vraťte se zpět do Průvodce novým konektorem a použijte stejný scénář toku pošty. Budu používat název konektoru SMTP Relay (Non-TLS), ale Vaše se může lišit.

V okně definovat Office 365 by měla identifikovat e-mail z vašeho e-mailového serveru, zvolte:

  • ověření, zda název předmětu v osvědčení, že odesílající server používá k ověření s Office 365 odpovídá tento název domény (doporučeno) (1)
  • poté zadejte předmět SSL certifikát (2)
  • a klepněte na tlačítko Další (3).
Vytvořit TLS Konektor pomocí Exchange Admin Center
Vytvořit TLS Konektor pomocí Exchange Admin Center

Znovu, uvidíte souhrn potřebných změn. Práce na nich nejprve před zpracováním. Pokud žádný neexistuje, můžete okamžitě kliknout na tlačítko Uložit.

Vytvořte konektor bez TLS pomocí PowerShell

Pokud vytváření konektorů Office 365 pomocí GUI není vaše věc, můžete je vždy vytvořit také pomocí PowerShell. Nejprve se ujistěte, že jste připojeni k Exchange Online PowerShell.

Chcete-li vytvořit konektor, musíte spustit příkaz New-InboundConnector. Tento příkaz vyžaduje několik různých parametrů, takže tyto parametry nastavím předem pomocí PowerShell splatting.

přidal jsem několik komentářů v samotném kódu níže, ale zde je rozpis každého parametru a k čemu se používá:

  • Name – Toto je název konektoru.
  • ConnectorType-to je typ konektoru. Tato hodnota může být OnPremises nebo Partner. V tomto scénáři je vhodný typ OnPremises.
  • SenderDomains-toto může být seznam povolených domén odesílatele. Platné volby jsou pouze ověřené domény pro vašeho nájemce. Hvězdička (*) znamená, že umožňujete všem ověřeným doménám přenášet zprávy pomocí tohoto konektoru. Pokud potřebujete povolit pouze určité domény odesílatele, změňte tuto hodnotu na pole domén. (ego. 'domain1.com','domain2.com')
  • SenderIPAddresses-Toto je vaše veřejná IP adresa. Nezapomeňte to změnit před provedením.
  • RestrictDomainsToIPAddresses – Když je tato hodnota nastavena na $true, znamená to, že tento konektor bude přijímat pouze e-maily od odesílatele, adresy přicházející z vaší veřejné IP adresy.
$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

při spuštění byste měli vidět něco podobného níže.

Nový-InboundConnector
Nový-InboundConnector

Vytvořit TLS Konektor pomocí PowerShell

za Předpokladu, že jste připojen, spusťte následující kód k vytvoření TLS konektor s PowerShell stejně. Níže vidíte, že mnoho parametrů je totožných s vytvořením konektoru bez TLS. Požadované parametry, které se liší od vytvoření konektoru jiného než TLS, jsou:

  • RequireTLS – Toto určuje, že všechny zprávy přijaté podle tohoto konektoru vyžadovat TLS přenos
  • TlsSenderCertificateName – To je název (nebo předmět) osvědčení používá odesílatel.
$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

spusťte výše uvedený kód a vytvořte konektor TLS a připravte se na příjem e-mailu.

testování konektoru SMTP relé Office 365 pomocí PowerShell

po vytvoření konektoru se připravte na jeho vyzkoušení. Nejjednodušší způsob, jak toho dosáhnout, je použít PowerShell. V této části vytvoříme několik skriptů PowerShell, které vám umožní snadno zajistit, aby konektor fungoval správně.

než začnete testovat, nejprve se ujistěte, že víte, jaká je adresa URL koncového bodu MX pro vaši online doménu Exchange. Pokud nevíte, jak najít adresu URL koncového bodu MX, přihlaste se do administračního portálu Office 365. Klikněte na Nastavení, vyberte domény, klikněte na název domény a zkopírujte body MX na adresu nebo hodnotu.

Testování non-TLS SMTP Relé (IP Adresa)

Poznámka:: Toto testování musí být provedeno z počítače, jehož veřejná IP adresa je povolena v nastavení relé SMTP Office 365.

pro testování použijte níže uvedený kód PowerShell. Ujistěte se, že změnit na FromToSmtpServer hodnoty parametrů použít vlastní Office 365 SMTP relay nastavení před spuštěním.

  • To – musí obsahovat jednoho příjemce interní domény a jednoho příjemce externí domény. Nezapomeňte tyto hodnoty změnit na své vlastní.
  • From – musí být změněn na nominovanou adresu odesílatele. Doménová část e-mailové adresy musí být jednou z e-mailových domén vašeho nájemce.
  • SmtpServer – musí být změněn na koncový bod MX nájemce Office 365.
$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

Testování TLS SMTP Relé (Certifikát)

Poznámka: musíte mít veřejný SSL certifikát ve formátu PFX, než budete moci pokračovat s tímto testem.

Od TLS SMTP relay vyžaduje certifikát nelze použít na Send-MailMessage PowerShell rutiny, protože to neumožňuje vyberte konkrétní certifikát. Místo toho použijte dva .NET objekty zvané Systém.Net.Mail.SmtpClient definovat SMTP parametry, a Systém.Net.Mail.Zprávě napsat zprávu.

níže najdete úryvek kódu PowerShell, který můžete použít k testování relé SMTP TLS. Nezapomeňte změnit na pfxFilepfxPassFromToSmtpServer hodnoty, které můžete použít služeb Office 365 SMTP relay nastavení před spuštěním.

# 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)

Pokud je nastavení konektoru TLS správné, příjemci definují pomocí metody Add() by měli obdržet testovací e-mail.

ověření SMTP relé chmele pomocí záhlaví zprávy

Nyní máte funkční SMTP relé nastavit pomocí lokálního serveru a Office 365 SMTP relé. Všechny testy byly úspěšné a vaše zařízení mohou odesílat zprávy interním i externím příjemcům. Dobrá práce!

Pokud máte stále pochybnosti a potřebujete potvrdit, zda tyto zprávy procházejí relé SMTP Office 365, můžete zkontrolovat záhlaví zpráv na přijatých e-mailech.

Poznámka: otevření záhlaví zpráv se liší mezi různými poštovními klienty. Níže uvedený příklad je specifický pro Gmail.

otevřete e-mail v rozhraní Gmailu, otevřete zprávu a klikněte na tři svislé tečky (1) a poté na tlačítko Zobrazit originál (2).

Ověřování SMTP Relé Chmele pomocí Záhlaví Zprávy
Ověřování SMTP Relé Chmele pomocí Záhlaví Zprávy

nová stránka se zobrazí v záhlaví e-mailové zprávy. Klikněte na Kopírovat do schránky (1).

Ověřování SMTP Relé Chmele pomocí Záhlaví Zprávy
Ověřování SMTP Relé Chmele pomocí Záhlaví Zprávy

Otevřít novou záložku prohlížeče a přejděte na https://testconnectivity.microsoft.com/.

přejděte na kartu analyzátor zpráv (1), Vložte zkopírovaná data do pole (2) a klikněte na analyzovat záhlaví (3).

Analýze záhlaví
Analyzuje záhlaví

výsledek analýzy se zobrazí v tabulce, jak je znázorněno níže.

Analyzovat výsledky
Analyzovat výsledky

měli Byste vidět následující workflow ve výsledcích výše:

  1. adresa IP 192.168.0.3 indikuje původ počítači.
  2. On – prem SMTP relay server obdržel zprávu.
  3. Exchange Online Protection (EOP) obdržel zprávu.
  4. Exchange Online server a re-směrovány pro odchozí doručení obdržel zprávu.
  5. Office 365 to google.com doručil zprávu.

na základě výsledků analýzy můžete potvrdit, že zpráva prošla protokolem Office 365 SMTP, jak bylo zamýšleno.

shrnutí

v tomto článku jste se naučili, jak vytvořit relé SMTP TLS a non-TLS Office 365. Naučili jste se také, jak otestovat a potvrdit jejich funkčnost pomocí různých technik a jak ověřit trasy SMTP, kterými zpráva prošla.

další čtení