HTTPS bei all-inkl.com mit einem kostenlosen SSL-Zertifikat von StartSSL

Symbolbild HTTPS (Quelle: openclipart.org, Schloss / Lock created by kalapahejo, Puplic Domain License, modifiziert durch vektorkneter.de)

Symbolbild HTTPS (Quelle: openclipart.org, Schloss / Lock created by kalapahejo, Puplic Domain License, modifiziert durch vektorkneter.de)

Obwohl ich beruflich täglich mit Web-Kram zu tun habe – hauptsächlich Frontend und CM-Systeme – ist Server-Administration für mich eher selten ein Thema. Dementsprechd wenig kenne ich mich mit deren Konfiguration aus und hatte bis neulich nur sehr theoretisches Wissen was die Einrichtung von HTTPS angeht. So 100%ig blicke ich Letzteres immer noch nicht, habe es aber dennoch geschafft mit den von all-inkl.com bereitgestellten Hilfmitteln ein kostenfreies SSL-Zertifikat von StartSSL (StartCom) zu hinterlegen. In diesem Artikel schreibe ich die nötigen Schritte dazu auf – für Suchende mit den gleichen Rahmenbedingungen und für mein zukünftiges Ich.

Update: Seit kurz nach Veröffentlichung dieses Artikels lassen sich bei all-inkl.com auch direkt kostenlose Zertifikate von „Let’s Encrypt” einrichten – komfortabel per Mausklick. Mehr dazu am Ende dieses Artikels.  

Präambel

Ich bin beim Signieren und Hinterlegen des SSL-Zertifikates weitestgehend der Anleitung von kleingedruckt.de (danke dafür!) gefolgt, welche eigentlich schon sehr ausführlich und hilfreich ist. Allerdings sieht die Website von StartSSL inzwischen anders als in eben genannter Anleitung aus und ich hatte daher bei eins zwei Schritten etwas Mühe der Anleitung zu folgen. Aus diesem Grund hier nun eine weitere Anleitung mit neuen Screenshots. Aus Gründen der Sicherheit habe ich alle – sagen wir mal – vertraulichen Daten in den Screenshots entfernt, aber ich denke die Art und Weise der Einrichtung ist dennoch nachvollziehbar.

Schritt 1: SSL bei all-inkl.com aktivieren

Damit man das Zertifikat bei all-inkl.com hinterlegen kann, aktiviert man zuerst SSL in den Einstellungen der gewünschten Domain oder Subdomain. Das bewerkstellig man im Kundenadministrationssystem (kurz KAS, kas.all-inkl.com) durch Aufruf der (Sub)Domain-Liste und anschließendem Klicken auf das Bearbeiten-Symbol hinter der gewünschten (Sub)Domain. Dort klickt man in der Zeile „SSL Schutz” auf „bearbeiten”.

SSL-Schutz in den Domain-Einstellungen (Screenshot: Kundenadministrationssystem KAS von all-inkl.com)

SSL-Schutz in den Domain-Einstellungen (Screenshot: Kundenadministrationssystem KAS von all-inkl.com)

Hier gibt man nun die Inhaberdaten für das Zertifkat an. Gemäß der eingangs genannten Anleitung sollten diese Daten mit den WHOIS-Inhaberdaten der Domain übereinstimmen. Ob das tatsächlich eine Voraussetzung ist, weiß ich nicht – es klingt aber plausibel und sollte in den allermeisten Fällen auch zweckmäßig sein.

Selbst signiertes Zertifikat von all-inkl.com erstellen lassen (Screenshot: Kundenadministrationssystem KAS von all-inkl.com)

Selbst signiertes Zertifikat von all-inkl.com erstellen lassen (Screenshot: Kundenadministrationssystem KAS von all-inkl.com)

Nach dem Klicken auf „selbst signiertes SSL Zertifikat erzeugen” findet man weiter unten auf der Seite den von all-inkl.com automatisch generierten privaten Schlüssel (KEY), den Certificate Signing Request (CSR) und das selbst signierte Zertifikat (CRT). Den CSR, in welchem die Inhaberdaten sowie der öffentliche Schlüssel krptografisch „verwurstet” wurden, brauchen wir dann später, um das Zertifkat bei StartSSL (der s.g. Certificate Authority, kurz CA) signieren zu lassen.

Der Certificate Signing Request (CSR) wird später benötigt (Screenshot: Kundenadministrationssystem KAS von all-inkl.com)

Der Certificate Signing Request (CSR) wird später benötigt (Screenshot: Kundenadministrationssystem KAS von all-inkl.com)

