VServer aufsetzen Teil 4: SSL aktivieren

Als nächstes wollen wir SSL auf dem Webserver aktivieren um unsere Kommunikation mit dem späteren Owncloud Server zu verschlüsseln.

Dafür können wir uns entweder selber ein passendes Zertifikat ausstellen oder uns eines bei einer CA wie Verisign erstellen lassen.

Selber erstellen hat den Nachteil das das Zertifikat von keiner gültigen Authority überprüft wurde und so einen Fehler auswirft wenn man die Seite ansurft. Man kann zwar Ausnahmen im Browser hinzufügen aber schön ist anders. CA wie Verisign nehmen für Ihren Service normalerweise ziemlich viel Geld.

Eine alternative sind die kostenlosen Zertifikate von StartSSL.com die für unsere Zwecke ausreichen. Dort kann man sich für die eigene Domain bzw. eine Sub- Domain ein passendes SSL Zertifikat erzeugen lassen. Da StartSSL als Root CA in den meisten Browsern und Betriebssytemen hinterlegt ist kriegt man auch keine hässliche Fehlermeldung präsentiert.

Auf Mute’s Blog gibt es eine schöne Anleitung wie man sich ein solches SSL Zertifikat erstellt.

Folgt dieser Anleitung bis zu dem Teil wo es an die Konfiguration von Apache geht. Speichert euch alle Dateien die Ihr bei StartSSL ladet bzw. erstellt in einem Ordner. In diesem Ordner sollten sich nun euer entschlüsselter Server Key (ssl.key), euer Server Zertifikat (ssl.crt), das StartCom Root CA (PEM encoded) (ca.pem) sowie das Class 1 Intermediate Server CA  (sub.class1.server.ca.pem) befinden. Die letzten beiden Dateien könnt Ihr aus der Toolbox bei StartSSL laden.

Das aktivieren von SSL ist bei Hiawatha sehr einfach, wenn man sich die Zertifikats- Datei im Pem- Format richtig zusammengebaut hat.

Dazu öffnen wir uns einen Texteditor (bitte kein Word etc. Edit unter Windows, bzw. Textedit im reinen Text Modus unter OS X reichen aus) und fügen nacheinander den Inhalt der 4 Dateien jeweils getrennt von einer Zeile mit zwei doppelten Anführungszeichen ein. Zuerst der ssl.key, dann der ssl.crt, dann die ca.pem sowie die sub.class1.server.ca.pem und speichern es z.B. als server.pem ab.

Am ende sollte das in etwas so assehen:

-----BEGIN RSA PRIVATE KEY-----
Inhalt ssl.key
-----END RSA PRIVATE KEY-----
""
-----BEGIN CERTIFICATE-----
inhalt ssl.crt
-----END CERTIFICATE-----
""
-----BEGIN CERTIFICATE-----
Inhalt ca.pem
-----END CERTIFICATE-----
""
-----BEGIN CERTIFICATE-----
Inhalt sub.class1.server.ca.pem
-----END CERTIFICATE-----

Damit haben wir nun unser Zertifikat, welches wir jetzt auf sicherem wege auf unseren Server transferieren. Ich nutze für sowas gerne SCP. Die server.pem kommt dann in den Ordner /etc/hiawatha.

Nun müssen wir die hiawatha.conf noch anpassen damit SSL auch genutzt werden kann, dazu nehmen wir uns den Abschnitt zu den SSL Binding vor und ändern ihn ab:

Binding {
Port = 443
#       Interface = ::1
#       MaxKeepAlive = 30
#       TimeForRequest = 3,20
        SSLcertFile = /etc/hiawatha/server.pem
}

Nach einem Neustart von Hiawatha solltet Ihr euren Server auch per SSL verschlüsselt ansurfen können, zu erkennen an den bunten Schlössern in der Browser Adresszeile.

Schön ist das man bei Hiawatha nur eine Zeile im Virtual Host Eintrag benötigt um alle Besucher dieses Hosts auf die SSL Version umzuleiten. Es müssen also keine komplexen Rewrite Aktionen gestartet bzw. konfiguriert werden.

Dazu muss man in den Vrtual Host Eintrag nur die Zeile:

RequireSSL = yes

eintragen.

Ein Gedanke zu „VServer aufsetzen Teil 4: SSL aktivieren“

  1. —–BEGIN RSA PRIVATE KEY—–
    Inhalt ssl.key
    —–END RSA PRIVATE KEY—–
    „“
    —–BEGIN CERTIFICATE—–
    inhalt ssl.crt
    —–END CERTIFICATE—–
    „“
    —–BEGIN CERTIFICATE—–
    Inhalt ca.pem
    —–END CERTIFICATE—–
    „“
    —–BEGIN CERTIFICATE—–
    Inhalt sub.class1.server.ca.pem
    —–END CERTIFICATE—–

    Inhalt ca.pem am besten ganz weg lassen. Weil mit dessen inhalt wird ein ‚Chain issues Contains anchor‘ fehler ausgegen (mittels test ssllabs ssltest).

    Also so:

    —–BEGIN RSA PRIVATE KEY—–
    Inhalt ssl.key
    —–END RSA PRIVATE KEY—–
    „“
    —–BEGIN CERTIFICATE—–
    inhalt ssl.crt
    —–END CERTIFICATE—–
    „“
    —–BEGIN CERTIFICATE—–
    Inhalt sub.class1.server.ca.pem
    —–END CERTIFICATE—–

    Aber gut das ich diesen Post gefunden habe! Konnte hiawatha direkt über https betreiben.

    Thanks!
    Gruß
    Erk

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert