Auf dieser Seite wird beschrieben, wie Sie einen vorinstallierten Schlüssel (Pre-Shared Key, PSK) generieren und damit ein Authentifizierungs-Secret erstellen.
Ein PSK ist ein gemeinsames Secret-Passwort, das zur Authentifizierung und Verschlüsselung der Kommunikation zwischen zwei Geräten verwendet wird. Es handelt sich um eine Form der symmetrischen Verschlüsselung.
Hinweise
Zum Erstellen eines Secrets benötigen Sie die erforderlichen Identitäts- und Zugriffsrollen:
- VPN-Administrator: Hat Lese- und Schreibberechtigungen für alle VPN-bezogenen Ressourcen. Bitten Sie Ihren IAM-Administrator der Organisation, Ihnen die Rolle „VPN-Administrator“ (
vpn-admin
) zuzuweisen. - VPN-Betrachter: Hat Leseberechtigungen für alle VPN-bezogenen Ressourcen. Bitten Sie Ihren IAM-Administrator der Organisation, Ihnen die Rolle „VPN Viewer“ (
vpn-viewer
) zuzuweisen. - Weitere Informationen finden Sie unter Rollendefinitionen.
PSK generieren
Generieren Sie mit einer der folgenden Methoden einen starken vorinstallierten Schlüssel mit 32 Zeichen.
OpenSSL
Weitere Informationen zu OpenSSL finden Sie unter https://www.openssl.org/. Führen Sie auf einem Linux- oder macOS-System den folgenden OpenSSL-Befehl aus:
openssl rand -base64 24
/dev/urandom
Auf einem Linux- oder macOS-System können Sie auch /dev/urandom
als Pseudozufallsquelle zum Erzeugen eines vorinstallierten Schlüssels verwenden:
Unter Linux oder macOS senden Sie die Zufallseingabe an
base64
:head -c 24 /dev/urandom | base64
Übergeben Sie die Zufallseingabe über eine Hash-Funktion wie
sha256
:Unter Linux:
head -c 4096 /dev/urandom | sha256sum | cut -b1-32
Unter macOS:
head -c 4096 /dev/urandom | openssl sha256 | cut -b1-32
JavaScript
Sie können den vorinstallierten Schlüssel mithilfe von JavaScript über die W3C Web Cryptography API direkt in einem Dokument erzeugen. Weitere Informationen finden Sie unter https://www.w3.org/TR/WebCryptoAPI/#Crypto-method-getRandomValues.
Diese API verwendet die Crypto.getRandomValues()
-Methode, die hier beschrieben wird: https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues. Mit dieser Methode lassen sich vorinstallierte Schlüssel sicher kryptografisch generieren.
Der folgende Code erstellt ein Array von 24 nach dem Zufallsprinzip generierten Byte. Diese werden anschließend mit base64 codiert, um eine zufällige Zeichenfolge aus 32 Zeichen zu erstellen:
var a = new Uint8Array(24);
window.crypto.getRandomValues(a);
console.log(btoa(String.fromCharCode.apply(null, a)));
Secret erstellen
Erstellen Sie ein Secret mit einem PSK-Schlüssel im Plattform-Namespace:
kubectl --kubeconfig MANAGEMENT_API_SERVER create secret -n platform generic PSK_NAME --from-literal=psk=PSK
Ersetzen Sie Folgendes:
MANAGEMENT_API_SERVER
: Der kubeconfig-Pfad des zonalen API-Servers. Wenn Sie noch keine kubeconfig-Datei für den API-Server in Ihrer Zielzone generiert haben, finden Sie weitere Informationen unter Anmelden.PSK_NAME
: Der Name des PSK-Schlüssels.PSK
: Der Wert des PSK-Schlüssels.