Liebe es oder hasse es; E-Mail ist überall. Das Protokoll, um diese E-Mail überall hin zu bewegen, ist SMTP, und die „Router“ für SMTP sind SMTP-Relays.
Not a reader? Check out this tutorial’s related video.
Die Einrichtung von SMTP-Relays variiert je nach System, aber wenn Sie Office 365 als Ihren E-Mail-Dienstanbieter haben, sind Ihre Optionen begrenzt. Die Einrichtung kann kompliziert und fehleranfällig sein, insbesondere für Geräte, die nicht über TLS verfügen.
Beachten Sie, dass zum Senden von E-Mails über Office 365 kein SMTP-Relay erforderlich ist. Sie können die Clients direkt an Office 365 senden, ohne ein SMTP-Relay hinzuzufügen, das keine Konfigurationsänderungen erfordert. Um herauszufinden, wie das geht, lesen Sie Wie Sie Office 365 Direct Send/SMTP Client Submission E-Mails senden (PowerShell).
Voraussetzungen
Dies sind die Voraussetzungen, bevor Sie fortfahren können.
- Ein Office 365-Abonnement. Wenn Sie dies noch nicht haben, können Sie Sich für eine Office 365 E5-Testversion anmelden.
- A Windows 10 computer with PowerShell v5.1
- A public static IP address. You can still create an SMTP relay in Office 365 even without this, but you might not test.
- Zugriff auf TCP-Port 25 von einem Client zu Ihrem Office MX-Endpunkt.
- A valid SSL certificate. This certificate could be a wildcard certificate (eg. *.yourdomain.com) issued by third-party certificate authorities like LetsEncrypt, Digicert, etc. Note, that you cannot use self-signed certificates or certificates issued by an internal PKI because they are not supported. (only required for TLS connections)
Um einen SMTP-Relay einzurichten, müssen Sie zuerst einen Connector in Office 365 erstellen, um SMTP-Transaktionen zu akzeptieren. Dieser Connector empfängt SMTP-Relay-Transaktionen von der Anwendung oder dem Gerät.
Bevor Sie versuchen, einen Connector zu erstellen, stellen Sie sicher, dass Ihr Konto über die entsprechenden Exchange Online-Berechtigungen verfügt. Stellen Sie sicher, dass Ihr Konto Mitglied der Organisationsverwaltung Gruppe ist.
Es gibt zwei Möglichkeiten, einen Connector zu erstellen. Sie können entweder das Exchange Admin Center oder PowerShell verwenden. Beide Optionen erledigen die gleiche Aufgabe. Es liegt an Ihnen, welche Sie verwenden möchten. In diesem Artikel werden wir beide Optionen abdecken. Wir werden auch die Erstellung von sowohl Non-TLS- als auch TLS-Connectors abdecken.
Erstellen Sie einen Non-TLS-Connector mit dem Exchange Admin Center
Fangen wir damit an, einen Non-TLS-Connector zu erstellen. Sie lernen zunächst, wie Sie dies über das Exchange Admin Center tun können. Sie können viele Office 365 SMTP-Einstellungen im Exchange Admin Center konfigurieren.
Melden Sie sich an und klicken Sie auf E-Mail-Fluss (1) -> Connectors (2) -> Neu (3). Das Fenster Neuer Connector wird angezeigt.

In dem Fenster Neuer Connector wählen Sie Von: Der E-Mail-Server Ihrer Organisation (1), wählen Sie An: Office 365 (2), klicken Sie auf Weiter (3).

Im nächsten Fenster geben Sie den Namen SMTP Relay (Non-TLS) ein oder wählen Sie Ihren eigenen Namen (1), geben Sie die Beschreibung Accept relay from on-premises SMTP Server ein (2), deaktivieren Sie das Kontrollkästchen Retain internal Exchange email headers (recommended) (3) und klicken Sie auf Weiter (4).

Im nächsten Fenster wählen Sie Durch Überprüfen, ob die IP-Adresse des sendenden Servers einer dieser IP-Adressen entspricht, die zu Ihrer Organisation gehören (1) und klicken Sie auf Hinzufügen (2).

In dem neuen Popup-Fenster geben Sie Ihre öffentliche IP-Adresse ein (1) und klicken Sie dann auf OK (2). Dadurch gelangen Sie zurück zum vorherigen Fenster.

Überprüfen Sie, ob die IP-Adresse in der Liste hinzugefügt wurde (1) und klicken Sie dann auf Weiter (2).

Dann sehen Sie eine Zusammenfassung der Änderungen, die Sie vornehmen müssen. Arbeiten Sie zuerst an den erforderlichen Änderungen. Wenn keine vorhanden sind, können Sie auf Speichern klicken.
Zurück im Exchange Admin Center können Sie nun bestätigen, dass der neue Connector erstellt wurde.

