• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Es regnet, ist neblig und kalt, alle sind krank und der Chef wird zunehmend cholerisch. Das Thema des Monats ist also folgerichtig --> Das Grau(en)
    Wir sind gespannt, war Euch dazu einfällt! Zum Wettbewerb --> Klick

[iOS 11] Mailsignatur und -verschlüsselung mit S/MIME und self-signed Zertifikaten

cheyen

Erdapfel
Registriert
13.02.18
Beiträge
4
Hallo,

initiiert durch den Wunsch eines Kunden, haben wir uns S/MIME für Signaturen und Verschlüsselung eingerichtet. Wir hatten anfangs große Probleme mit self-signed Zertifikaten schon unter Mail in macOS, ganz besonders aber unter iOS. Deshalb sind wir dann auch Zertifikate von Comodo umgeschwenkt, mit den bei uns untereinander alles scheinbar problemlos funktioniert, sogar unter iOS (zumindest iOS 11).

Nun verwendet unser Kunde leider selbst-signierte Zertifikate. Es gibt ein Unternehmenszertifikate, mit dem die Zertifikate aller Nutzer signiert sind. Wenn ich dem Unternehmenszertifikat unter macOS vertraue, funktionieren Signaturen und Verschlüsselungen mit den Mitarbeitern diese Unternehmens problemlos.
Unter iOS habe ich das ROOT-Zertifkat des Kunden und die Zertifikate der Mitarbeiter installiert, wodurch ihnen implizit auch vertraut wird. Leider scheint die Installation von selbstsignierten Zertifikaten aus signierten Mails heraus nicht einmal manuell zu funktionieren. Wenn selbstsignierte Zertifikate installiert wurden, scheinen damit signierte Mails auch als vertrauenswürdig zu gelten.
Ich habe es aber bisher nicht hinbekommen einem Empfänger mit einem selbst signierten Zertifikat eine verschlüsselte Mail zu schicken. Das Problem besteht nur bei diesem Kunden, sondern auch wenn wir es intern testen, oder im Kontakt mit anderen Entwicklern.

Ich habe nach allen Änderungen in Einstellung oder der Installation immer die Mail App und die Einstellungen App vollständig beendet, da ich gelernt habe, dass das notwendig erscheint, um nicht noch weitere Probleme zu erzeugen.

Hat jemand Erfahrung mit der Verwendung von selbstsignierten Zertifikaten unter iOS (insbesondere iOS 11) mit S/MIME zur Signatur und Verschlüsselung von Emails?

Ich habe bereits nach alternativen Apps für Emails geschaut, habe aber den Eindruck, dass diese größtenteils die Zugangsdaten zu Emailkonten auf ihren eigenen Servern speichern, was für uns nicht akzeptabel ist.

Ich bin für jeden Hinweis dankbar.

Gruß
Christoph
 

Ijon Tichy

Clairgeau
Registriert
21.11.06
Beiträge
3.723
Wir verwenden schon lange ein selbst-signiertes Root-Zertifikat, mit dem wir alle unsere S/MIME-Zertifikate signieren, was einwandfrei funktioniert. Ich hoffe daher, dass ich dir da weiterhelfen kann. Dazu aber erst ein paar Rückfragen:

Wenn du das Unternehmenszertifikat (ich nehme an, das ist ein Root-Zertifikat) auf dem iPhone unter Einstellungen > Profile aufrufst, ist es dann als vertrauenswürdig gekennzeichnet? Und wenn du das öffentliche Zertifikat eines der Mitarbeiter aufrufst, wird es dann auch als vertrauenswürdig angezeigt?

Ist das eigene private Zertifikat (p12) importiert? Und wird es unter Einstellungen > Profile als "überprüft" mit grünem Häkchen angezeigt?

Wenn beides so ist, hast du unter Einstellungen > Accounts > Dein Mail-Account > Account > Erweitert bei Signieren und Standardmäßig verschlüsseln das private Zertifikat eingestellt?

