Corporate Publishing

Webanwendungen mit SSL schützen – gestiftet von Host Europe (Werbung)

Bitte diese Anmerkung lesen

Vor allem im Bereich sensibler Daten wie Kreditkarten-  oder Kontodaten passiert es immer häufiger, dass es zum Diebstahl und Missbrauch kommt. Die Übernahme von kompletten Websites und E-Mail-Accounts zählt ebenfalls zu den Risiken der unverschlüsselten Datenübertragung. Um Attacken und Datendiebstähle zu verhindern, wurde bereits vor mehreren Jahren die SSL-Verschlüsselung unter Verwendung von Zertifikaten ins Leben gerufen und kontinuierlich weiterentwickelt.

Die Basis für die Verschlüsselung ist das Zertifikat. Sobald für eine Domain ein Zertifikat hinterlegt ist, wird der Adressteil „http“ als „https“ dargestellt und dadurch eine sichere Verbindung symbolisiert. Diese Adressdarstellung veranlasst den Browser, vom adressierten Server seinen öffentlichen Schlüssel und ein Zertifikat anzufordern. Durch die Überprüfung der vom Server übermittelten Daten kann der Browser feststellen, ob es sich um den in der Adresse angegebenen Server handelt. Gleichzeitig erhält der Server vom Browser im Vorfeld der Datenübertragung sogenannte Testnachrichten. Diese können nur dann vom Server beantwortet werden, wenn es sich um den tatsächlich angesprochenen Server handelt. Erst nach dieser Überprüfung wird die Übermittlung der Daten freigegeben.

Zertifikate können bei unterschiedlichen kostenpflichtigen Anbietern im Internet bestellt werden oder bei der CAcert, einer kostenfreien und nichtkommerziellen Zertifizierungsstelle, die als Verein organisiert ist und für jeden Antragsteller ein kostenfreies X.509-Zertifikat ausstellt. Während die Identitätsprüfung bei kommerziellen Zertifikatsausstellern direkt beim Aussteller stattfindet, wird diese Aufgabe bei der CAcert an das Vertrauensnetz in Form der persönlichen Identifizierung durch einen Assurer delegiert. Vergeben werden durch CAcert Client-Zertifikate zum Verschlüsseln von Emails und anderen Daten sowie Server-Zertifikate, die die Zugehörigkeit eines Servers zu einem Unternehmen oder einer Person bestätigen. Diese Server-Zertifikate dienen zur Absicherung von Datenübertragungen über HTTPS, SMTPS oder IMAPS.

Installation des Zertifikats

Ein Zertifikat von CAcert benötigt mehrere Schritte, bevor es genutzt werden kann.

  • Eröffnung eines Kontos bei CAcert.org
  • Identitätsüberprüfung durch mindestens zwei persönliche Treffen mit CAcert-Vertrauensleuten (Assurer), bei denen das Vertrauensnetzformular unterschrieben wird.

Kommerzielle Anbieter wie die Hosteurope GmbH bieten eine große Auswahl an SSL-Zertifikaten an. Dabei sollte darauf geachtet werden, dass es sich um bekannte und vertrauenswürdige Zertifikate handelt. Die Überprüfung der Identität erfolgt abhängig vom Zertifikat über eine Emailadresse oder ein amtliches Dokument, das eingereicht werden muss.

Die nächsten Schritte beschreiben die Installation eines Zertifikates für den Webserver Apache 2x sowie die Erstellung des benötigten CSR-Zertifikates, das die Voraussetzung für die Zertifikatsanforderung darstellt.

Erstellung CSR-Zertifikat über openssl für Apache Webserver:

  1. Über Terminal – Root-Konsole – Verzeichnis [openssl]
  2. Befehlseingabe: [openssl req -nodes -new -newkey rsa:2048 -out csr.pem]
  3. Eintrag der abgefragten Daten wie Name, Email, Wohnort usw.
  4. CommonName = Adresse des Servers in Form des Domainnamens, für den das Zertifikat gültig sein soll.

Nach der Eingabe der Daten werden die Dateien privkey.pem und csr.pem erstellt. Diese enthalten den privaten Schlüssel und die Zertifikatsanforderung. Nach der Erstellung des CSR wird das Zertifikat angefordert und installiert. Voraussetzung ist, dass der Apache Webserver SSL unterstützt:

  1. Login auf dem Webserver
  2. Öffnen der Konfigurationsdatei: [vi /etc/apache/httpd.conf]
  3.  In der Konfigurationsdatei muss der passende VirtualHost Konfigurationsabschnitt gesucht werden, der mit SSL abgesichert werden soll.

Hier wird die nachfolgende Konfiguration hinzugefügt:

DocumentRoot /var/www/
ServerName example.com
SSLEngine on
SSLCertificateFile /etc/apache/ssl/example.com.crt
SSLCertificateKeyFile /etc/apache/ssl/example.com.key

  • Nach dem Einfügen der Konfiguration wird die Änderung gespeichert und der Editor geschlossen.
  • Nun wird die geänderte Konfiguration mit dem Tool [apachectl] getestet, indem in die Befehlszeile der Befehl [apachectl configtest] eingegeben wird.
  • Ausgegebener Befehl [Syntax OK] – es ist kein Fehler aufgetreten.
  • Neustart des Webserverdienstes mit [apachectl restart]

Fazit und mögliche Probleme

Trotz intensiver Prüfung der Identität des Zertifikatsbesitzers kann vor allem für private Seiten keine absolute Sicherheit gewährleistet werden, dass die Person hinter dem Zertifikat vertrauenswürdig ist. Vor allem dann, wenn ein Zertifikat von einem Seitenbetreiber selbst erstellt wurde und keine Identifikation durch eine offizielle Zertifizierungsstelle erfolgte. Ein weiteres Problem stellen Seitenbetreiber dar, die bewusst mit gefälschten Zertifikaten handeln und eine Verbindung mit dem angewählten Server vortäuschen. Diese Gefahr besteht vor allem bei Zertifikaten von Zwischenzertifizierern, Billiganbietern oder unbekannten kostenlosen Anbietern von Zertifikaten. Aus diesem Grund sollte unbedingt nur Zertifikaten bekannter Zertifizierungsstellen vertraut werden.

Eine durch Zertifikat verschlüsselte Verbindung gibt keine Sicherheit vor Spam, Hackern oder Pishing. Sicherheit gegen Angriffe dieser Art geben ausschließlich professionell konfigurierte Firewalls. Ein weiteres, oft jedoch zu vernachlässigendes Problem, sind die etwas längeren Ladezeiten, die durch die Sicherheitskommunikation zwischen den Servern entstehen.

Lust auf Flamewar? Bitte vorher diese Anmerkung lesen

Über den Autor

Host Europe

Ein Kommentar

Hier klicken um zu kommentieren

  • Hi Mo, netter Artikel. Lediglich die Aussage mit Firewalls könnte falsch verstanden werden (Auch Firewalls schützen nicht vor allem…).
    Bei CACert können im übrigen auch ohne persönliche Assurer Meetings Zertifikate beantragt werden, allerdings sind diese dann nur auf email-validiert, also eingeschränkt. Reicht aber in vielen Fällen schon aus.

    Und wo wir schon beim Thema SSL sind, poste ich hier frech meinen Artikel. Setzt an deinem an und geht einen Schritt weiter…

    http://www.hashtagsecurity.com/apache-authentication-with-client-certificates-part-i/

    PS: Das der Artikel nicht von dir ist, find ich in Ordnung solange du es dazuschreibst, bzw. nicht du als Author angegeben bist.

Archive

banner