Exchange 2016/2019: SMTP Connector und Wildcard- / SAN-Zertifikate
Wer Exchange 2016 / 2019 in Verbindung mit einem Wildcard Zertifikat benutzt, sollte auch die Empfangs- und Sendeconnectoren entsprechend konfigurieren. Auch bei SAN-Zertifikaten kann dies nötig sein. Enthält das SAN-Zertifikat als “Common Name (Ausg…
Problem
Wer Microsoft Exchange Server 2016 oder 2019 in Verbindung mit einem Wildcard-Zertifikat oder einem SAN-Zertifikat betreibt, sollte auch die Empfangs- und Sendeconnectoren entsprechend konfigurieren.
Besitzt das Zertifikat als Common Name (CN) beispielsweise den
Domänennamen (ihredomain.de) anstelle des Hostnamens des
Exchange-Servers (mail.ihredomain.de), kann es insbesondere bei
verschlüsselten SMTP-Verbindungen über STARTTLS zu Problemen
kommen.
Ein typisches Beispiel ist der Mailclient Mozilla Thunderbird, der beim Aufbau einer SMTP-Verbindung per STARTTLS eine Zertifikatswarnung anzeigt oder die Verbindung ablehnt.
Dieses Verhalten tritt sowohl bei SAN-Zertifikaten als auch bei Wildcard-Zertifikaten auf. Ein Austausch des Zertifikats ist in den meisten Fällen jedoch nicht erforderlich. Stattdessen genügt es, die Exchange Connectoren korrekt zu konfigurieren.
TLS-Zertifikatsnamen ermitteln
Zunächst muss der Thumbprint des verwendeten Exchange-Zertifikats ermittelt werden:
Get-ExchangeCertificate | Where-Object {
$_.Services -match "IIS"
}
Merken Sie sich den Thumbprint des verwendeten Zertifikats und erzeugen Sie anschließend den TLS-Zertifikatsnamen:
$Cert = Get-ExchangeCertificate -Thumbprint 2B7B52B5BB8A3F53E048F4D875A41DCDC71C3910
$TLSCertificateName = "<i>$($Cert.Issuer)<s>$($Cert.Subject)"
$TLSCertificateName
i und
s Backslashes (\) dargestellt. Diese gehören
nicht in den PowerShell-Befehl und müssen entfernt werden.
Receive Connector konfigurieren
Lassen Sie sich zunächst die vorhandenen Receive Connectoren anzeigen:
Get-ReceiveConnector
Ersetzen Sie in den folgenden Beispielen EXCHANGE durch den Namen
Ihres Exchange-Servers:
Set-ReceiveConnector "EXCHANGE\Default Frontend EXCHANGE" `
-TlsCertificateName $TLSCertificateName
Set-ReceiveConnector "EXCHANGE\Client Frontend EXCHANGE" `
-TlsCertificateName $TLSCertificateName
Zertifikat den Exchange-Diensten zuweisen
Das Zuweisen eines Zertifikats erfolgt normalerweise über folgenden Befehl:
Get-ExchangeCertificate -Thumbprint IHR_THUMBPRINT |
Enable-ExchangeCertificate -Services SMTP,IMAP,POP,IIS
Besonderheit bei Wildcard-Zertifikaten
Bei Wildcard-Zertifikaten erscheint häufig eine Warnung, dass das Zertifikat nicht für die Dienste IMAP und POP verwendet werden kann.
Der Grund dafür ist, dass diese Dienste nicht das zugewiesene SMTP-Zertifikat
verwenden, sondern den Parameter X509CertificateName.
Konfigurieren Sie deshalb auf jedem Exchange-Server zusätzlich folgende Einstellungen:
Set-POPSettings -X509CertificateName exchange.ihredomain.de
Set-IMAPSettings -X509CertificateName exchange.ihredomain.de
Dienste neu starten
Damit die Änderungen wirksam werden, müssen anschließend die POP- und IMAP-Dienste neu gestartet werden:
Restart-Service MSExchangePOP3
Restart-Service MSExchangeIMAP4
Fazit
Durch die korrekte Konfiguration des Parameters
TlsCertificateName auf den Receive Connectoren sowie des
X509CertificateName für IMAP und POP lassen sich Probleme mit
STARTTLS, Wildcard- und SAN-Zertifikaten zuverlässig beheben, ohne dass das
installierte Zertifikat ausgetauscht werden muss.
Eigenes IT-Problem?
Nicht jeder Fall passt in einen Tipp
Wenn es bei Ihnen komplizierter wird, übernehmen wir das gerne direkt für Sie.