Ich bin übrigens schon seit einiger Zeit dazu übergegangen, die Profile mit dem Apple Configurator vorzubereiten und auf die iPhones zu installieren, weil das komfortabler und zuverlässiger ist. Nur so als Tipp nebenbei.
 

Ijon Tichy

Clairgeau
Registriert
21.11.06
Beiträge
3.723
Nachtrag: Wie genau hast du die öffentlichen Zertifikate der Mitarbeiter installiert?
 

cheyen

Erdapfel
Registriert
13.02.18
Beiträge
4
Ich habe die öffentlichen Zertifikate der Mitarbeiter genauso wie das Root-Zertifikat aus meinem macOS-Schlüsselbund gezogen und auf den Desktop fallen lassen. Dann habe ich sie, zuerst das Root-Zertifikat, per AirDrop auf das iPhone übertragen. Dadurch wird automatisch ein Installation-Prozess angestoßen, in dem gesagt wird, dass eine Installation automatisch einem Vertrauen des Zertifikats entspricht und ich werde nach der ersten Bestätigung nochmals gefragt, ob es installieren will, was ich dann bestätige.

Wenn du das Unternehmenszertifikat (ich nehme an, das ist ein Root-Zertifikat) auf dem iPhone unter Einstellungen > Profile aufrufst, ist es dann als vertrauenswürdig gekennzeichnet? Und wenn du das öffentliche Zertifikat eines der Mitarbeiter aufrufst, wird es dann auch als vertrauenswürdig angezeigt?
Ja in beiden Fällen.

Ist das eigene private Zertifikat (p12) importiert? Und wird es unter Einstellungen > Profile als "überprüft" mit grünem Häkchen angezeigt?
Ja.

Wenn beides so ist, hast du unter Einstellungen > Accounts > Dein Mail-Account > Account > Erweitert bei Signieren und Standardmäßig verschlüsseln das private Zertifikat eingestellt?
Ja. Und wenn ich meinem Zertifikat/Schlüssel an der Stellte folge, ist das auch mit einem grünen Haken versehen.
 

Ijon Tichy

Clairgeau
Registriert
21.11.06
Beiträge
3.723
Interessant, auf die Idee mit Airdrop bin ich noch nie gekommen!

Wie hast du dein privates Zertifikat installiert? Auch mittels AirDrop?

Also eigentlich sieht alles gut aus - bleibt die Frage, warum es nicht geht... :)

Versuchen wir der Sache weiter auf die Schliche zu kommen:
  1. Wenn du eine signierte Mail von einem deiner Kommunikationspartner öffnest, ist das Signiersymbol (Häkchen) zu sehen?
  2. Wenn du auf den Absender tippst, um das Zertifikat anzuzeigen (ggf. 2x tippen, dann noch mal Zertifikat anzeigen), ist es dann vertrauenswürdig? Ist es gültig? Wird Installieren oder Entfernen angeboten?
  3. Wenn du dann in genau dieser Mail auf Antworten gehst, wird die neue Mail als signiert angezeigt? Als verschlüsselt?
  4. Wenn du eine ganz neue Mail beginnst, wird sie als signiert angezeigt?
 

Ijon Tichy

Clairgeau
Registriert
21.11.06
Beiträge
3.723
Noch eine - vielleicht blöde - Frage: Die für Mail eingestellte Absenderadresse stimmt auch mit der im Zertifikat hinterlegten überein?
 

cheyen

Erdapfel
Registriert
13.02.18
Beiträge
4
Interessant, auf die Idee mit Airdrop bin ich noch nie gekommen!

Wie hast du dein privates Zertifikat installiert? Auch mittels AirDrop?
Das vorgehen mit Airdrop steht in vielen Anleitungen zu diesem Thema drin :)
Mein privates Zertifikat mit Schlüssel habe ich aus dem Schlüsselbund in macOS als p12 mit Passwortschutz exportiert. Ich habe das entweder auch per Airdrop oder per Mail oder als Anhang in einem Mailentwurf (gleiche Mailkonto per Imap auf macOS und iOS) auf das iPhone bekommen. Ich kann auch prinzipiell Mails signieren und verschlüsselte lesen.

