S/MIME mit Exchange
Mit S/MIME werden E-Mails in der nativen Mail-App von iOS digital signiert und/oder verschlüsselt. Relution verteilt dafür die persönlichen S/MIME-Zertifikate der Benutzer zusammen mit der Exchange-Konfiguration → auf die Geräte. Das gilt unverändert, wenn das Exchange-Konto über das Secure Mail Gateway → angebunden ist.
Die Einrichtung besteht aus drei Schritten:
- Die S/MIME-Zertifikate werden an den Benutzerkonten in Relution hinterlegt.
- In der Exchange-Konfiguration der iOS-Richtlinie wird S/MIME aktiviert und auf diese Benutzerzertifikate verwiesen.
- Die Richtlinie wird den Geräten zugewiesen.
Voraussetzungen
- Pro Benutzer liegt ein S/MIME-Zertifikat mit privatem Schlüssel als PKCS#12-Datei (
.p12oder.pfx) inklusive Importpasswort vor. Ausgestellt wird es in der Regel von der unternehmenseigenen PKI oder einer öffentlichen Zertifizierungsstelle. Die E-Mail-Adresse im Zertifikat entspricht der E-Mail-Adresse des Exchange-Kontos. - Für Signierung und Verschlüsselung kann dasselbe Zertifikat oder je ein eigenes verwendet werden.
- Den Geräten ist ein Benutzer zugewiesen. Ohne Gerätebenutzer kann Relution kein Benutzerzertifikat ermitteln.
- Die Exchange-Konfiguration ist bereits ohne S/MIME funktionsfähig, bei Verwendung des Secure Mail Gateway also inklusive der SMG-Einstellungen.
Benutzerzertifikate hinterlegen
Die Zertifikate werden unter Benutzer → Benutzer im jeweiligen Benutzerkonto im Bereich Benutzerdefinierte Zertifikate über Hinzufügen hochgeladen. Der Dialog Benutzerzertifikat hinzufügen enthält folgende Felder:
| Feld | Inhalt |
|---|---|
| Name | Frei wählbarer Name des Zertifikats. Über diesen Namen kann ein bestimmtes Zertifikat in der Konfiguration ausgewählt werden. |
| Kategorie | S/MIME Signierung oder S/MIME-Verschlüsselung |
| Zertifikats-Datei | Die PKCS#12-Datei des Benutzers |
| Passwort | Das Importpasswort der PKCS#12-Datei |
Wird ein Zertifikat für beide Zwecke genutzt, wird es zweimal hochgeladen: einmal mit der Kategorie S/MIME Signierung und einmal mit S/MIME-Verschlüsselung.
Pro Kategorie können beliebig viele Zertifikate hinterlegt werden. Sind mehrere vorhanden, wird das Zertifikat mit dem spätesten Ablaufdatum verwendet, sofern in der Konfiguration kein Zertifikatsname angegeben ist (siehe Bestimmtes Zertifikat über den Namen auswählen →).
Beispiel für den Benutzer max.mustermann mit getrennten Zertifikaten:
| Name | Kategorie | Zertifikats-Datei |
|---|---|---|
smime-sign-2026 | S/MIME Signierung | max.mustermann-sign.p12 |
smime-enc-2026 | S/MIME-Verschlüsselung | max.mustermann-enc.p12 |
Beispiel: PKCS#12-Datei aus Schlüssel und Zertifikat erzeugen
Liegen privater Schlüssel, Benutzerzertifikat und Zwischenzertifikate als einzelne PEM-Dateien vor, lässt sich die PKCS#12-Datei mit OpenSSL erstellen. Beim Ausführen wird das Importpasswort abgefragt, das später im Feld Passwort eingetragen wird.
openssl pkcs12 -export \
-inkey max.mustermann.key \
-in max.mustermann.crt \
-certfile ca-chain.crt \
-name "Max Mustermann S/MIME" \
-out max.mustermann.p12
S/MIME in der Exchange-Konfiguration aktivieren
Die Einstellungen befinden sich in der iOS-Richtlinie in der Konfiguration Exchange im Abschnitt Synchronisationseinstellungen:
| Option | Wirkung auf dem Gerät |
|---|---|
| S/MIME Signierung aktivieren | Ausgehende E-Mails werden signiert. |
| S/MIME Signierung vom Benutzer überschreibbar | Die Signierung kann in den iOS-Einstellungen ein- und ausgeschaltet werden. |
| S/MIME-Verschlüsselung standardmäßig aktivieren | Neue E-Mails werden standardmäßig verschlüsselt. |
| Pro Nachricht Verschlüsselungsoption aktivieren | Beim Verfassen einer E-Mail erscheint ein Schalter, um die Verschlüsselung für diese Nachricht ein- oder auszuschalten. |
| S/MIME-Verschlüsselung vom Benutzer überschreibbar | Die Standard-Verschlüsselung kann in den iOS-Einstellungen geändert werden. |
Ab iOS 12 gilt: Ist Pro Nachricht Verschlüsselungsoption aktivieren ausgeschaltet, kann die Einstellung S/MIME-Verschlüsselung standardmäßig aktivieren auf dem Gerät nicht geändert werden.
Sobald eine Signier- oder Verschlüsselungsoption aktiv ist, erscheinen die Abschnitte S/MIME Signierungszertifikat bzw. S/MIME Verschlüsselungs-Zertifikat. Dort stehen zwei Varianten zur Auswahl:
- Benutzerdefiniertes Zertifikat verwenden: Relution setzt für jedes Gerät das Benutzerzertifikat des Gerätebenutzers mit der Kategorie S/MIME Signierung bzw. S/MIME-Verschlüsselung ein. Diese Variante ist für S/MIME vorgesehen.
- Zertifikat wählen: Ein festes Zertifikat aus der Zertifikatsverwaltung → wird auf alle Geräte verteilt, denen die Richtlinie zugewiesen ist. Das ist nur sinnvoll, wenn die Richtlinie einem einzelnen Benutzer oder einem gemeinsam genutzten Postfach zugeordnet ist.
Zusätzlich lässt sich mit S/MIME Signierungszertifikat vom Benutzer überschreibbar bzw. S/MIME-Verschlüsselungszertifikat vom Benutzer überschreibbar festlegen, ob auf dem Gerät ein anderes installiertes Zertifikat ausgewählt werden darf.
Bestimmtes Zertifikat über den Namen auswählen
Bei Benutzerdefiniertes Zertifikat verwenden steht das optionale Feld Zertifikatsname zur Verfügung. Bleibt es leer, wird das Zertifikat der passenden Kategorie mit dem spätesten Ablaufdatum verwendet. Ist ein Name eingetragen, kommt nur ein Zertifikat mit exakt diesem Namen infrage. Das Feld kann Platzhalter → enthalten, die pro Gerät aufgelöst werden.
Beispiel 1 – Zertifikatswechsel steuern: Für alle Benutzer wurden bereits die neuen Zertifikate smime-sign-2027 hochgeladen, verteilt werden soll aber noch smime-sign-2026. Im Feld Zertifikatsname wird smime-sign-2026 eingetragen. Zum Stichtag wird der Wert auf smime-sign-2027 geändert und die Richtlinie neu veröffentlicht.
Beispiel 2 – Name aus Platzhalter: Die Zertifikate tragen als Namen die E-Mail-Adresse des Benutzers, z. B. max.mustermann@example.com. Im Feld Zertifikatsname wird eingetragen:
${user.email}
Wird ein Platzhalter für einen Benutzer zu einem leeren Wert aufgelöst, wird bewusst kein anderes Zertifikat ersatzweise verwendet; die Richtlinienaktion schlägt in diesem Fall fehl.
Voraussetzungen auf Exchange-Seite
- Signieren erfordert auf Exchange-Seite keine besondere Konfiguration.
- Verschlüsseln erfordert das öffentliche Zertifikat jedes Empfängers. Die Mail-App bezieht es entweder aus einer zuvor empfangenen signierten E-Mail des Empfängers oder über ActiveSync aus der globalen Adressliste. Dafür müssen die Zertifikate der internen Empfänger im Active Directory bzw. in Exchange am Benutzerobjekt veröffentlicht sein (Attribute
userSMIMECertificatebzw.userCertificate). - Sind in der Exchange-ActiveSync-Postfachrichtlinie S/MIME-Vorgaben gesetzt, müssen diese zur Relution-Konfiguration passen. Das SMG reicht diese Vorgaben unverändert an das Gerät weiter.
Fehlerbehebung
Kann Relution für ein Gerät kein passendes Benutzerzertifikat ermitteln, schlägt die Aktion Richtlinie ändern in den Aktionen des Geräts fehl. Typische Meldungen:
Kein Nutzerzertifikat des Subtyps S/MIME Signierung für den Nutzer <Benutzername> gefunden.
Am Benutzerkonto fehlt ein Zertifikat der Kategorie S/MIME Signierung (bzw. S/MIME-Verschlüsselung). Das Zertifikat wird nachgetragen und die Richtlinie erneut angewendet.
Kein Nutzerzertifikat des Subtyps S/MIME Signierung für den Nutzer <Benutzername> gefunden: <Zertifikatsname>
Ein Zertifikat der Kategorie ist vorhanden, aber keines trägt den im Feld Zertifikatsname angegebenen bzw. aus dem Platzhalter ermittelten Namen.
Dem Gerät ist kein Nutzer zugewiesen
Das Gerät hat keinen Gerätebenutzer. Ohne Benutzer kann kein Benutzerzertifikat ausgewählt werden.
Sollen einzelne Benutzer ohne S/MIME-Zertifikat dennoch ihr Exchange-Konto erhalten, wird für sie eine eigene Richtlinie ohne S/MIME verwendet. Siehe auch Bekannte Probleme →.
Andere Plattformen
Die beschriebenen S/MIME-Einstellungen gibt es in Relution für iOS in den Konfigurationen Exchange und E-Mail (IMAP/POP). Für E-Mail-Apps auf anderen Plattformen, etwa unter Android Enterprise, lassen sich Benutzerzertifikate über Platzhalter in einer Managed App Konfiguration übergeben, sofern die jeweilige App dies unterstützt. Die Platzhalter ${user.certificate.SMIME_SIGNING} und ${user.certificate.SMIME_SIGNING.password} sind unter Benutzerzertifikate → beschrieben.