Hinweis: Wenn mans genau nimmt, sollte man seine Schlüssel NICHT von Dritten erzeugen lassen (in diesem Fall all-inkl.com) sondern lokal selber generieren. Ebenso dann natürlich auch den CSR, der mithilfe des Schlüsselpaars erzeugt wird. Denn wer den privaten Schlüssel besitzt, kann nicht nur entschlüsseln sondern auch authentifizieren – also sich als legitimer Sender ausweisen. Dementsprechend sollte der private Schlüssel niemals aus der virtuellen Hand gegeben werden. Mein HTTPS-Testballon (eine private Website) ist allerdings nicht sonderlich sicherheitskristisch, weswegen ich die Schlüssel und den CSR von all-inkl.com genutzt habe. Wer es aber ganz sicher haben will: In diesem Artikel bei heise.de findet ihr die entsprecheden Kommandos für unixoide Betriebssysteme. Andererseits muss man den Schlüssel sowieso auf seinem Server bereitstellen, damit die Verschlüsselung funktioniert – ein gewisses Grundvertrauen in seinen Hoster ist also ohnehin unabdingbar.

Schritt 2: Bei StartSSL anmelden

Bei StartCom (StartSSL) bekommt man ein kostenloses Klasse-1-Zertifikat (Screenshot: StartCom Website)

Bei StartCom (StartSSL) bekommt man ein kostenloses Klasse-1-Zertifikat (Screenshot: StartCom Website)

Nach der Auswahl des „Free SSL Certifcate” muss man sich bei https://www.startssl.com/ anmelden. Klingt einfach und ist es letzlich auch – aber es ist zumindest ungewohnt. Denn um sich auf der Website von StartSSL (StartCom) anzumelden, nutzt man nicht wie sonst zumeist üblich eine Kombination aus Nutzername und Passwort sondern ein Zertifikat. Um diesen, nenn wir es mal „digitalen Mitgliederausweis” zu bekommen, muss man lediglich unter https://www.startssl.com/Account auf „Sign-up” klicken und dort sein Land und seine E-Mail-Adresse angeben. Wichtig: Das Browserfenster nicht schließen denn ihr bekommt darauf hin einen „Verification Code” per E-Mail zugesandt, welchen ihr in die entsprechende Eingabemaske auf der StartCom-Website einfügen müsst.

Hinweis: Bei mir hat es mehrere Minuten gedauert, bis die E-Mail von StartSSL in meiner Inbox ankam. Habt also Geduld und fordert (anders als ich) nicht unnötiger Weise einen neuen Code an.

Hat man diesen Prozess durchlaufen, installiert die Website automatisch das Zertifikat im System des Registrierenden und ihr könnt euch anschließend schmerzfrei unter https://www.startssl.com/Account über „Authenticate” anmelden (dazu bekommt ihr extra noch mal ein One Time Password per E-Mail zugesandt). Zumindest mittels Safari unter OSX war das kein Problem – ich weiß jedoch nicht wie das auf Windows-Systemen läuft. Vermutlich aber ebenso.

Schritt 3: Inhaberschaft der Domain bestätigen

Zunächst muss die Inhaberschaft der Domain bestätigt werden (Screenshot: StartCom Website)

Zunächst muss die Inhaberschaft der Domain bestätigt werden (Screenshot: StartCom Website)

Damit nicht Jeder Zertifkate für eure (Sub)Domains signieren lassen kann, verlangt StartSSL nun nach einer „verification of domain control”. Hierzu wählt man im „Validation Wizard” zunächst „Domain Validation”, gibt dann die betroffene Domain (Domain, nicht Subdomain!) ein und wählt eine E-Mail-Adresse, an die der benötigte Verification Code geschickt werden soll. Zur Auswahl stehen webmaster@, postmaster@ und hostmaster@. Eigene Eingaben erlaubt StartSSL hier aus verständlichen Gründen nicht – sofern keine der zur Auswahl stehenden Posfächer existieren, müssen Sie nun angelegt werden (es reicht auch eine Weiterleitung). Auch hier kommt dann wieder der Code per E-Mail, kopieren, auf der Website einfügen, Domain bestätigt.

Für die Bestätigung sendet StartSSL einen Verification Code an eine der drei vorgegebenen Adressen (Screenshot: StartCom Website)

Für die Bestätigung sendet StartSSL einen Verification Code an eine der drei vorgegebenen Adressen (Screenshot: StartCom Website)

Schritt 4: Zertifkat signieren lassen

Nachdem die Inhaberschaft der Domain nur verifiziert wurde, können wir nun unser Zertifkat unterschreiben lassen. Dazu wählt man zunächst im „Certificates Wizard” die Art des gewünschten Zertifikates – für das Vorhaben, eine Website via HTTPS erreichbar zu machen, ist „Web Server SSL/TLS Certifcate” die richtige Wahl.

Im "Certificates Wizard" wählt man das gewünschte Zertifikat aus (Screenshot: StartCom Website)

Im „Certificates Wizard“ wählt man das gewünschte Zertifikat aus (Screenshot: StartCom Website)