Sie sollten jetzt einen Non-TLS-Connector erstellt haben.
Erstellen Sie einen TLS-Connector mit dem Exchange Admin Center
Das Erstellen eines TLS-Connectors ist ähnlich wie das Erstellen eines Non-TLS-Connectors. Gehen Sie wie beim Erstellen eines Non-TLS-Connectors zurück zum Assistenten Neuer Connector und verwenden Sie das gleiche E-Mail-Flussszenario. Ich verwende einen Connector-Namen von SMTP Relay (Non-TLS), aber Ihrer kann variieren.
Im Fenster zur Definition von Office 365 sollte die E-Mail von Ihrem E-Mail-Server identifiziert werden. Wählen Sie :
- Indem Sie überprüfen, ob der Subjektname auf dem Zertifikat, das der sendende Server zur Authentifizierung mit Office 365 verwendet, mit diesem Domainnamen übereinstimmt (empfohlen) (1)
- , geben Sie dann den Betreff des SSL-Zertifikats ein (2)
- und klicken Sie auf Weiter (3).

Sie sehen erneut eine Zusammenfassung der erforderlichen Änderungen. Arbeiten Sie zuerst daran, bevor Sie fortfahren. Wenn es keine gibt, können Sie sofort auf die Schaltfläche Speichern klicken.
Erstellen Sie mithilfe von PowerShell einen Non-TLS-Connector
Wenn das Erstellen von Office 365-Connectors über eine grafische Benutzeroberfläche nicht Ihr Ding ist, können Sie sie auch über PowerShell erstellen. Stellen Sie sicher, dass Sie mit Exchange Online PowerShell verbunden sind.
Um den Connector zu erstellen, müssen Sie den Befehl New-InboundConnector
ausführen. Dieser Befehl erfordert einige verschiedene Parameter, daher werde ich diese Parameter im Voraus mit PowerShell splatting einrichten.
I’ve added some comments in the code itself below but here’s a breakdown of each parameter and what it’s used for:
- Name – Dies ist der Name des Connectors.
- ConnectorType – Dies ist der Typ des Connectors. Dieser Wert kann
OnPremises
oderPartner
sein. In diesem Szenario ist der entsprechende TypOnPremises
. - SenderDomains – Dies kann eine Liste der zugelassenen Absenderdomänen sein. Nur verifizierte Domänen für Ihren Mandanten sind gültige Optionen. Der Asterisk (
*
) bedeutet, dass Sie allen verifizierten Domänen erlauben, Nachrichten über diesen Connector zu übermitteln. Wenn Sie nur bestimmte Absenderdomänen zulassen möchten, ändern Sie diesen Wert in ein Array der Domänen (z. B.'domain1.com','domain2.com'
). - SenderIPAddresses – Dies ist Ihre öffentliche IP-Adresse. Vergessen Sie nicht, diese vor der Ausführung zu ändern.
- RestrictDomainsToIPAddresses – Wenn dieser Wert auf
$true
gesetzt ist, bedeutet dies, dass dieser Connector nur E-Mails von Absenderadressen akzeptiert, die von Ihrer zugelassenen öffentlichen IP-Adresse stammen.
Wenn Sie dies ausführen, sollten Sie etwas Ähnliches wie unten sehen.