Wenn du eine signierte Mail von einem deiner Kommunikationspartner öffnest, ist das Signiersymbol (Häkchen) zu sehen?
Ja. Da wird auch nichts bezüglich irgendeines Zweifels an der Signatur angezeigt.

Wenn du auf den Absender tippst, um das Zertifikat anzuzeigen (ggf. 2x tippen, dann noch mal Zertifikat anzeigen), ist es dann vertrauenswürdig? Ist es gültig? Wird Installieren oder Entfernen angeboten?
Es wird "Installieren" angeboten. Das habe ich nun gemacht. Wenn wieder ich in den Profilen schaue, ist das Zertifikat, das ich bereits über Airdrop vom Mac installiert, trotzdem nur einmal da. Es also durch die Installation aus Mail heraus, oder genau genommen wohl sogar aus der Kontakte App, kein weiteres Profil hinzugekommen, dass ich erkennen kann.

Jetzt kann ich Mails an diesen Mitarbeiter verschlüsseln. Es ist also absolut notwendig, das Zertifikat als iOS Mail heraus zu installieren, auch wenn es vorher schon auf anderem Wege installiert war und Mail es sogar für die Prüfung der Signatur bereits akzeptiert hat.

Ich habe nun noch eine Mail von einem weitere Mitarbeiter dieses Kunden angeschaut, dessen Zertifikat ich noch nicht installiert hatte. Das habe ich nun direkt über den von Dir beschriebenen Weg getan. Ich kann dort nun ebenfalls Mails verschlüsseln. Außerdem wird die Signatur direkt in der Mail als vertrauenswürdig angezeigt. Wenn ich aber noch einen Schritt weiter zurück gehe in den Mail-Thread, ist die Signatur nicht akzeptiert und der Absender ist rot markiert.
Nach Abschießen und Neustart von iOS Mail wird dieser Sender auch im Mailthread als vertrauenswürdig angezeigt.

Ich stelle immer mehr fest, dass es zwar schön ist, dass Apple unbedarften Nutzern Entscheidungen und zu technische Arbeiten abnimmt, es aber trotzdem schön und hilfreich wäre, technisch interessierten Nutzern doch einen etwas tieferen Einblick "hinter die Kulissen" zu gewähren.

Danke für Deine Hilfe Ijon Tichy!
 

Ijon Tichy

Clairgeau
Registriert
21.11.06
Beiträge
3.723
Gerne! Prima, dass ich helfen konnte!

Dass man die S/MIME-Zertifikate der Email-Partner aus Mail heraus installieren muss, liegt meinem Verständnis nach daran, dass diese in der Mail-App installiert werden müssen. Die Zertifikate im Profil scheinen damit nichts zu tun zu haben. Ich habe die S/MIME-Zertifikate meiner Email-Partner überhaupt nicht im Profil installiert, sondern nur das Root-Zertifikat und meine eigenen. Auch nachdem man in Mail auf Installieren getippt hat, tauchen sie nicht im Profil auf.

Ich wünschte es wäre anders. Denn das ist aber ziemlich unpraktisch, weil man immer erst die einzelnen S/MIME-Zertifikate der Email-Partner in Mail installieren muss. Entweder aus der Signatur oder man schickt sie einfach als Mail-Anhang. Schöner wäre es natürlich, wenn man alle benötigten S/MIME-Zertifikate in einem Aufwasch erledigen könnte. Ich wüsste aber nicht wie das geht - allerdings ist die Dokumentation zu S/MIME seitens Apple, wie du ja auch schon angemerkt hast, leider recht dürftig.

Noch Hinweis zum Aktualisieren der S/MIME-Zertifikate:
Wenn ein Zertifikat verlängert wurde, also dasselbe Zertifikat mit neuem Ablaufdatum erstellt wurde, dann kann man dies aufgrund eines schon länger bekannten Bugs in iOS nicht installieren - die Option wird gar nicht angeboten. Man muss dann eine alte Mail mit dem alten Zertifikat heraussuchen, dieses anzeigen und entfernen. Dann erste kann man das neue installieren. Hoffen wir, dass die angekündigte Konzentration auf Qualität in iOS 12 auch dazu führt, dass dieser Bug endlich behoben wird...
 

