- 1 Abschnitt
- 13 Lektionen
- Um den Kurs in deinem Profil zu hinterlegen klicke oben auf Starten
- Zertifikate14
- 1.1Einführung in Zertifikate
- 1.2Grundlagen der Public Key Infrastructure (PKI)
- 1.3Zertifikatsarten
- 1.4Zertifikatsformate und Container
- 1.5Zertifikatsanforderung und Ausstellung
- 1.6Zertifikatslebenszyklus
- 1.7Aufbau und Inhalte eines digitalen Zertifikats
- 1.8Zertifikatskette und Vertrauenskette (Chain of Trust)
- 1.9Zertifikatsprüfung, Gültigkeit und Sperrung
- 1.10Ausstellung und Beantragung von Zertifikaten
- 1.11Zertifikate im TLS-Handshake
- 1.12Aufgaben
- 1.13Lösungen
- 1.14TestUm den Kurs in deinem Profil zu hinterlegen klicke oben auf Starten12 Fragen
Lösungen
Aufgabe 1: Grundlagen
Digitale Zertifikate dienen der eindeutigen Zuordnung von Identitäten im digitalen Raum.
Sie belegen, dass ein öffentlicher Schlüssel tatsächlich zu einer bestimmten Person, Organisation oder Domain gehört.
Der öffentliche Schlüssel wird im Zertifikat veröffentlicht, der zugehörige private Schlüssel bleibt geheim.
Durch diese Kombination werden Vertraulichkeit, Integrität und Authentizität erreicht.
Zertifikate sind somit das Herzstück sicherer Kommunikation, etwa bei HTTPS, VPN oder E-Mail-Verschlüsselung.
Aufgabe 2: Zertifikatsaufbau
Ein X.509-Zertifikat enthält zentrale Felder wie Subject (Inhaber), Issuer (Aussteller), Gültigkeitszeitraum, Public Key, Seriennummer und Signaturalgorithmus.
Am Ende steht die digitale Signatur der ausstellenden CA, die bestätigt, dass der Inhalt unverändert ist.
Der Fingerprint ist eine Hash-Prüfsumme über das gesamte Zertifikat und dient zur schnellen Echtheitskontrolle.
Aufgabe 3: Zertifikatslebenszyklus
Der Lebenszyklus beginnt mit der Ausstellung durch eine CA.
Während der Gültigkeitsdauer kann das Zertifikat erneuert, ersetzt oder gesperrt werden.
Nach Ablauf verliert es automatisch seine Gültigkeit.
Widerrufe erfolgen über CRL oder OCSP, etwa bei kompromittierten Schlüsseln.
Die Verwendung abgelaufener Zertifikate führt zu Warnungen oder blockierten Verbindungen, da die Vertrauensbasis entfällt.
Aufgabe 4: Zertifikatskette und Vertrauen
Die Vertrauenskette besteht aus einer Root-CA, optionalen Intermediate-CAs und dem End-Entity-Zertifikat.
Die Root-CA ist selbstsigniert und liegt im Truststore des Clients.
Intermediate-Zertifikate signieren End-Zertifikate, um die Sicherheit zu erhöhen.
So kann eine kompromittierte Zwischen-CA gesperrt werden, ohne die Root zu ersetzen.
Die Root-CA signiert in der Praxis keine Server-Zertifikate direkt, um ihre Integrität langfristig zu schützen.
Aufgabe 5: Zertifikatsprüfung
Ein Client überprüft die Signatur jedes Zertifikats bis zur Root-CA.
Er kontrolliert, ob das Zertifikat zeitlich gültig ist, ob die Domain mit dem Common Name oder SAN übereinstimmt und ob es widerrufen wurde.
Nur wenn alle Bedingungen erfüllt sind und die Root im Truststore enthalten ist, gilt das Zertifikat als vertrauenswürdig.
Aufgabe 6: Formate und Container
PEM ist ein textbasiertes Format mit Base64-Kodierung und typischen „—–BEGIN CERTIFICATE—–“-Blöcken.
DER ist die binäre Variante desselben Inhalts.
CRT und CER sind Dateiendungen, die meist auf PEM oder DER hinweisen.
PFX bzw. PKCS#12 enthält sowohl öffentliche als auch private Schlüssel in einer verschlüsselten Containerdatei und eignet sich zum sicheren Export kompletter Zertifikatsketten.
Aufgabe 7: Zertifikatsanforderung und Ausstellung
Eine Certificate Signing Request (CSR) enthält den öffentlichen Schlüssel sowie Metadaten wie Common Name, Organisation und Land.
Sie wird vom Antragsteller mit dessen privatem Schlüssel signiert und an die CA übermittelt.
Die CA prüft die Angaben – bei Domain Validation durch DNS oder HTTP, bei Organization Validation durch Handelsregister-Nachweise.
Nach erfolgreicher Prüfung signiert die CA das Zertifikat und sendet es zurück.
Aufgabe 8: TLS-Handshake und praktische Anwendung
Im TLS-Handshake sendet der Client ein ClientHello mit seinen unterstützten Cipher Suites.
Der Server antwortet mit ServerHello und seinem Zertifikat.
Der Client überprüft das Zertifikat, validiert die Vertrauenskette und erstellt einen Sitzungsschlüssel, der anschließend verschlüsselt übertragen wird.
Erst wenn die Prüfung erfolgreich war, wird die verschlüsselte Kommunikation gestartet.
Lehnt der Client das Zertifikat ab, wird keine sichere Verbindung aufgebaut.
Aufgabe 9: Typische Probleme und Fehlerquellen
Die Meldung „Zertifikat nicht vertrauenswürdig“ kann durch abgelaufene Zertifikate, fehlende Zwischenzertifikate, fehlerhafte CN/SAN-Angaben oder eine nicht vertrauenswürdige CA entstehen.
Zur Analyse prüft man die Zertifikatskette, Gültigkeitsdaten, Hostnamen und mögliche Sperrungen.
Ein abgelaufenes Zertifikat ist zeitlich ungültig, während eine ungültige Kette strukturell fehlerhaft ist, z. B. durch fehlende oder falsch signierte Intermediate-Zertifikate.
Aufgabe 10: Bonusaufgabe – Praxis
Ein selbstsigniertes Zertifikat kann mit OpenSSL erstellt werden:openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365
Der Befehl erzeugt einen privaten Schlüssel und ein selbstsigniertes Zertifikat.
Mit openssl x509 -in cert.pem -text lassen sich alle Details anzeigen, darunter Aussteller, Subject, Gültigkeit, Fingerprint und verwendeter Algorithmus.
Das Zertifikat zeigt in Tests, wie PKI-Strukturen und Signaturen funktionieren, wird aber von Browsern nicht als vertrauenswürdig eingestuft.
openssl genpkey -algorithm RSA -out privater_schluessel.key
CSR erstellen:
openssl req -new -key privater_schluessel.key -out zertifikat.csr
- Bedeutung der Felder:
- Country Name: Ländercode (z.B. DE für Deutschland).
- State or Province Name: Bundesland oder Provinz.
- Locality Name: Stadt.
- Organization Name: Name des Unternehmens.
- Organizational Unit Name: Abteilung im Unternehmen.
- Common Name: Vollqualifizierter Domainname (FQDN) der Website.
- Email Address: E-Mail-Adresse des Administrators.
Aufgabe 5: Implementierung von HSTS
Antwort: HTTP Strict Transport Security (HSTS) ist ein Sicherheitsmechanismus, der sicherstellt, dass der Browser nur über HTTPS mit der Website kommuniziert, um Downgrade-Angriffe zu verhindern.
Schritte zur Implementierung von HSTS:
Für Apache:
<VirtualHost *:443>
ServerAdmin admin@example.com
ServerName www.example.com
DocumentRoot /var/www/html
SSLEngine on
SSLCertificateFile /path/to/zertifikat.crt
SSLCertificateKeyFile /path/to/privater_schluessel.key
SSLCertificateChainFile /path/to/cacert.pem
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
sudo systemctl restart apache2
Aufgabe 6: Auswahl der richtigen Zertifikate
Antwort: Kriterien für die Auswahl des richtigen Zertifikats:
- Sicherheitsanforderungen: Art der benötigten Sicherheitsfeatures (DV, OV, EV).
- Anwendungsbereich: Welche Domains/Subdomains sollen gesichert werden (Wildcard, SAN)?
- Vertrauenswürdigkeit: Auswahl einer bekannten und vertrauenswürdigen CA.
- Budget: Verfügbarkeit der Mittel für die Zertifikate (kostenlose Optionen wie Let’s Encrypt oder Premium-Optionen wie DigiCert).
Aufgabe 7: Sicherheitsmaßnahmen bei der Zertifikatsverwaltung
Antwort: Maßnahmen zur Sicherstellung der Sicherheit und Gültigkeit von Zertifikaten:
- Regelmäßige Erneuerung: Überwachung der Gültigkeit und rechtzeitige Erneuerung der Zertifikate.
- Automatisierung: Nutzung von Tools wie Certbot zur Automatisierung der Erneuerung von Zertifikaten.
- Implementierung von HSTS: Erzwingung der Nutzung von HTTPS zur Vermeidung von Downgrade-Angriffen.
Aufgabe 8: Anbieter für Zertifikate
Antwort:
| Anbieter | Kosten | Vertrauenswürdigkeit | Support | Vorteile | Nachteile |
|---|---|---|---|---|---|
| Let’s Encrypt | Kostenlos | Hoch | Begrenzter Support | Kostenfrei, automatische Erneuerung | Begrenzte Unterstützung |
| DigiCert | Hoch | Sehr hoch | Premium-Support | Schnelle Validierung, hoher Support | Hohe Kosten |
| GlobalSign | Mittel bis hoch | Sehr hoch | Umfangreicher Support | Starke Sicherheitsfunktionen | Höhere Kosten als Let’s Encrypt |
Aufgabe 9: Überwachung und Erneuerung von Zertifikaten
Antwort: Die regelmäßige Überwachung und Erneuerung von Zertifikaten ist wichtig, um sicherzustellen, dass die Zertifikate nicht ablaufen und dadurch die Sicherheit der Kommunikation gefährdet wird. Tools wie Nagios, Zabbix oder spezialisierte SSL-Überwachungstools können dabei helfen, die Gültigkeit der Zertifikate zu überwachen und rechtzeitig Benachrichtigungen für ablaufende Zertifikate zu konfigurieren.
Aufgabe 10: Zertifikatskonvertierung
Antwort: Es kann notwendig sein, Zertifikate von einem Format in ein anderes zu konvertieren, um sie mit verschiedenen Anwendungen und Plattformen kompatibel zu machen.
Beispiel: Konvertierung eines PEM-Zertifikats in ein DER-Zertifikat mit OpenSSL:
openssl x509 -outform der -in zertifikat.pem -out zertifikat.der