Nach der Auswahl der Zertifikatsart, muss nun die Domain oder Subdomain eingeben werden, für welche das Zerifikat gültig sein soll. In der kostenfreien Version sind bis zu fünf Hostnamen erlaubt – sinnvoll ist hier zumindest die Eingabe des Domainnamens mit und ohne „www.”. Wobei ich nicht weiß, ob letzteres notwendig ist – ich habe beim Erstellen dieser Screenshots hier die Eingabe der www.-Variante vergessen und dennoch wird die betroffene Site anstandslos über https://www.domainname.tdl ausgeliefert. Ist also vielleicht nicht nötig, schaden wird es aber vermutlich nicht.

Im nächsten Schritt gibt man den/die Hostnamen ein, für den/die das Zertifikat gelten soll (Screenshot: StartCom Website)

Im nächsten Schritt gibt man den/die Hostnamen ein, für den/die das Zertifikat gelten soll (Screenshot: StartCom Website)

Weiter unter auf der Seite wird nun der CSR (Certificate Signing Request) benötigt, welchen all-inkl.com generiert hat. Also einfach die Inhalte des CSR-Feldes von der Seite aus Schritt 1 kopieren und hier einfügen. Im CSR sind der öffentliche Schlüssel sowie die Inhaberdaten der Domain enthalten – mit dieser kryptischen Zeichenfolge erhält StartSSL also alle nötigen Informationen zum unterzeichnen des Zertifikates.

Im letzten Schritt wird hier der Inhalte des der von all-inkl.com generierten Certificate Signing Request (CSR) rein kopiert (Screenshot: StartCom Website)

Im letzten Schritt wird hier der Inhalte des der von all-inkl.com generierten Certificate Signing Request (CSR) rein kopiert (Screenshot: StartCom Website)

Das Optionsfeld „Generated by PKI system” wird hier NICHT angewählt, bleibt also leer. Nach dem Klicken auf „submit” wird das unterzeichnete Zertifikat erstellt und entsprechende Dateien zum Download vorbereitet.

Leicht zu übersehen: Auf der Bestätigungsseite gibt es den Link für den Download der Zertifikats-Dateien (Screenshot: StartCom Website)

Leicht zu übersehen: Auf der Bestätigungsseite gibt es den Link für den Download der Zertifikats-Dateien (Screenshot: StartCom Website)

Auf der folgenden Seite können nun die nötigen Dateien heruntergeladen werden. Der Download-Link ist etwas versteckt oben im grünen Hinweistext. Nach dem Klick auf Selbigen, wird ein ZIP-Archiv heruntergeladen, welches wir gleich im nächsten Schritt benötigen.

Schritt 5: Zertifikat bei all-inkl.com hinterlegen

In der ZIP-Datei befinden sich weitere ZIPs mit spezifischen Dateien je eingesetzten Webserver (Screenshot: OSX Finder)

In der ZIP-Datei befinden sich weitere ZIPs mit spezifischen Dateien je eingesetzten Webserver (Screenshot: OSX Finder)

In der ZIP-Datei befinden sich unterschiedliche Zertifikatsdateien für verscheidene Server. Die betroffene Website läuft bei all-inkl.com auf einem Apache Webserver – daher nutze ich die Inhalte der ApcheServer.zip.

Im ZIP für den Apache-Server gibt es zum einem das Brücken- oder Bundle-Zertifikat von StartCom und das Zertifikat für die eigene Site (Screenshot: OSX Finder)

Im ZIP für den Apache-Server gibt es zum einem das Brücken- oder Bundle-Zertifikat von StartCom und das Zertifikat für die eigene Site (Screenshot: OSX Finder)

In der ApacheServer.zip befinden sich zwei Dateien:
* 1_root_bundle.crt – das ist das s.g. Bundle-Zertificat des Zertifikatausstellers (StartSSL), welches auch Intermediate- oder Brücken-Zertifikat genannt wird
* 2_domainname.tdl.crt – das ist das unterschriebene Zertifikat für die Domain

Beide Dateien werden nun ein einem Texteditor geöffnet und deren Inhalte in die entsprechenden Formularfelder auf der all-inkl.com Website übertragen. Also die Inhalte der 1_root_bundle.crt ins Feld „Brückenzertifikate“ und die Inhalte der 2_domainname.tdl.crt ins Feld „CRT”

Hier werden die Inhalte der von StartSSL herunter geladenen Dateien hineinkopiert (Screenshot: Kundenadministrationssystem KAS von all-inkl.com)

Hier werden die Inhalte der von StartSSL herunter geladenen Dateien hineinkopiert (Screenshot: Kundenadministrationssystem KAS von all-inkl.com)