cheyen

Erdapfel
Registriert
13.02.18
Beiträge
4
Noch Hinweis zum Aktualisieren der S/MIME-Zertifikate:
Wenn ein Zertifikat verlängert wurde, also dasselbe Zertifikat mit neuem Ablaufdatum erstellt wurde, dann kann man dies aufgrund eines schon länger bekannten Bugs in iOS nicht installieren - die Option wird gar nicht angeboten. Man muss dann eine alte Mail mit dem alten Zertifikat heraussuchen, dieses anzeigen und entfernen. Dann erste kann man das neue installieren. Hoffen wir, dass die angekündigte Konzentration auf Qualität in iOS 12 auch dazu führt, dass dieser Bug endlich behoben wird...

Danke für Hinweis. Das werd ich mir gleich irgendwo notieren, wo ich es hoffentlich, wenn benötigt, schnell wieder finde :) Ich denke, das wird schon lange vor iOS 12 für mich relevant.
 

gorditamaria1505

Bismarckapfel
Registriert
23.12.14
Beiträge
77
Ist das eigene private Zertifikat (p12) importiert? Und wird es unter Einstellungen > Profile als "überprüft" mit grünem Häkchen angezeigt?

Danke für deine Erklärung hier, damit habe ich auch einige Punkte abhaken können. Allerdings habe ich mein privates Zertifikat importiert, aber bei mir steht dann "nicht überprüft". Wie kann ich das überprüfen (lassen)?

Ich hoffe, es ist okay, dass ich mich hier ranhänge?
 

Ijon Tichy

Clairgeau
Registriert
21.11.06
Beiträge
3.723
Klar!

Hast du das Mail-Zertifikat selbst ausgestellt und mit einer Self-signed Root CA signiert? Dann solltest du auch das öffentliche Root-Zertifikat auf dem iPhone installieren und ihm explizit vertrauen.
 

gorditamaria1505

Bismarckapfel
Registriert
23.12.14
Beiträge
77
Klar!

Hast du das Mail-Zertifikat selbst ausgestellt und mit einer Self-signed Root CA signiert? Dann solltest du auch das öffentliche Root-Zertifikat auf dem iPhone installieren und ihm explizit vertrauen.
Ich habe mir ein Zertifikat mit comodo erstellen lassen.
Wie kann ich denn das öffentliche Root-Zertifikat installieren?
 

Ijon Tichy

Clairgeau
Registriert
21.11.06
Beiträge
3.723
Hm das ist dann was ganz anderes und passt eigentlich nicht zum Thread-Titel. Das Comodo Root-Zertifikat müsste eigentlich schon drin sein...

Poste mal einen Screenshot.
 

gorditamaria1505

Bismarckapfel
Registriert
23.12.14
Beiträge
77
als erstes kommt unter Mehr Details eine Zusammenfassung und dann folgt eine lange Datei, die ich per Screenshot auf mehrere Bilder aufgeteilt habe. Ich hoffe, du kannst alles lesen. IMG_0982.PNGIMG_0983.PNGIMG_0984.PNGIMG_0985.PNGIMG_0986.PNGIMG_0987.PNGIMG_0988.PNGIMG_0989.PNGIMG_0990.PNGIMG_0990.PNGIMG_0982.PNGIMG_0983.PNGIMG_0984.PNGIMG_0985.PNGIMG_0986.PNGIMG_0987.PNGIMG_0988.PNGIMG_0989.PNGIMG_0990.PNG
 

Ijon Tichy

Clairgeau
Registriert
21.11.06
Beiträge
3.723
Also das sieht alles gut aus. Das „nicht überprüft“ bedeutet wohl, dass das Profil nicht signiert wurde, aber das Zertifikat selbst sieht gut aus. Das liegt wohl daran, dass das Zertifikat einfach so importiert wurde.

Also einfach ignorieren.