Eine Zertifikatsanfrage landet in Ihrem Postfach: Ein Dienstleister braucht Ihr Client-Zertifikat, ein neuer Load Balancer braucht das Wildcard-Zertifikat, ein Kollege braucht das Signaturzertifikat, um ein Release zu bauen. Die angefragte Datei kann harmlos sein. Sie kann aber auch den privaten Schlüssel enthalten, mit dem sich jeder als Ihr Dienst ausgeben kann, und oft stecken beide im selben Paket.
Um ein privates Zertifikat sicher über einen Link zu teilen, klären Sie zuerst, welche Hälfte wirklich gebraucht wird. Verpacken Sie den privaten Schlüssel so, dass er ohne Passwort nutzlos ist, senden Sie die Datei über einen Einmal-Link, der nach einem Download gelöscht wird, und schicken Sie das Passwort auf anderem Weg. Dieser Leitfaden geht jeden Schritt mit den passenden Befehlen durch.
Das Zertifikat ist öffentlich. Der Schlüssel nicht.
Ein Zertifikat enthält einen öffentlichen Schlüssel, den Inhaber, für den es ausgestellt wurde, den Aussteller und die Gültigkeitsdaten. Es ist dafür gedacht, verteilt zu werden: Jeder Browser, der sich mit Ihrer Website verbindet, erhält es. Der private Schlüssel ist das separate Geheimnis, das beweist, dass das Zertifikat Ihnen gehört. Wer ihn besitzt, kann Datenverkehr entschlüsseln, der für Sie bestimmt ist, in Ihrem Namen signieren oder einen Server aufsetzen, der sich als Sie ausgibt.
Die erste Frage lautet also, ob der Empfänger den Schlüssel überhaupt braucht.
| Der Empfänger möchte | Er braucht | Sensibel? |
|---|---|---|
| Ihrem Dienst vertrauen oder eine Signatur prüfen | Das Zertifikat (und eventuell die CA-Kette) | Nein |
| TLS auf einem eigenen Server oder Gerät einrichten | Zertifikat, Kette und privaten Schlüssel | Ja |
| Code oder Dokumente im Namen Ihrer Organisation signieren | Zertifikat und privaten Schlüssel | Ja, hochgradig |
| Sich mit einem Client-Zertifikat an einem System anmelden | Zertifikat und privaten Schlüssel | Ja |
Trifft die erste Zeile zu, senden Sie die .crt- oder .cer-Datei auf beliebigem Weg und hören hier auf zu lesen. Alles Weitere gilt für die Zeilen, in denen der Schlüssel den Ort wechseln muss.
Prüfen Sie den Inhalt der Datei vor dem Senden
Dateiendungen täuschen. Eine .pem kann ein Zertifikat, einen Schlüssel oder beides enthalten. Eine .pfx oder .p12 bündelt meist Zertifikat, Kette und Schlüssel hinter einem Passwort. Prüfen Sie vor dem Senden:
# what is in this PEM?
openssl x509 -in cert.pem -noout -subject -issuer -dates
grep -c "PRIVATE KEY" cert.pem # 0 means no key inside
# what is in this PFX? (prompts for the password)
openssl pkcs12 -in bundle.pfx -info -noout
Prüfen Sie, ob der Inhaber dem entspricht, was der Empfänger angefragt hat, und ob das Ablaufdatum in der Zukunft liegt. Das falsche Zertifikat zu senden, kommt häufig vor. Das falsche Zertifikat samt Schlüssel zu senden, ist ein Sicherheitsvorfall.
Den Schlüssel so verpacken, dass er allein nutzlos ist
Muss der Schlüssel verschickt werden, dann nie ungeschützt. Bringen Sie ihn in ein Format, das mit einem Passwort verschlüsselt ist, das Sie separat senden.
# bundle certificate, chain and key into a password-protected PFX
openssl pkcs12 -export -out service.pfx \
-inkey service.key -in service.crt -certfile chain.crt
# or encrypt a PEM key on its own
openssl pkey -in service.key -aes-256-cbc -out service.enc.key
Verwenden Sie ein langes Passwort aus einem Passwortmanager. Das Passwort ist der zweite Faktor: Wer an die Datei kommt, kann sie trotzdem nicht nutzen, und wer an das Passwort kommt, hat nichts, worauf er es anwenden kann.
Die Datei über einen sicheren Einmal-Link senden
Der Link ist der Zustellschritt. Ziel ist, dass danach in keiner Nachricht eine Kopie der Datei übrig bleibt.
- Prüfen Sie den Empfänger anhand einer Quelle, der Sie bereits vertrauen: das Ticket, der hinterlegte Kontakt beim Dienstleister, ein Anruf. Eine Zertifikatsanfrage von einer unerwarteten Adresse verdient einen Anruf, keine Antwort per E-Mail.
- Erstellen Sie einen Secret-Link mit der Datei als Anhang. Öffnen Sie in einem angemeldeten LinkPilot-Konto „Secret Links“, wählen Sie „New“ und hängen Sie die PFX oder das verschlüsselte PEM an. Dateien sind auf je 9 MB begrenzt, das ist Tausende Male mehr als jedes Schlüsselpaket. Der Anhang wird vor dem Hochladen in Ihrem Browser verschlüsselt und beim ersten Download gelöscht.
- Stellen Sie den Ablauf auf das tatsächliche Zeitfenster ein. Eine Stunde, wenn der Empfänger schon wartet, 24 Stunden über Zeitzonen hinweg. Der einmalige Download ist die wichtigste Kontrolle. Der Ablauf ist die Absicherung für einen Link, den niemand öffnet.
- Setzen Sie das Aufruflimit auf eins. Brauchen zwei Personen aus dem Team das Paket, bekommt jeder einen eigenen Link.
- Fügen Sie in einem Pro-Konto eine Passphrase zum Link hinzu, wenn er über einen Kanal geht, den andere einsehen können.
- Senden Sie den Link mit einer Zeile Kontext: welches Zertifikat, welches System, wann er abläuft.
- Senden Sie das Dateipasswort über einen anderen Kanal. Per SMS, per Anruf oder als zweiten Secret-Link auf einem anderen Weg. Niemals in derselben Nachricht wie den Dateilink und niemals im Dateinamen.
Ist der Schlüssel kurzer PEM-Text, können Sie ihn auch direkt in das kostenlose Secret-Link-Tool einfügen, statt eine Datei anzuhängen. Der Text wird ebenso in Ihrem Browser verschlüsselt und beim ersten Öffnen gelöscht.
Sagen Sie dem Empfänger, was er damit tun soll
Senden Sie die Installationshinweise mit der Kontextnachricht, nicht mit dem Passwort:
- Welche Datei kommt, in welchem Format und auf welches System sie gehört.
- Wo sie gespeichert wird: im Zertifikatsverzeichnis des Servers mit Rechten nur für das Dienstkonto oder im Zertifikatsspeicher des Betriebssystems. Nicht unter Downloads, nicht auf einem geteilten Laufwerk.
- Die heruntergeladene Kopie löschen, sobald sie importiert ist, und nie in ein Repository committen.
- Den Empfang bestätigen anhand von Dateiname und Fingerabdruck, niemals durch Zurücksenden der Datei:
openssl x509 -in service.crt -noout -fingerprint -sha256
Danach
Prüfen Sie, ob der Link als „revealed“ angezeigt wird und der Empfänger bestätigt, dass der Fingerabdruck übereinstimmt. Pro-Konten sehen im Audit-Verlauf den genauen Zeitpunkt des Downloads. Wurde der Link geöffnet, bevor der Empfänger dazu kam, oder ging die Datei an die falsche Adresse, warten Sie nicht auf Hinweise auf Missbrauch: Lassen Sie das Zertifikat von der ausstellenden CA widerrufen, erzeugen Sie ein neues Schlüsselpaar, lassen Sie das Zertifikat neu ausstellen und ersetzen Sie es überall, wo es installiert ist.
Halten Sie fest, wer welches Zertifikat wann erhalten hat. Bewahren Sie diesen Nachweis auf. Die Datei selbst sollte auf den Systemen liegen, die sie brauchen, und nirgendwo dazwischen.