Das wars auch schon. Nach dem Klicken auf „Änderungen speichern” sollte nun „StartCom Ltd.” in den Zeilen „signiert von:” auf der SSL-Schutz-Konfigurationsseite von all-inkl.com erscheinen.

Wenn alles geklappt hat, taucht StartCom als unterschreibende Certificate Authority in den SSL-Einstellungen auf (Screenshot: Kundenadministrationssystem KAS von all-inkl.com)

Wenn alles geklappt hat, taucht StartCom als unterschreibende Certificate Authority in den SSL-Einstellungen auf (Screenshot: Kundenadministrationssystem KAS von all-inkl.com)

Schritt 6: Testen

Nun könnt ihr ausprobieren, ob die Website per HTTPS erreichbar ist.
Sofern ein Content Management System im Einsatzt ist, sind i.d.R. auch dort noch Einstellungen vorzunehmen, damit die Inhalte der Site alle via HTTPS ausgeliefert werden. Da das aber von System zu System unterschiedlich ist, möchte ich hier nicht näher darauf eingehen. Nur soviel: Ein Blick in die Webentwickler-Werkzeuge von beispielsweise Firefox, helfen dabei Fehlerursachen ausfindig zu machen.

Die Entwickler-Tools helfen beim Auffinden von "Mixed Content" Fehlern – wie hier nach der Umstellung meines Blogs (Screenshot Mozilla Firefox)

Die Entwickler-Tools helfen beim Auffinden von „Mixed Content“ Fehlern – wie hier nach der Umstellung meines Blogs (Screenshot Mozilla Firefox)

Fazit

Mit einem kostenlosen Zertifikat von StartSSL und den von all-inkl.com bereitgestellten Werkzeugen lässt sich eingermaßen konfortabel HTTPS für die eigene Website einrichten. Die bei StartSSL notwenigen Schritte sind natürlich identisch für andere Hoster – hier unterscheidet sich dann nur die Vor- und Nachbereitung. Soweit ich weiß durfte das kostenlose Zertifikat früher nur für nicht-kommerzielle Website genutzt werden – jedoch kann ich von dieser Beschränkung im zugehörigen Support-Dokument nichts finden. Da sich das aber jederzeit wieder ändern kann: Lieber vorher noch mal nachschauen! Auch gilt es zu beachten, dass die kostenfreien Zertifikate nach einem Jahr ungültig werden – also tragt euch am Besten gleich einen Termin in den Kalender ein, an dem ihr die Prozedur wiederholt.

Update, 5.4.2016

Seit kurzem bietet all-inkl.com in den SSL-Schutz-Optionen auch die Möglichkeit, per Klick ein kostenloses Zertifikat von Let’s Encrypt zu installieren. Soweit ich gelesen habe (derzeit noch nicht getestet) mit Option zur automatischen Verlängerung. Dieser Weg ist natürlich sehr viel einfacher als der oben beschriebene und soll daher hier nicht unerwähnt bleiben.

Über das Kundenadministrationssystem (KAS) von all-inkl.com kann man seit kurzer Zeit auch komfortabel kostenlose Zertifikate von Let's Encrypt installieren.

Über das Kundenadministrationssystem (KAS) von all-inkl.com kann man seit kurzer Zeit auch komfortabel kostenlose Zertifikate von Let’s Encrypt installieren.

9 Kommentare Schreibe einen Kommentar

    • Hallo TomEk,

      vielen Dank für den Link. Dass Mozilla den StartCom-Zertifikaten nicht mehr vertraut, habe ich garnicht mitbekommen – inzwischen habe ich auf SSL-Zertifikate von Let’s Encrypt umgestellt.

      So wie es aussieht, muss sich StartCom nun bemühen, bei Mozilla wieder als vertrauenswürdige CA rein zu kommen. Da der Artikel allerdings schon einige Monate alt ist, der entsprechende Bugreport aber noch immer offen ist, sieht es nicht so aus als würden die sich drum kümmern …

  1. Super Tutorial! Danke! Evtl. bitte schon oben im Text einen Hinweis auf „Let’s Encrypt“ – dann spart man sich doch so einiges :-)

    Herzliche Grüße
    Ralph

  2. Hallo,
    super tutorial!
    Genial hat mir als newby sehr geholfen.
    Eine Bitte hätte ich noch ich kann leider kein texteditor für osx finden der die crt Dateien lesen kann!?
    Weisst du zufällige eines?

    • Hallo Jochen,
      es freut mich zu lesen, das es Dir geholfen hat!

      Was den Editor angeht: Das mit OSX mitgelieferte Programm „TextEdit“ kann .crt-Dateien ohne Probleme öffnen. Das sind ja faktisch nur Textdateien mit einer anderen Endung. Das der Inhalt dieser Dateien nach „Zeichensalat“ aussieht, ist ganz normal.

Schreibe einen Kommentar