Erstellen Sie einen TLS-Connector mit PowerShell.
Vorausgesetzt, Sie sind verbunden, führen Sie den unten stehenden Code aus, um einen TLS-Connector mit PowerShell zu erstellen. Wie Sie sehen können, sind viele Parameter identisch mit der Erstellung eines Nicht-TLS-Connectors. Die erforderlichen Parameter, die sich von der Erstellung eines Nicht-TLS-Connectors unterscheiden, sind:
- RequireTLS – Dies gibt an, dass alle von diesem Connector empfangenen Nachrichten eine TLS-Übertragung erfordern.
- TlsSenderCertificateName – Dies ist der Name (oder das Subject) des Zertifikats, das vom Absender verwendet wird.
Führen Sie den obigen Code aus, um einen TLS-Connector zu erstellen und bereit für den E-Mail-Empfang zu haben.
Testen des Office 365 SMTP Relay Connectors mit PowerShell
Nachdem der Connector erstellt wurde, bereiten Sie sich darauf vor, ihn zu testen. Der einfachste Weg dazu ist die Verwendung von PowerShell. In diesem Abschnitt werden wir einige PowerShell-Skripte erstellen, um sicherzustellen, dass der Connector ordnungsgemäß funktioniert.
Bevor Sie mit dem Testen beginnen, stellen Sie zunächst sicher, dass Sie die MX-Endpunkt-URL für Ihre Exchange Online-Domäne kennen. Wenn Sie nicht wissen, wie Sie Ihre MX-Endpunkt-URL finden, melden Sie sich im Office 365 Admin-Portal an. Klicken Sie auf Einrichtung, wählen Sie Domänen, klicken Sie auf den Domänennamen und kopieren Sie die MX Points-Adresse oder den Wert.
Testen eines nicht-TLS SMTP-Relays (IP-Adresse)
Hinweis: Dieser Test muss vom Computer aus durchgeführt werden, dessen öffentliche IP-Adresse in der Office 365 SMTP-Relay-Konfiguration zugelassen ist.
Verwenden Sie den unten stehenden PowerShell-Code für den Test. Stellen Sie sicher, dass Sie die Parameterwerte From
, To
und SmtpServer
entsprechend Ihren eigenen Office 365 SMTP-Relay-Einstellungen ändern, bevor Sie ihn ausführen.
To
– Muss einen internen Domain-Empfänger und einen externen Domain-Empfänger enthalten. Vergessen Sie nicht, diese Werte entsprechend Ihren eigenen zu ändern.From
– Muss auf Ihre ausgewählte Absenderadresse geändert werden. Der Domainteil der E-Mail-Adresse muss eine der E-Mail-Domänen Ihres Mandanten sein.SmtpServer
– Muss auf den MX-Endpunkt Ihres Office 365-Mandanten geändert werden.
Testen eines TLS SMTP-Relays (Zertifikat)
Hinweis: Sie müssen das öffentliche SSL-Zertifikat im PFX-Format haben, bevor Sie mit diesem Test fortfahren können.
Da der TLS SMTP-Relay ein Zertifikat erfordert, können Sie das Send-MailMessage
PowerShell-Cmdlet nicht verwenden, da es Ihnen nicht ermöglicht, ein bestimmtes Zertifikat auszuwählen. Verwenden Sie stattdessen zwei .NET-Objekte namens System.Net.Mail.SmtpClient zur Definition der SMTP-Parameter und System.Net.Mail.MailMessage zum Verfassen der Nachricht.
Unten finden Sie einen PowerShell-Codeausschnitt, den Sie verwenden können, um den TLS SMTP-Relay zu testen. Vergessen Sie nicht, die Werte von pfxFile
, pfxPass
, From
, To
und SmtpServer
entsprechend Ihren Office 365 SMTP-Relay-Einstellungen zu ändern, bevor Sie ihn ausführen.
Wenn der TLS-Connector korrekt eingerichtet ist, sollten die über die Add()
-Methode definierten Empfänger die Test-E-Mail erhalten.
Validieren von SMTP-Relay-Hops mithilfe des Nachrichtenheaders
Jetzt haben Sie einen funktionierenden SMTP-Relay eingerichtet, der einen lokalen Server und den Office 365 SMTP-Relay verwendet. Alle Tests waren erfolgreich und Ihre Geräte können Nachrichten an interne und externe Empfänger senden. Gut gemacht!
Wenn Sie immer noch Zweifel haben und bestätigen möchten, ob diese Nachrichten über das Office 365 SMTP-Relay gesendet werden, können Sie die Kopfzeilen der empfangenen E-Mails überprüfen.
Hinweis: Das Öffnen der Kopfzeilen variiert je nach E-Mail-Client. Das folgende Beispiel bezieht sich speziell auf Gmail.
Öffnen Sie die E-Mail im Gmail-Interface, öffnen Sie die Nachricht und klicken Sie auf die drei senkrechten Punkte (1), klicken Sie dann auf Original anzeigen (2).

A new page will show the email message headers. Click on Copy to clipboard (1).

Öffnen Sie einen neuen Browser-Tab und navigieren Sie zu https://testconnectivity.microsoft.com/.
Wechseln Sie zum Nachrichtenanalysator (1) Tab, fügen Sie die kopierten Daten in das Feld ein (2) und klicken Sie auf Kopfzeilen analysieren (3).

Das Ergebnis der Analyse wird in der Tabelle wie folgt angezeigt.

Sie sollten den folgenden Ablauf in den oben gezeigten Ergebnissen sehen:
- IP-Adresse 192.168.0.3 zeigt den Ursprung des Computers an.
- Der lokale SMTP-Relay-Server hat die Nachricht empfangen.
- Exchange Online Protection (EOP) hat die Nachricht empfangen.
- Exchange Online-Server hat die Nachricht empfangen und für den ausgehenden Versand weitergeleitet.
- Office 365 hat die Nachricht an google.com weitergeleitet.
Anhand der Analyseergebnisse können Sie bestätigen, dass die Nachricht wie beabsichtigt über das Office 365 SMTP-Relay übermittelt wurde.
Zusammenfassung
In diesem Artikel haben Sie gelernt, wie Sie einen TLS- und einen Nicht-TLS-Office 365 SMTP-Relay erstellen können. Sie haben auch gelernt, wie Sie ihre Funktionalität mit verschiedenen Techniken testen und bestätigen und wie Sie die SMTP-Routen validieren können, die die Nachricht durchlaufen hat.