Bereitstellen,
Konfigurieren und
Verwalten von SSL Zertifikaten
Vorwort
SSL (Secure Sockets Layer) schützt die wichtigsten Transaktionen im Internet.
Millionen Menschen verlassen sich auf
SSL, um Server zu validieren und ihre persönlichen Informationen vertraulich
zu halten. Als Sicherheitsadministrator
werden Sie sehr wahrscheinlich SSL-Zertifikate auf einem Microsorft Windows
Server 2003-Netzwerk weitergeben und
verwalten müssen. Selbst wenn Sie SSL nicht benötigen, um Webkommunikation
zu schützen, können Sie das Proto-
koll verwenden, um die Kommunikation des Active Directory-Domänencontrollers,
Datenbankabfragen und E-Mail-Nach-
richten zu schützen.
Übersicht über SSL (Secure Sockets
Layer)
SSL wurde von der Netscape Communications Corporation im Jahr 1994 entwickelt,
um Transaktionen im World Wide
Web abzusichern. Kurz darauf begann die IETF (Internet Engineering Task Force)
an einem Standardprotokoll mit den
gleichen Funktionen zu arbeiten. SSL 3.0 wurde als Basis für dieses Protokoll
verwendet, das als TLS-Protokoll (Trans-
port Layer Security) bekannt ist. Die Implementierung des SSL/TLS-Protokolls
in Windows Server 2003 folgt genau den
Bestimmungen, di ein RFC 2246, "The TLS Protocol Version 1.0" definiert
sind.
SSL ist sehr verbreitet, da es starke Authentifizierung, Nachrichtensicherheit
und Datenintegrität bietet. Anders als an-
dere proprietäre Techniken zur Verbesserung der Kommunikationssicherheit
ist SSL ein offener Standard, der weit ver-
breitet ist und von verschiedenen Servern und Clients unterstützt wird.
Da SSL so weit verbreitet ist, wurden seine Sta-
ndards und bekannten Implementierungen von der Community sorgfältig untersucht.
Diese genaue Untersuchung, kom-
biniert mit der relativen Reife der SSL-Standards, hat eine sehr sichere Methode
zur Authentifizierung von Clients und
Servern und zum Kommunikationsschutz ergeben.
So funktioniert SSL
SSL bietet Verschlüsselung, Authentifizierung und Datenintegrität
durch ein öffentliches Schlüsselzertifikat. Wenn eine
SSL-Sitzung erstellt wird, wird das öffentliche Schlüsselzertifikat
des Servers verwendet, um einen gemeinsamen ge-
heimen Schlüssel zu erstellen und zwischen Client und Server auszutauschen.
Dieser gemeinsame geheime Schlü-
ssel wird dann verwendet, um die Kommunikation während der Sitzung zu verschlüsseln.
Im Folgenden wird schritt-
weise die Prozedur zum Erstellen einer SSL-Sitzung beschrieben:
Tipp:
Denken Sie daran, dass SSL sowohl die Verschlüsselung mit öffentlichem
als auch die mit privatem Schlüssel verwen-
det. Öffentliche Schlüssel werden für die Authentifizierung und
zur Übertragung des gemeinsamen Schlüssels verwen-
det. Der gemeinsame Schlüssel wird dann zur Datenverschlüsselung benutzt,
da beim Verschlüsseln und Entschlüs-
seln von Daten mit einem gemeinsamen Schlüssel weniger Verarbeitungszeit
als beim Verschlüsseln mit einem öffen-
tlichen Schlüssel benötigt wird.
Vergleich von SSL mit IPSec
IPSec wird meist für die gleichen Dienste wie SSL verwendet: Authentifizierung,
Datenschutz und Nachrichtenintegrität.
IPSec geht jedoch ander an diese Aufgaben heran als SSL. IPSec wird vom Betriebssystem
implementiert und ist für
die Anwendungen, die es verwenden, vollständig transparent. Das bedeutet,
dass IPSec für den Schutz von fast jeder
Art von Netzwerkkommunikation verwendet werden kann. IPSec bietet ebenfalls
ein flexibles Authentifizierungsschema.
Die Microsoft Windows-Implementierung von IPSec ermöglicht Clients und
Servern, sich mit öffentlichen Schlüsselzerifi-
katen oder gemeinsamen geheimen Schlüsseln gegenseitig zu authentifizieren.
SSL dagegen muss von einzelnen Anwendungen implementiert werden. Daher können
Sie SSL nicht für die Verschlüs-
selung der gesamten Kommunkation zwischen zwei Hosts verwenden. Dazu kommt,
dass SSL weniger flexibel als
IPSec ist, da es nur Authentifizierung durch öffentliche Schlüsselzertifikate
unterstützt. SSL hat dafür jedoch andere
deutliche Vorteile. Was am wichtigsten ist: SSL wird von sehr vielen Servern
und Clients unterstützt und die Ausgere-
reiftheit des Standards hat Kompatibilitätsprobleme praktisch ausgeräumt.
Zusätzlich ermöglicht SSL unidirektionale Authentifizierung, wogegen
IPSec beide Seiten einer Verbindung für die Au-
thentifizierung benötigt. Unidirektionale Authentifizierung bedeutet, dass
SSL zur Authentifizierung des Servers ohne
Registrierung für ein öffentliches Schlüsselzertifikat auf dem
Client verwendet werden kann. Das heißt, dass SSL für
die Verschlüsselung der Kommunikation mit öffentlichen Websites verwendet
werden kann, wobei der Datenschutz für
den Endbenutzer gewährt bleibt, da die Informationen des Benutzerzertifikats
nicht an den Webserver weitergegeben
werden. In der unteren Tabelle werden die Unterschiede zwischen IPSec und SSL
zusammengefasst.
Vergleich von SSL und IPSec
IPSec | SSL |
Benötigt Authentifizierung für Cient und Server | Benötigt entweder Client- oder Serverauthentifizierung (oder beides) |
Authentifizierung durch öffentliche Schlüssel-zertifikate oder gemeinsamen geheimen Schlüssel | Authentifizierung mit öffentlichen Schlüsselzertifikaten benötigt. |
Kann für die Authentifizierung und Verschlüs-selung von Kommunikation für jede Anwen-dung verwendet werden. | Kann nur für Authentifizierung und Verschlüsselung von Daten für Anwendungen verwendet werden, die SSL unterstützen. |
Kann Kommunikation zwischen ganzen Netz-werken tunneln | Ist eine ausgereifte Technologie, die weit verbreitet ist. |
Wird meist für Intranetkommunikation verwen-det | Wird meist für Internetkommunikation verwendet |
Beziehen von SSL-Zertifikaten
Um SSL zu verwenden, muss der Server ein entsprechendes öffentliches Schlüsselzertifikat haben. Zusätzlich ermög-
lichen oder erfordern einige SSL-Szenarien, dass der Client ein öffentliches Schlüsselzertifikat verwendet. SSL ist eine
der häufigsten Verwendungen für öffentliche Schlüsselzertifikate. Deshalb können Sie SSL-Zertifikate von vielen ver-
schiedenen Stellen beziehen.
Jedes Unternehmen mit einem Computer unter Windows Server 2003 kann Zertifikatdienste zum Ausstellen von SSL-
Zertifikaten ohne zusätzliche Kosten verwenden. Diese Zertifikate sind für Intranetszenarien geeignet, in denen Ser-
ver und Clients durch ein einziges Unternehmen kontrolliert werden. Diese Zertifikate sollten jedoch nicht für die Komm-
unikation mit anderen Unternehmen verwendet werden.
Wie bei jeder PKI (Public Key Infrastructure) kann man SSL-Zertifikate nur dann als vertrauenswürdig einstufen, wenn
die Stammzertifizierungsstelle (CA) vertrauenswürdig ist. Sie können GPOs (Gruppenrichtlinienobjekte) verwenden, um
Ihre Zertifizierungsstelle zur Liste der vertrauenswürdigen Zertifizierungsstellen auf Clients im Intranet hinzuzufügen,
aber es ist wesentlich schwieriger, Clients auf dem Intranet zu konfigurieren. Aus diesem Grund sollten Sie, wenn Sie
die Clientcomputer nicht kontrollieren, ein SSL-Zertifikat einer öffentlichen Zertifizierungsstelle beziehen, die von den
Clientanwendungen (die eine Verbindung mit Ihrem Server herstellen) als vertrauenswürdig eingestuft wird. Wenn der
Server ein Webserver ist, sind Ihre Clients Webbrowser. Der Microsoft Internet Explorer ist standardmäßig so konfigu-
riert, dass er eine große Anzahl an öffentlichen Zertifizierungsstellen als vertrauenswürdig einstuft (siehe untere Abb.)
Bild von Seite 638
Wenn der Client die Zertifizierungsstelle, die das Zertifikat ausgestellt hat, als nicht vertrauenswürdig einstuft, zeigt der
Client dem Endbenutzer eine Warnung (siehe untere Abbildung). Diese Warnung hindert den Benutzer nicht daran,
eine SSL-verschlüsselte Sitzung mit Ihrem Server zu erstellen. Die Warnung kann den Benutzer jedoch dazu bringen,
die Verbindung abzubrechen. Obwohl der Aufbau einer Verbindung mit einem Server mit nicht vertrauenswürdiger Zer-
tifizierungsstelle trotzdem Verschlüsselung und Nachrichtenintegrität bietet, verfehlt das Verwenden eines SSL-Zerti-
fikats von einer nicht vertrauenswürdigen Zertifizierungsstelle den Zweck der Authentifizierung, die durch SSL ermö-
glicht werden soll.
Bild von Seite 639
Planung:
Wenn Sie öffentliche Zertifikate für SSL verwenden möchten, nehmen Sie sich zur Auswahl der Zertifizierungsstelle ge-
nug Zeit. Die Preise für die Zertifikate sind sehr unterschiedlich, von kostenlos bis mehrere Tausend Dollar teuer. Teu-
rere Zertifizierungsstellen bieten Garantien (für Schadenersatz, falls Ihr Zertifikat geknackt wird), Siegel (die Sie auf Ihrer
Website zeigen können), Zertifikatsverwaltungsdienste und Sicherheitsdienste. Zusätzlich sollten Sie sicher sein, dass
die Zertifizierungsstelle auch in Zukunft von den bekannten Webbrowsern als vertrauenswürdig eingestuft wird. Wenn Sie
wissen möchten, welche Ansprüche eine Zertifizierungsstelle erfüllen muss, um als vertrauenswürdig eingestuft zu wer-
den, informieren Sie sich über das WebTrust-Programm, das vom Institut AICPA (The American Institute für Certified
Public Accountants) gesponsert wurde, unter http://www.webtrust.org/vertauth.htm.
Erneuern von SSL-Zertifikaten
Wie andere öffentliche Schlusselzertifikate auch hat jedes SSL eine Gültigkeitsdauer. Irgendwann läuft das Zertifikat
also ab. Sie sollten das Zertifikat drei bis sechs Monate vor Ablauf erneuern, um sicherzustellen, dass es keinen Zeit-
raum gibt, in dem das Zertifikat ungültig ist.
Der spezifische Prozess, den Sie zur Erneuerung des Zertifikats verwenden, kann variieren. Wenn Sie ein Zertifikat
verwenden, das von einer öffentlichen Zertifizierungsstelle ausgestellt wurd, wird diese Zertifizierungsstelle den Erneu-
erungsprozess vornehmen. Wenn Sie ein Zertifikat verwenden, dass vom Zertifikatdienst ausgestellt wurd, können Sie
das Zertifikat mit der Webregistrierung erneuern, mit dem Zertifikat-Snap-In oder mit dem Assistenten für Webserver-
zertifikate.
Konfigurieren von Firewalls
Anwendungen verwenden eine eindeutige Anschlussnummer für SSL-geschützte Kommunikation. Das bedeutete, dass
Sie Ihre Firewall-Konfiguration ändern müssen, um den verschlüsselten Datenverkehr zuzulassen.
Es gibt zwei Wege, SSL-geschützte Kommunikation durch eine Firewall zu ermöglichen. Der erste Weg ist, die Fire-
wall für jeden Verkehr an einem bestimmten Anschluss zu öffnen. Die typischen Anschlüssel, die verschiedene An-
wendungen für SSL verwenden, sind in der unteren Tabelle aufgelistet. Obwohl SSL-Sitzungen so durch die Firewall
erstellt werden können, kann die Firewall dann die Inhalte der SSL-verschlüsselten Pakete nich analysieren. Das be-
deutet, dass die Firewall nur die Quelle und das Ziel des Pakets verwenden kann, um zu bestimmen, ob sie die Pa-
kete durchlässt.
Von Standard- und SSL-verschlüsselten Protokollen verwendete Anschlussnummern
Protokoll | Standardanschluss | SSL-Anschluss |
HTTP (Hypertext Transfer Protocol) | 80 | 443 |
SMTP (Simple Mail Transfer Protocol) | 25 | 465 |
POP3 (Post Office Protocol Version 3) | 110 | 995 |
IMAP (Internet Message Access Protocol) | 143 | 993 |
NNTP (Network News Transfer Protocol) | 119 | 563 |
LDAP (Lightweight Directory Access Protocol) | 389 | 636 |
Globale Katologabfragen | 3268 | 3269 |
Der zweite Weg ist, die Firewall als Proxyserver zu konfigurieren. In diesem Fall erstellt der Client tatsächlich eine
SSL-Sitzung mit der Firewall. Die Firewall wiederum erstellt eine SSL-Sitzung mit dem Zielserver. Der Client muss
darauf vertrauen, dass die Firewall die Authentifizierung durchführt und die Kommunikation schützt. Dies ist jedoch
der einzige Weg, SSL zur Verschlüsselung zu verwenden, während die Firewall den Inhalt der Kommunikation überprü-
fen kann.
Erstellt von: Haßlinger Stefan
Im: Jahr 2006