Sichern Sie Ihren Apache Web-Server mit einem Digitalen

Transcription

Sichern Sie Ihren Apache Web-Server mit einem Digitalen
TM
TM
Sichern Sie Ihren Apache Web-Server mit einem
Digitalen Zertifikat von thawte Eine Anleitung, die
Ihnen SCHRITT FÜR SCHRITT erklärt, wie Sie ein digitales
Zertifikat von thawte auf Ihrem Apache Web-Server testen,
installieren und benutzen...
1. Überblick
2. Systemanforderungen
3. Generierung Ihres privaten Schlüssels
4. Generierung Ihres Certificate Signing Request (CSR)
5. Nutzung eines Testzertifikats
6. Beantragung eines "trusted" Zertifikats
7. SSL-Konfiguration in Apache
8. Installation Ihres Zertifikats
9. Sicherung von virtuellen Hosts
10. Nützliche URLs
11. Welche Rolle übernimmt thawte?
12. Der Authentifizierungswert
13. Wenden Sie sich an thawte
14. Terminologieglossar
Die “Feder”, die Sie das gesamte Dokument hindurch sehen werden, ist das Logo der Apache Software
Foundation: http://www.apache.org
TM
TM
1. Überblick
In dieser Anleitung wird Ihnen erklärt, wie Sie ein digitales Zertifikat von thawte auf Ihrem Apache Web-Server
testen, kaufen, installieren und nutzen können. Wir haben die jeweils besten Set-Up-Schritte hervorgehoben,
um Ihnen die laufende Verwaltung Ihrer privaten Schlüssel und digitalen Zertifikate zu
erleichtern.
Wir beziehen uns ebenfalls auf thawte als Trusted-Third-Party und inwieweit die Nutzung eines digitalen
Zertifikats von thawte Ihren Geschäftsaktivitäten sowie der Vertrauensbildung bei Ihren Kunden anhand
eindeutiger Online-Sicherheitsaspekte von Vorteil sein kann.
2. Systemerfordernisse
Bevor Sie ein SSL-Zertifikat auf Ihrem Apache Web-Server installieren können, müssen Sie die nötigen SSLKomponenten installiert haben. Sie müssen OpenSSL sowie entweder ModSSL oder Apache-SSL installieren.
OpenSSL und die dazugehörigen kryptographischen Bibliotheken bilden das SSL-Backend, während ModSSL
oder Apache-SSL die Schnittstellen zwischen OpenSSL und Apache bilden. ModSSL und Apache-SSL sind
sich sehr ähnlich und es ist Ihnen völlig freigestellt, welches Modul Sie verwenden möchten - thawte gibt Ihnen
hierzu keine Empfehlung ab.
In dieser Anleitung gehen wir davon aus, dass Sie Apache mit
installiertem ModSSL verwenden.
NÜTZLICHE WEBSITES:
www.apache.org
www.modssl.org
www.apache-ssl.org
www.openssl.org
TM
TM
3. Generierung Ihres privaten Schlüssels
Benutzen Sie zur Generierung Ihres privaten Schlüssels den OpenSSL Binärcode. Da dieser Schlüssel
auf Ihrem Web-Server abgelegt wird, empfehlen wir Ihnen, dass Sie sich an das optimale
Sicherungsverfahren halten und ihn per kryptographischem Schutz mit dem folgenden Befehl absichern:
“openssl genrsa –des3 1024 –out www.mydomain.com.key”
Dieser Befehl veranlasst OpenSSL zur Generierung eines privaten RSA-Schlüssels, mit Bitlänge 1024
sowie zur Verschlüsselung dieser Datei anhand der Triple-DES-Chiffre. Das Ergebnis wird daraufhin an
eine Datei namens www.mydomain.com.key geleitet.
Sie werden dann aufgefordert, ein PEM (Privacy Enhanced Message)-Kennwort, auch Passphrase genannt,
bei Generierung der privaten Schlüsseldatei einzugeben. Sie werden dann nochmals dazu aufgefordert,
um die Eingabe zu bestätigen. Ein verschlüsselter privater Schlüssel ist mit einem Kennwort gesichert.
Wir empfehlen eindringlichst, dass Sie diese Option nutzen. Jedes Mal, wenn Sie den Computer, der
diesen Schlüssel benutzt, neu starten, oder wenn Apache neu gestartet wird, werden Sie zur Eingabe
dieses Kennworts aufgefordert.
Wichtig!
Important
ERSTELLEN
FAITES
UNE SIE
COPIE
EINE
DESICHERUNGSKOPIE
SAUVEGARDE DE CE
DIESER
FICHIER
SCHLÜSSELDATEI
DE CLÉ ET DE SA
UND
PHRASE
DES ENTSPRECHENDEN
DE PASSE !
KENNWORTS!
Das le
beiplus
weitem
häufigste
Problem,
auf
das Benutzer
bei diesem
Vorgang
stoßen,
De loin le problème
souvent
rencontré
par les
utilisateurs
au cours
de cette
procédure,
est bezieht sich
auf
die privaten
einen
Schlüssel
verlieren,
oder
aufou
ihnsi zugreifen
associé
aux clésSchlüssel.
privées. SiWenn
vous Sie
perdez
ouprivaten
ne pouvez
plus accéder
à une
clénicht
privée
vous ne können,
oder
falls
Sievous
sich souvenir
nicht an das
inphrase
der privaten
Schlüsseldatei
PEM-Kennwort
erinnern,
pouvez
plus
de la
de passe
définie sur gespeicherte
le fichier de clé
privée, vous ne
pourrezkönnen Sie
das
Zertifikat,
das
wir
Ihnen
ausstellen,
nicht
nutzen.
Um
dies
zu
umgehen,
empfehlen
wir,
dass
Sievous
sich eine
pas utiliser le certificat qu’on vous a délivré. Pour vous assurer que ceci ne se produit jamais, nous
Sicherungskopie
derune
privaten.
conseillons de faire
sauvegarde du fichier de clé privée, et que la phrase de passe PEM utilisée
pour protéger le fichier de clé privée soit notée.
Um die Datei an eine andere Stelle zu kopieren (in diesem Fall Ihr
a:\Laufwerk), benutzen Sie den folgenden Befehl:
“cp www.mydomain.com.key path-to-removable-disk”
Falls Sie stecken bleiben oder Hilfe benötigen, gehen Sie bitte zu:
“openssl genrsa --help”
TM
TM
4. Generierung Ihres Certificate Signing Request (CSR)
Im nächsten Schritt müssen Sie ein CSR (Certificate Signing Request) erzeugen, das Sie thawte vor
Ausstellung des Zertifikats vorlegen müssen. Zur Erzeugung des CSR verwenden Sie OpenSSL sowie
Ihren im vorherigen Schritt generierten privaten Schlüssel wie folgt:
“openssl req –new –key www.mydomain.com.key –out www.mydomain.com.csr”
Auf diese Weise erzeugen Sie einen CSR, der denselben "Modulus" wie der private Schlüssel hat. Sie
werden nun aufgefordert, die folgenden, zur Generierung des CSR nötigen Angaben einzutragen:
Country Name (Landeskürzel im 2-Buchstaben-ISO-Code) [GB]: US State or Province (volle Bezeichnung
von Bundesland oder Landkreis) [Berkshire]: Texas Locality Name (Ortsbezeichnung, z. B. Stadt) [Newbury]:
Dallas Organization Name (Firmenbezeichnung, z. B. Gesellschaft) [Meine GmbH]: Widgets Inc.
Organizational Unit Name (Unterorganisation, z. B. Abteilung) []: Widgets Common Name (z. B. Ihr Name
oder der Hostname Ihres Servers) []: www.mydomain.de E-Mail Adresse [Optional]:
Das sind die Angaben, die von thawte überprüft werden. Vergewissern Sie sich daher bitte, dass die
Angaben in Ihrem CSR mit denen Ihres Unternehmens GENAUESTENS
übereinstimmen.
Hinweis: Sie werden aufgefordert, das PEM (Privacy Enhanced Message)-Kennwort einzugeben. (Das ist
dasselbe Kennwort, das Sie in der privaten Schlüsseldatei gespeichert haben, die im vorherigen Schritt
generiert wurde).
Wichtiger Hinweis
Die Bezeichnung "Common Name" ist laut X.509-Standard der für denjenigen Namen zu verwendende
terminologische Begriff, der am besten zur Kennzeichnung des Zertifikats geeignet erscheint. Dieser Begriff
wird dann auch an Ihr Unternehmen gebunden. Für SSL-Zertifikate müssen Sie Ihren genauen Host- und
Domainnamen eingeben, den Sie sichern möchten. Einer der häufigsten Fehler ist, einen unrichtigen Domainnamen
in das Eingabefeld Comme Name in der CSRDatei einzutragen. Jedes Zertifikat ist jeweils an den eingetragenen
Domainnamen gebunden. Stellen Sie daher sicher, dass Sie den genauen und voll qualifizierten Domainnamen,
den Sie für den Zugriff auf den gesicherten Teil Ihrer Site benutzen werden, in diesem Feld eingetragen haben.
Sie dürfen AUF KEINEN FALL den ‘http://’- Teil in die URL mit aufnehmen. Das gleiche gilt für alle anderweitigen
Verzeichnisse, die unter diese Domain fallen. Wenn Sie beispielsweise per https://secure.mydomain.com/checkout
auf Ihr Checkout zugreifen, geben Sie lediglich secure.mydomain.com im Eingabefeld Common Name ein.
Die vorab generierte CSR-Datei wird dann an eine Datei namens www.mydomain.csr geleitet. Wenn Sie
diese Datei aufrufen, sollte sie ähnlich dem nachstehenden Beispiel aussehen:
TM
TM
-----BEGIN CERTIFICATE REQUEST----MIIB2TCCAUICAQAwgZgxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdHZW9yZ2lhMREwDwYDVQQHEwhDb2x1bWJ1c
zEbMBkGB1UEChMSQUZMQUMgSW5jb3Jwb3JhdGVkMQswCQYDVQQLEwJJVDEYMBYGA1UEAxMPd3d3LmFmbGF
jbnkuY29tMSAwHgYJKoZIhvcNAQkBFhFKR2FybW9uQGFmbGFjLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjqAWgYk
CgYEAsRqHZCLIrlxqqh8qs6hCC0KR9qEPX2buwmA6GxegICKpOi/IYY5+Fx3KZWXmta794nTPShh2lmRdn3iwxwQRKyq
YKmP7wHCwtNm2taCRVoboCQOuyZjS+DG9mj+bOrMK9rLME+9wz1f8l0FuArWhedDBnI2smOKQID45mWwB0hkCAwE
AAaAAMA0GCSqGSIb3DQEBBAUAA4GBAJNlxhOiv9P8cDjMsqyM0WXxXWgagdRaGoa8tv8R/UOuBOS8/H
qu73umaB9vj6VHY7d9RKqDElFc/xlXeDwoXNiF8quTm43pmY0WcqnL1JZDGHMQkzzGtg502CLTHM
ElUGTdKpAK6rJCkucP0DKKEJKcmTySSnvgUu7m
-----END CERTIFICATE REQUEST-----
Benutzen Sie einen der folgenden zwei Befehle, um die CSR-Datei aufzurufen:
cat www.mydomain.csr
vi www.mydomain.com.crt
Somit haben Sie die drei Grundschritte für den Antrag eines SSL-Zertifikats von thawte abgeschlossen.
5. Nutzung eines Testzertifikats
Um sich mit der Funktionsweise eines thawte Zertifikats auf einem Apache Server vertraut zu machen, können
Sie sich ein Testzertifikat auf Ihrem Server mithilfe eines thawte Testzertifikats einrichten.
In diesem Schritt wird davon ausgegangen, dass das SSL-Protokoll in Apache konfiguriert wurde. Falls dies
nicht der Fall sein sollte, gehen Sie bitte zu Punkt 7, um die Konfiguration entsprechend durchzuführen, bevor Sie
fortfahren.
Obwohl diese Zertifikate nur zu Test- und Bewertungszwecken gedacht sind, können sie dennoch
zu Zwecken der Datenverschlüsselung herangezogen werden. Doch wann immer eine SSL-Verbindung mit
Ihrem Server, auf dem ein Testzertifikat installiert ist, aufgebaut werden soll, wird eine Warnmeldung angezeigt.
Anhand dieser Meldung wird dem Benutzer mitgeteilt, dass das Zertifikat nicht vertrauenswürdig (trusted) ist,
und dass somit die Echtheit der Site nicht garantiert werden kann.
TM
TM
Diese Zertifikate sind dazu konzipiert, dass Benutzer ihre Serverkonfigurationen mit ihnen testen können,
bevor sie sich zum Kauf eines so genannten "trusted" Zertifikats bei einer CA (Certification Authority /
Zertifizierungsstelle) entscheiden.
Bei Testzertifikaten kann es zu Fehlern im Browser kommen, in dem das Root-Zertifikat nicht manuell eingefügt
wurde.
Ihr Browser erkennt das Testzertifikat nur dann als vertrauenswürdig (trusted) an, wenn Sie das erforderliche
Root-Zertifikat manuell in Ihren Browser einfügen. Befolgen Sie die zur Installation des thawte Test CA RootZertifikats im Wizard beschriebenen Anweisungen. Klicken Sie hierzu auf den folgenden Link:
www.thawte.com/roots/index.html
Unsere Testzertifikate haben eine Gültigkeitsdauer von 21 Tagen. Für diesen Service übernehmen wir
KEINERLEI GARANTIE!
Bis jetzt haben Sie bereits
drei Dateien erstellt:
www.mydomain.key
- privater RSA-Schlüssel
www.mydomain.csr
- Certificate Signing Request
www.mydomain.crt
- thawte Datei für Testzertifikat
Sie können ein thawte Testzertifikat online unter folgendem Link anfordern:
http://www.thawte.com/ucgi/gothawte.cgi?a=w46840165337049000
Sie werden aufgefordert, Ihren CSR (Certificate Signing Request) in das auf der Systemseite des Testzertifikats
vorgesehene Eingabefeld per Copy & Paste zu übertragen.
Hinweis: Sie müssen den CSR, einschließlich der Bindestriche am Anfang (BEGIN) und am Ende (END) der
Zeilen, übertragen.
Das Testzertifikat wird daraufhin sofort basierend auf dem angegebenen CSR generiert. Sie können das
Zertifikat auf der nächsten Seite ansehen. Speichern Sie das Testzertifikat in einer Datei namens
www.mydomain.com.crt
TM
TM
6. Beantragung eines "trusted" Zertifikats
thawte SSL-Zertifikate können online unter folgender Adresse beantragt werden: https://www.thawte.com/buy/
Während des Ablaufs der Zertifikatsbeantragung werden Sie aufgefordert, Ihren CSR (Certificate Signing
Request) in ein dafür auf dem Online-Anmeldeformular vorgesehenes Eingabefeld per Copy & Paste zu
übertragen.
Hinweis: Sie müssen den CSR, einschließlich der Bindestriche am Anfang (BEGIN) und am Ende (END) der
Zeilen, übertragen.
Wichtig
Sollten Sie mehrere CSRs erzeugt haben, vergewissern Siesich bitte, dass Sie den richtigen CSR übertragen.
Sie können Ihren CSR anhand des folgenden Befehls überprüfen: “openssl req –text –noout –in csrfilename.csr”
Für und während des Anmeldevorgangs müssen Sie die gesamten erforderlichen Angaben bereitstellen und
uns die dementsprechenden Dokumente zukommen lassen, die entweder Sie persönlich ausweisen oder die
Identität Ihres Unternehmens (beispielsweise eine Handelsregistereintragung) bestätigen. Die genauen
Anweisungen zur Beantragung und Anmeldung eines thawte SSL-Zertifikats ersehen Sie unter:
http://www.thawte.com/support/docs.html
Nach Abschluss der Online-Beantragung wird thawte eine Reihe von Schritten einleiten, um Ihre Identität
sowie die von Ihnen im CSR gemachten Angaben zu überprüfen. thawte stellt grundsätzlich ausgedehnte
Hintergrundprüfungen an, bevor ein Zertifikat erteilt werden kann. Aus diesem Grund kann es einige Tage
dauern, um die Identität Ihres Unternehmens und die von Ihnen diesbezüglich gemachten Angaben zu
überprüfen und das Zertifikat zu erteilen.
Während dieses Verifikationszeitraums haben Sie die Möglichkeit, den Ablauf Ihres Antrags auf ihrer
persönlichen Status-Seite unter folgendem Link mit zu verfolgen:
http://www.thawte.com/cgi/server/status.exe
Sollten Sie während dieses Zeitraums irgendwelche Fragen haben, wenden Sie sich bitte an den für Ihren
Antrag zuständigen Customer Service Ansprechpartner. Die genauen Angaben Ihres Ansprechpartners finden
Sie bitte auf Ihrer Status-Seite unter der obigen URL, unter “ thawte Contact Person”.
TM
TM
7. SSL-Konfiguration in Apache
Vor der Installation von Test- oder “vertrauenswürdigen” (“trusted”) Zertifikaten, müssen Sie Ihren Apache
Web-Server dementsprechend konfigurieren.
‘Direktiven’ (Directives) sind dazu da, um Apache genaue Funktions- und Verhaltensbefehle bei bestimmten
Bedingungen mitzuteilen, d. h. angefangen von wie sicher Inhalte behandelt werden müssen bis hin zur
Mitteilung Ihres Servernamens an Apache.
Mod_ssl stellt die für die Konfiguration eines SSL-Supports auf Apache notwendigen Direktiven bereit. Die
am häufigsten benutzten Direktiven sind nachstehend aufgelistet:
SSLCACertificateFile- Spezifiziert den Pfad zu einer Datei, die CA Root-Zertifikate enthält.
SSLCertificateFile- Spezifiziert das Verzeichnis des SSL-Zertifikats, das von einem bestimmten Rechner
genutzt werden soll.
SSLCertificateKeyFile- Pfad zum privaten Schlüssel, welcher der in der vorherigen Direktive genannten
Datei entspricht.
SSLEngine- Diese Direktive kontrolliert, ob das SSL für einen bestimmten virtuellen Host/Server ‘angeschaltet’
ist oder nicht.
Mod_ssl stellt eine Reihe von Direktiven zur Verfügung, was Ihnen die Möglichkeit bietet, Ihren Server auf
die jeweiligen Erfordernisse angepasst zu konfigurieren. Eine vollständige Liste der von Mod_ssl bereitgestellten
SSLDirektiven ersehen Sie in der Mod_ssl-Dokumentation:
http://www.modssl.org/docs/2.2/ssl_reference.html
Um Apache für das SSL zu konfigurieren, müssen Sie ein Update Ihrer “httpd.conf”- Datei durchführen, damit
diese nach neuen Zertifikaten suchen kann. Öffnen Sie die “httpd.conf” Konfigurationsdatei und stellen Sie
sicher, dass Sie die Direktiven ”SSLCertificateFile” und “SSLCertificateKeyFile” mit den richtigen
Dateipfaden verknüpft haben.
Wenn Sie beispielsweise Ihr Zertifikat im Verzeichnis “/usr/local/ssl/certs/” und Ihren privaten Schlüssel im
Verzeichnis “/usr/local/ssl/private/” abgelegt haben, wird Ihnen in Ihrer “httpd.conf”-Datei folgendes angezeigt:
SSLCertificateFile: /usr/local/certs/www.mydomain.com.crt
SSLCertificateKeyFile: /usr/local/ssl/private/www.mydomain.com.key
Sie müssen ebenfalls sicherstellen, dass sowohl Ihr Apache-Server als auch jedwede installierten Firewalls
oder Router mit Port 443 verbunden sind. Sie müssen das SSL mit der Direktive “SSLEngine on” oder mit
der Direktive SSLEnable in ModSSL beziehungsweise in Apache-SSL “anschalten”.
TM
TM
8. Installation Ihres Zertifikats
Nach Zertifikatserteilung können Sie Ihr Zertifikat von der Status-Seite herunterladen, indem Sie auf die Taste
“Fetch Certificate” klicken. (Diese Taste wird nur einmal nach Erteilung des Zertifikats angezeigt.) Speichern
Sie es im entsprechenden Verzeichnis in Ihrer “httpd.conf”-Datei ab, um die Schlüssel- und Zertifikatverwaltung
zu erleichtern.
Aus Konsistenzgründen erscheint es empfehlenswert, das Zertifikat in einer Datei namens
“www.mydomain.com.crt” zu speichern. Das Zertifikat wird in der Datenbank von thawte auf unbestimmte
Zeit abgelegt und kann jederzeit heruntergeladen werden.
Wenn Sie Ihren Web-Server entsprechend konfiguriert haben, müssen Sie keine Änderungen an Ihrer
Konfigurationsdatei vornehmen. Sie können ganz einfach die echte (trusted) Zertifikatsdatei über das
Testzertifikat kopieren.
Nachdem Ihr Zertifikat erteilt worden ist können Sie die Apache Konfigurationsdatei öffnen und Ihr Zertifikat
installieren. Ebenso können Sie Ihre SSL-Umgebung konfigurieren.
Das Zertifikat wird ähnlich dem unten gezeigten Beispiel aussehen:
-----BEGIN CERTIFICATE----MIIDBTCCAm6gAwIBAgIDcxV2MA0GCSqGSIb3DQEBBAUAMIGHMQswCQYDVQQGEwJaQTEiMCAGA1UECBMZRk9
SIFRFU1RJTkcgUFVSUE9TRVMgT05MWTEdMBsGA1UEChMUVGhhd3RlIENlcnRpZmljYXRpb24xFzAVBgNVBAsTDlR
FU1QgVEVTVCBURVNUMRwwGgYDVQQDExNUaGF3dGUgVGVzdCBDQSBSb290MB4XDTAyMTEwNTemJhDUzMlo
XDTAyMTEyNjE0MDUzMlowgd8xFDASBgNVBAMTC3d3dy5jcmRiLmJlMRswGQYDVQQLHhIAQwBPAEwAVABAAarfJs
dQBTAFQxczBxBgNVBAoeagBDAGEAcAAgAEcAZQBtAGkAbgBpACAAVABlAGwAZQBjAG8AbQAgAE0BZq
BkAGkAYQAgACYAIABOAGUAdAB3AG8AcgBrAHMAIABCAGUAbABnAGkAdQBBkRpZWdlbTeCxMBUGA1UECBMOV
mxhYW1zIEJyYWJhbnQxCzAJBgNVBAYTAkJFMIGfMA0GCSqGsIb3DQEBAQUAA4GNADCBiQKBgQDaNm3HPzG6Rb
k5Am0HI6JFHoDQku2/YmVMGbZk5AHeR13QxIP7UVa08/k8qR3B7B0mfbxaNIxdwV9c7c1z4mZYQRfAeryoW4sU2jh1O
Hc4Cin+i9UarkHm8WnUnlcVZEnJrySdfLZNuxtbknXBNkca8rk6tnlbXodD3gEQJBMJtQIDAQABoyUwIzAT
-----END CERTIFICATE-----
Wenn Sie das Zertifikat mit OpenSSL aufrufen, benutzen Sie den folgenden Befehl:
“openssl x509 –text –noout –in www.mydomain.com.crt”
Das Zertifikat enthält die folgenden Angaben:
TM
TM
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 645099 (0x9d7eb)
Signature Algorithm: md5WithRSAEncryption
Issuer: C=ZA, ST=Western Cape, L=Cape Town, O=thawte Consulting cc,
OU=Certification Services Division, CN=thawte Server CA/Email=servercerts@
thawte.com
Validity
Not Before: Dec 11 12:34:19 2002 GMT
Not After : Dec 11 12:34:19 2003 GMT
Subject: C=US, ST=Texas, L=Dallas, O=Widgets Inc., OU=Widgets,
CN=www.widgets.com
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)
Modulus (1024 bit):
00:b5:89:6c:cb:bb:9c:56:32:5f:77:5d:3d:9c:9c:
81:41:3d:8a:37:bc:4d:10:26:03:8c:f4:27:07:74:
88:a5:3a:d5:32:82:ab:1b:42:12:2a:bf:65:ad:b8:
b3:c7:f1:b0:ea:66:94:5e:82:ca:55:6e:26:c4:7f:
b0:5b:e5:22:b1:39:12:fd:a0:0d:cd:ef:59:56:95:
d3:33:14:da:f6:b8:c1:f8:d7:c1:05:32:d7:2d:90:
83:e6:91:f0:70:b1:d9:88:29:06:6a:45:02:17:aa:
df:1d:4b:56:d8:8d:ff:02:fc:22:20:e2:be:63:e5:
4e:09:e1:9c:97:24:91:ef:b1
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Extended Key Usage:
TLS Web Server Authentication
X509v3 Basic Constraints: critical
CA:FALSE
Signature Algorithm: md5WithRSAEncryption
97:48:b9:78:ca:66:f5:33:b9:3b:62:c2:52:26:04:8d:3f:e9:
32:ec:c9:e4:a2:fa:a5:b0:f8:df:10:5b:11:8b:36:97:62:e3:
82:63:20:93:7b:84:08:03:de:9e:a1:37:e3:12:e5:03:87:33:
f5:74:7e:84:9e:bb:52:bb:e3:8a:c1:a8:68:87:ad:8a:a4:95:
0d:61:98:4e:cd:da:13:fe:8c:0c:87:d4:7f:e6:18:3e:36:a4:
d1:ad:23:13:07:fc:bf:8c:bd:8a:42:32:e3:22:af:1b:7c:fb:
5e:d3:1a:94:f9:24:3c:4b:bd:3e:e9:f2:c6:9c:56:e4:b6:e2:
1e:6d
TM
TM
Dieses Zertifikat ist mit dem privaten Schlüssel, den Sie vorab erzeugt haben, verbunden
(www.mydomain.com.key) und kann auch nur an diesen Schlüssel ‘angehängt’ werden. Falls Sie den privaten
Schlüssel, mit dem Ihr Zertifikat verbunden ist, verlieren sollten, wird Ihr Zertifikat unbrauchbar.
Als nächstes müssen Sie die SSLCertificateFile-Direktive in das Verzeichnis stellen, in dem diese Datei
gespeichert werden soll. Meist ist das dasselbe Verzeichnis wie für Ihre
“httpd.conf”-Datei, /etc/apache oder ähnlich:
SSLCertificateFile: /etc/apache/www.mydomain.com.crt
Sie müssen Apache ebenfalls anweisen, welche Schlüsseldatei für dieses Zertifikat benutzt werden soll.
Vergessen Sie daher nicht, die SSLCertificateKeyFile-Direktive mit dem privaten Schlüssel für dieses Zertifikat
zu verbinden:
SSLCertificateKeyFile: /etc/apache/www.mydomain.com.key
CAs (Certificate Authorities / Zertifizierungsstellen) signieren ihre Zertifikate mit einem
hochsicheren Root-Zertifikat, und jede beliebige Applikation, die ein Endbenutzer-Zertifikat überprüfen möchte,
muss dazu in der Lage sein, das Benutzer-Zertifikat mit dem Root-Zertifikat der CA gegenzuchecken. ModSSL
verwendet hierzu die SSLCACertificateFile, die bereits in ModSSL beinhaltet ist. Normalerweise sind die
Inhalte dieser Datei nicht anpassungsbedürftig.
SSLCACertificateFile: /etc/apache/ca –bundle.crt
Nachdem Sie nun alle Direktiven konfiguriert haben, sollte das SSL entsprechend funktionieren. Richtig?
Falsch. Da ist noch eine Direktive, die Sie sich näher anschauen müssen – die SSLEngine. Diese Direktive
hat 2 Argumente, “on” oder “off”. Sie möchten das SSL natürlich auf an haben:
SSLEngine on
Die obige Direktive kann in einem globalen Serverkontext oder innerhalb des <VirtualHost>- Containers
benutzt werden.
Wenn Sie das Zertifikat auf einem richtig konfigurierten virtuellen Host benutzen, sollte Ihre Konfiguration
etwa so aussehen:
<VirtualHost 192.168.1.22:443>
DocumentRoot /var/www/widgets
ServerName www.mydomain.com
ServerAdmin [email protected]
ErrorLog /etc/httpd/logs/error_log
TransferLog /etc/httpd/logs/access_log
SSLEngine on
SSLCertificateFile /etc/httpd/conf/ssl.crt/www.mydomain.com.crt
TM
TM
SSLCertificateKeyFile /etc/apache/www.mydomain.com.key
SSLCACertificateFile /etc/apache/ca_bundle.crt SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-uncleanshutdown </VirtualHost> Sie haben sicher gemerkt, dass im <VirtualHost>-Container ein bestimmter Port
genannt wird, nämlich Port 443. Es handelt sich hierbei um den Standard-SSL-Port, der so konfiguriert ist,
um die globale ‘Listen’-Direktive zu nutzen. ‘Listen 80’ wird standardmäßig in der “httpd.conf”-Datei konfiguriert.
Sie müssen jetzt lediglich ‘Listen 443’ in eine neue Zeile hinzufügen. Es ist empfehlenswert, alle ähnlichen
Direktiven in eine Gruppe zu fassen.
9. Sicherung von virtuellen Hosts
Wenn Sie über sichere virtuelle Hosts verfügen, dann benötigt jeder einzelne dieser Hosts eine eigene IP,
da SSL keine namensbasierten Hosts unterstützt.
SSL kann nur dann auf namensbasierten virtuellen Hosts konfiguriert werden, wenn diese virtuellen Hosts
verschiedene SSL-Ports verwenden.
Bitte beachten Sie, dass die oben gezeigte Konfiguration nur ein Basismodell ist. Sie können selbstverständlich
zahlreiche weitere SSL-Direktiven einbauen, mit denen Sie Ihre SSLUmgebung persönlich gestalten können.
Nach Installation des Zertifikats und nach richtiger SSL-Konfiguration müssen Sie den
gesamten Server, und nicht nur den Dämon, neu starten. Auf diese Weise wird sichergestellt, dass die
installationsbedingten Änderungen übernommen werden. Die Verzeichnisse, in denen die zum Start von
Apache notwendigen Skripten gespeichert sind, variieren je nach den verschiedenen Linux Verteilungen. Wir
gehen daher davon aus, dass ein Skript namens ‘apache’ in /etc/init.d/ abgelegt ist, das ein Skript in /usr/sbin/
namens ‘apachectl’ aufruft.
widget@mydomain-pc/etc/init.d/apache start
Sie sollten nun sicher auf Ihren Rechner zugreifen und die Zertifikeigenschaften aufrufen
können. Ob die SSL-Verbindung erfolgreich war erkennen Sie an einem goldenen
Vorhängeschloss, das in der unteren Symbolleiste Ihres Browsers erscheint. Durch Doppelklick auf dieses
Icon rufen Sie die Zertifikatangaben auf.
TM
TM
10. Nützliche URLs
Häufig auftretende Probleme mit Apache-SSL und Apache ModSSL werden in unseren
FAQs behandelt:
http://www.thawte.com/support/keygen/index.html
Die Anleitungen zur Schlüsselgenerierung für Apache-SSL finden Sie unter der folgenden URL:
http://www.thawte.com/support/keygen/index.html
Die Anleitungen zur Schlüsselgenerierung für Apache ModSSL finden Sie unter der folgenden URL:
http://www.thawte.com/support/keygen/index.html
Der Anmeldevorgang für Web-Server-Zertifikate und 128-bit SuperCerts startet hier:
https://www.thawte.com/buy
Anweisungen zur Generierung eines Testzertifikats:
http://www.thawte.com/ucgi/gothawte.cgi?a=46840165337049000
Hier finden Sie ein Download für das thawte Test CA Root-Zertifikat:
https://www.thawte.com/roots/index.html
11. Welche Rolle übernimmt thawte?
thawte Technologies ist eine CA (Certification Authority / Zertifizierungsstelle), die SSL-Web-Server-Zertifikate
an Unternehmen und Einzelpersonen weltweit erteilt. thawte stellt Überprüfungen darüber an, ob es sich bei
dem, das Zertifikat beantragende, Unternehmen um eine eingetragene Firma handelt und ob die Person, die
das Zertifikat für das Unternehmen beantragt hat, tatsächlich dazu berechtigt ist.
thawte überprüft ebenfalls, ob das Unternehmen gleichzeitig Eigentümer der entsprechenden Domain ist.
Die digitalen Zertifikate von thawte sind vollkommen kompatibel mit Apache sowie mit der jeweils aktuellsten
Software von Microsoft und Netscape. Auf diese Weise können Sie beim Kauf eines digitalen Zertifikats von
thawte sicher sein, das Vertrauen Ihrer Kunden sowohl in Ihr System als auch in Ihre Integrität zu gewinnen.
Ihre Kunden können sich darauf verlassen, sichere Online-Geschäfte zu führen.
TM
TM
12. Der Authentifizierungswert
Informationen stellen einen entscheidenden Wert für Ihr Unternehmen dar. Um die Unversehrtheit und
Sicherheit Ihrer Informationen zu garantieren, ist es zunächst wichtig festzustellen, mit wem Sie in Kontakt
treten, und ob die Daten, die Sie erhalten, auch vertrauenswürdig sind. Authentifizierung kann dazu beitragen,
eine Vertrauensbasis zwischen den, in einer Unmenge von geschäftlichen Transaktionen voneinander
abhängigen, Kommunikationspartnern zu bilden, und zwar durch die Einbindung von eindeutigen
Sicherheitsaspekten:
Website-Manipulation:
Die geringen Kosten von Website Design und die Einfachheit, Webseiten kinderleicht zukopieren,
schafft eine nahrhafte Grundlage für illegale Websites, die, so soll glaubhaft gemacht werden, von
seriösen Firmen veröffentlicht werden. Tatsache ist jedoch, dass Trickbetrüger auf illegale Art
Kreditkartennummern erlangen, indem Sie professionell erscheinende Storefronts errichten, die
rechtmäßig begründete Geschäfte nachahmen.
Unbefugte Handlung:
Ein Konkurrenzunternehmen oder ein verstimmter Kunde kann Veränderungen an Ihrer Website
vornehmen, so dass diese nicht richtig funktioniert oder potentielle Neukunden abblockt.
Unbefugte Weitergabe von Informationen:
Wenn Geschäftsinformationen “ahnungslos” weitergegeben werden, können Hacker die
Datenübertragungen abfangen, um so an wichtige Informationen von Ihren Kunden zu gelangen.
Datenänderung:
Der Inhalt eines Geschäfts kann abgefangen und während der Datenübertragung entweder böswillig
oder unabsichtlich verändert werden. “Ahnungslos” gesendete Benutzernamen, Kreditkartennummern
und Währungsbeträge können problemlos abgeändert werden.
13. Wenden Sie sich an thawte
Wenn Sie noch Fragen in Bezug auf den Inhalt dieser Gebrauchsanleitung oder auf Produkte und Service
von thawte haben, wenden Sie sich bitte an einen unserer Verkaufsberater :
E-Mail:
Telefon:
Fax:
[email protected]
+27 21 937 8902
+27 21 937 8967
TM
TM
14. Terminologieglossar
Apache
Der Apache Web-Server, allgemein kurz Apache genannt, ist ein Projekt der Apache Software Foundation
und wurde mit dem Ziel entwickelt, einen sicheren, effizienten und erweiterbaren Web-Server auf den Markt
zu bringen, der HTTP-Dienste bietet, die mit den aktuellen HTTP-Standards kompatibel sind.
jakarta.apache.org
Asymmetrische Kryptographie
Ein kryptographisches Verfahren mit Hilfe eines kombinierten öffentlichen und privaten Schlüsselbunds, um
Nachrichten zu ver- und entschlüsseln. Um eine verschlüsselte Nachricht zu senden, verschlüsselt der
Benutzer sie mit dem öffentlichen Schlüssel des Empfängers. Bei Empfang wird die Nachricht anhand des
privaten Schlüssels des Empfängers wieder entschlüsselt.
Die Benutzung verschiedener Schlüssel zur Ausführung von Ver- und Entschlüsselungsfunktionen wird als
Falltür- oder Einweg-Funktion bezeichnet. Dies bedeutet, dass der öffentliche Schlüssel zwar zur Verschlüsselung
der Nachricht verwendet wird, dass er aber später nicht zur Entschlüsselung derselben Nachricht benutzt
werden kann. Ohne den privaten Schlüssel ist es praktisch unmöglich, diese Funktion umzukehren, wenn
hierzu moderne und hochsichere kryptographische Algorithmen benutzt wurden.
Certification Authority / Zertifizierungsstelle
Eine CA (Certificate Authority) ist ein Unternehmen (wie z.B. thawte), das Sicherheitszeugnisse und öffentliche
Schlüssel zum Zweck der Nachrichtenverschlüsselung erteilt und verwaltet.
Certificate Signing Request (CSR)
Ein CSR ist ein öffentlicher Schlüssel, der auf Ihrem Server generiert wird und der die computerspezifischen
Informationen Ihres Web-Servers sowie Ihres Unternehmens bei Beantragung eines Zertifikats von thawte
bestätigt.
Mod_ssl
Da es sich bei Apache um eine Modulapplikation handelt, besteht eine seiner herausragendsten Eigenschaften
in seiner extremen Anpassbarkeit an erweiternde Drittmodule. Eines der beliebtesten (und im E-Commerce
bereits nicht mehr weg zu denkenden) für Apache entwickelten Module ist Mod_ssl. Mod_ssl ist ein Modul,
dass SSL-Support für Apache bietet. Ohne Mod_ssl könnte Apache keine SSL-Anmeldungen bedienen, da
er nicht wüsste, was er mit ihnen anfangen sollte.
OpenSSL
OpenSSL ist ein kryptographisches Toolkit, das Secure Sockets Layer (SSL v2/v3) und Transport Layer
Security (TLS v1) Netzwerk-Protokolle und hierzu erforderliche verwandte kryptographische Standards
beinhaltet.
www.openssl.org
TM
TM
Mod_ssl
Da es sich bei Apache um eine Modulapplikation handelt, besteht eine seiner herausragendsten Eigenschaften
in seiner extremen Anpassbarkeit an erweiternde Drittmodule. Eines der beliebtesten (und im E-Commerce
bereits nicht mehr weg zu denkenden) für Apache entwickelten Module ist Mod_ssl. Mod_ssl ist ein Modul,
dass SSL-Support für Apache bietet. Ohne Mod_ssl könnte Apache keine SSL-Anmeldungen bedienen, da
er nicht wüsste, was er mit ihnen anfangen sollte.
OpenSSL
OpenSSL ist ein kryptographisches Toolkit, das Secure Sockets Layer (SSL v2/v3) und Transport Layer
Security (TLS v1) Netzwerk-Protokolle und hierzu erforderliche verwandte kryptographische Standards
beinhaltet.
www.openssl.org
Grundsätzlich stellt OpenSSL stellt die Plattform, auf der Mod_ssl läuft, bereit und muss auf einem Rechner
installiert werden, auf dem Apache + Mod_ssl benutzt werden sollen. Ohne OpenSSL kann Mod_ssl nicht
eingesetzt werden. Alle Dienstprogramme/Applikationen, die Verschlüsselungsfunktionen erfordern, greifen
auf die kryptographischen Bibliotheken von OpenSSL zu.
Privater Schlüssel
Ein privater Schlüssel ist ein Nummerncode mit dem verschlüsselte Nachrichten wieder entschlüsselt werden,
die vorab mit einem eindeutigen, ihm entsprechenden öffentlichen Schlüssel verschlüsselt wurden. Die
Unversehrtheit der Verschlüsselung hängt stets vom privaten Schlüssel ab, der geheim gehalten werden soll.
Öffentlicher Schlüssel
Ein öffentlicher Schlüssel ist ein Nummerncode, der die Verschlüsselung von an den Inhaber des entsprechenden
eindeutigen privaten Schlüssels gesendeten Nachrichten ermöglicht. Der öffentliche Schlüssel kann frei in
Umlauf gesetzt werden, ohne dabei die Verschlüsselung zu gefährden. Mit diesem Schlüssel werden die
Effizienz und der praktische Umgang verschlüsselter Kommunikationen erhöht.
Symmetrische Kryptographie
Ein kryptographisches Verfahren, wobei ein und derselbe Schlüssel für sowohl die Ver- als auch die
Entschlüsselung verwendet wird. Der große Nachteil dieses Verfahrens liegt jedoch im Sicherheitsrisiko, das
bei der Verteilung des Schlüssels besteht, da die Schlüsseleigenschaften zwar sowohl dem Sender als auch
dem Empfänger mitgeteilt werden müssen, jedoch nicht in die Hände Dritter fallen sollen.