Zertifikat für HTTPS/IMAPs auf Symbian S60 installieren

von   Keine Kommentare

Gestern lief mein Zertifikat für den cratoo.de Web- und Mailserver aus. Das hatte zum einen zur Folge, dass diese neu erzeugt werden mussten und zum anderen, dass unsere Endgeräte (namentlich das E61i und das E71) mit den neuen Zertifikaten versorgt werden mussten.

Theoretisch ist das keine Pflicht, praktisch macht es aber keinen Spaß beim Aufruf des eigenen mit SSL abgesicherten Mail- / Webserver immer bestätigen zu müssen, dass man dem Zertifikat vertraut.
Grundsätzlich ist es dabei so, dass Symbian es durchaus erlaubt ein Zertifikat „für immer“ zu akzeptieren, allerdings funktioniert das nur für Zertifikate einer bekannte Root CA. Selbst signierte Zertifikate muss man also bei jeder Nutzung bestätigen. Das nervt natürlich.

Dabei ist Symbian allerdings nicht sonderlich hilfreich darin mitzuteilen, dass die Ablehnung eines Zertifikates darin begründet liegt, dass es selbst signiert ist. Und so bekommt man nur eine Fehlermeldung, dass die Verbindung nicht erfolgreich war. Selbiges fand ich in einem Forum, das mittlerweile nicht mehr existiert. Dort fand man auch die Lösung und zwar, dass man das das Zertifikat des des jeweiligen Servers einfach zu einem Zertifikat wandelt, welches man dann wiederum auf dem Handy installieren kann.

Wie das geht stand dann im allaboutsymbian-Forum:
Mit dem folgenden Kommando wandelt man das vorhandene Zertifikat in ein installiebares um und kann dieses dann per Bluetooth oder direktem HTTP Abruf installieren.

openssl x509 -outform der -in apache2|imap.pem -out meinserver.cer

Im Unterschied zum Kommando im Forum musste ich das Handyzertifikat mit der Dateiendung .cer versehen. .der wie es im Forum steht funktionierte bei mir nicht.

Jetzt ist es möglich z.B. Swim dazu zu benutzen, die Synchronisation des Handys gegen einen eigenen HTTPs Server zu machen, da man ab sofort das Zertifikat nicht mehr bestätigen muss 🙂


Tags: , , , , , , , , , , ,

Kommentar hinterlassen

 

_uacct = "UA-344406-1"; urchinTracker(); {lang: 'de'} var pkBaseURL = (("https:" == document.location.protocol) ? "https://cratoo.de/piwik/" : "http://cratoo.de/piwik/"); document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E")); try { var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 1); piwikTracker.trackPageView(); piwikTracker.enableLinkTracking(); } catch( err ) {}