Informationen zu SSL und TLS
Oft spricht man von SSL (Secure Socket Layer) oder SSL-Verschlüsselung. Häufig meint man damit jedoch TLS (Transport Layer Security). Die meist gestellt Frage dürfte wohl sein, was denn nun der Unterschied zwischen SSL und TLS ist. SSL wurde von der Firma Netscape entwickelt um Daten verschlüsselt und sicher über das Internet zu übertragen. Es fand aber nie den Einzug in RFCs und ist somit ein proprietärer Standard. Häufig wird behauptet, dass SSL Version 3.0 dasselbe ist wie TLS Version 1.0. Nun, die beiden liegen ziemlich nah beieinander, sind aber doch so verschieden, dass Sie nicht miteinander kompatibel sind. D.h. ein Client der SSL 3.0 spricht kann nicht auf einen Server zugreifen, der nut TLS 1.0 kann und genauso umgekehrt. TLS ist in RFC 2246 als Internetstandard fixiert. Als Vorlage dafür diente SSL 3.0. Daher auch die häufige Verwechslung der beiden.
SSL 3.1 / TLS 1.0 galten bislang als sicher und werden daher noch vielfach eingesetzt. Im September 2011 wurde allerdings offiziell BEAST (Browser Exploit Against SSL TLS)vorgestellt. Eine länger bekannte Sicherheitslücke, die speziell auf AES (Advanced Encryption Standard) Verschlüsselung abzielt wurde in den nachfolgenden Protokollen TLS 1.1 (RFC 4346) und 1.2 (aktuell – RFC 5246) behoben. Bei RC4 unter TLS 1.0 (obwohl es eine schwächere Verschlüsselung als AES nutzt) funktioniert BEAST ebenfalls nicht.
Microsoft hat das Problem erkannt und daher dieses Security-Bulletin veröffentlicht. Als Administrator eines IIS sollten Sie das auf jeden Fall lesen und anwenden!!!
Für den Apache empfiehlt sich mod_gnutls statt mod_ssl, oder wenn mod_ssl, dann die Verwendung von RC4 statt AES (Beschreibungen dazu finden Sie an jeder Ecke im Internet).
Das Hauptproblem dürften aber die Browser sein. Wenn die Browser nicht schleunigst aktualisiert und vor allem richtig konfiguriert werden, dann nutzt die gesamte Server seitige Sicherheit nichts! Um Ihren Browser sicher zu machen, sorgen Sie in der jeweiligen (IE, Firefox, Chrome, Opera, etc…) Konfiguration dafür, dass nur noch TLS 1.1 oder 1.2 zum verschlüsselten Verbindungsaufbau akzeptiert werden. Sollten Sie keine Option dafür finden, sondern nur TLS 1.0/SSL 3.0, aktualisieren Sie Ihren Browser und wenn das auch nicht hilft, wechseln Sie den Webbrowser! Sollten Sie alles erledigt haben, aber z. B. Probleme beim Onlinebanking bekommen, weil die Webserver der Bank immer noch nur TLS 1.0 können, denken Sie über einen Wechsel Ihrer Bank nach! Das ist dann in meinen Augen schon fahrlässig und somit kein vertrauenswürdiger Geschäftspartner in einem so sensiblen Bereich!
HTML auf SSL-verschlüsseltem Webserver richtig einsetzen
Haben Sie auf Ihrem Webserver auf das Problem, dass Der Clientbrowser meldet, dass Ihre SSL gesicherte Site unsichere Daten enthält? Das kann vorkommen, wenn Sie in die Website z.B. Grafiken einbauen und diese per http angeboten werden. Statt nun im HTML-Code die Grafiken direkt mit http://ihredomain.de/grafik.gif bereit zu stellen, können Sie auch laut RFC 3986 auf diese Art:
//ihredomain.de/grafik.gif
zugreifen. Also einfach das http weglassen. Der Browser wir das dann interessanter Weise nicht mehr als Problem werten.
Windows OpenVPN Client als Dienst laufen lassen
Voraussetzung ist, dass OpenVPN bereits mit normaler Benutzer-Authentifizierung funktioniert. Dieses Tutorial richtet sich also an Fortgeschrittene und nicht an OpenVPN Einsteiger! Die allgemeine OpenVPN Konfiguration und Installation können Sie unter http://openvpn.net/index.php/open-source/documentation/howto.html nachlesen.
Nachdem Sie den OpenVPN Client und danach OpenVPN GUI for Windows installiert haben finden Sie bei den Windows-Diensten einen Service namens OpenVPN Service. Legen Sie die Startart auf Automatisch fest und setzen Sie den Registry-Key-Eintrag HKLM\SOFTWARE\OpenVPN-GUI\allow_service auf den Wert 1 (vorher 0). Des Weiteren verändern Sie in der Datei mit der Endung ovpn im C:\Programme\OpenVPN\config Verzeichnis die Zeile auth-user-pass indem Sie in dieser Zeile einen Dateinamen hinten dran schreiben, also z.B. so: auth-user-pass access.txt.
Erstellen Sie mit Notepad ebenfalls im config Verzeichnis die Datei access.txt mit dem Inhalt des gewünschten VPN-Benutzers für den Verbindungsaufbau, dessen Zertifikate Sie bereits hier im config Verzeichnis hinterlegt haben:
Benutzername
Kennwort
Damit da nicht gleich jeder dran kommt, sollten Sie auf die Datei nur dem Administrator und dem SYSTEM Zugriff geben und allen anderen die Berechtigungen entziehen. Für die ganz Paranodien ist dann noch eine Bitlockerverschlüsselung zu empfehlen (EFS geht an dieser Stelle nicht).
ClearOS
SBS umsonst gibt es auf: http://www.clearfoundation.com/. Als Basis dient CentOS 5.5 (binärkompatibel mit RedHat).
Enthalten ist:
- Windows Userverwaltung mittels LDAP. PDC wird emuliert und bietet somit auch Ordnerfreigabe und Druckerzugriff
- VPN mit PPTP,IPSec und OpenVPN
- Firewall mit DMZ, Proxy, Spamfilter, IDS und IPS
- DHCP und DNS
- Zertifikatserver
- E-Mail mit POP3, SMTP und IMAP
- MySQL Datenbank
- Webserver mit PHP unterstützung