Hinweis:
- Dieses Tutorial erfordert Zugriff auf Oracle Cloud. Informationen zum Registrieren eines kostenlosen Accounts finden Sie unter Erste Schritte mit Oracle Cloud Infrastructure Free Tier.
- Es verwendet Beispielwerte für Oracle Cloud Infrastructure-Zugangsdaten, -Mandanten und -Compartments. Wenn Sie Ihre Übung abgeschlossen haben, ersetzen Sie diese Werte durch spezifische Werte für Ihre Cloud-Umgebung.
SSH-Schlüssel für Oracle Cloud VMware Solution-Hosts ESXi ersetzen
Einführung
Oracle Cloud VMware Solution bietet eine vom Kunden verwaltete, native VMware-basierte Cloud-Umgebung mit vollständiger Kontrolle über vertraute VMware-Tools. Wenn die SSH-Schlüssel für den Zugriff auf die ESXi-Hosts jedoch verloren gehen, benötigen Sie eine alternative Methode, um den Zugriff wiederherzustellen. In diesem Tutorial werden die Aufgaben beschrieben, die beim Aktivieren der kennwortbasierten Anmeldung beim ESXi-Host und beim Ersetzen der SSH-Schlüssel erforderlich sind.
SSH-Zugriff auf Oracle Cloud VMware Solution-(OCVS-)SDDC-Compute-Instanzen und ESXi-Hosts wird in der Regel mit einem Private Key erreicht, der dem beim Provisioning bereitgestellten Public Key entspricht. Wenn der private SSH-Schlüssel jedoch verloren geht oder nicht verfügbar ist, wird der direkte SSH-Zugriff auf den ESXi-Host unmöglich. In diesen Fällen besteht die Workaround-Lösung darin, auf die Direct Console User Interface (DCUI) des ESXi-Hosts zuzugreifen, die kennwortbasierte Anmeldung zu aktivieren und dann mit SSH auf den ESXi-Host den Public Key im Abschnitt mit autorisierten Schlüsseln zu ersetzen. Nachdem geprüft wurde, ob der neue Public Key wie erwartet funktioniert, können Sie die kennwortbasierte Anmeldung aus Sicherheitsgründen deaktivieren.
Zielsetzung
- Ersetzen Sie verlorene SSH-Schlüssel für Oracle Cloud VMware Solution-Hosts ESXi, indem Sie die kennwortbasierte Anmeldung vorübergehend aktivieren.
Voraussetzungen
-
Erstellen Sie ein neues SSH-Schlüsselpaar (Public Key und Private Key) für Ihre ESXi-Hosts, und speichern Sie es gemäß Ihren Anforderungen sicher.
-
Konfigurieren Sie die erforderlichen Berechtigungen für den Zugriff auf das Oracle Cloud VMware Solution-SDDC.
-
Konfigurieren Sie die entsprechenden Berechtigungen für die Verwaltung von Compute-Instanzen, um Instanzkonsolenverbindungen zu erstellen.
-
Installieren Sie PuTTY oder plink.exe (eine Befehlszeilenschnittstelle zum PuTTY-Backend).
-
Installieren Sie den VNC-Viewer.
Aufgabe 1: Konsolenverbindung zum Host ESXi erstellen
-
Öffnen Sie das Navigationsmenü der Oracle Cloud-Konsole, klicken Sie auf Compute, und klicken Sie dann auf Instanzen.
-
Wählen Sie den ersten ESXi-Host des Oracle Cloud VMware Solution-SDDC aus.
-
Klicken Sie auf Konsolenverbindung.
-
Klicken Sie auf Lokale Verbindung erstellen.
-
Generieren Sie ein SSH-Schlüsselpaar, oder laden Sie Ihren eigenen Public Key für die Konsolenverbindung hoch. In diesem Beispiel erstellen wir ein neues Schlüsselpaar.
-
Klicken Sie auf Konsolenverbindung erstellen, und warten Sie, bis sich der Status der Verbindung in Aktiv ändert.
Aufgabe 2: Auf Konsolenverbindung oder DCUI des ESXi-Hosts zugreifen
Gehen Sie folgendermaßen vor, nachdem die Konsolenverbindung in den Status "Aktiv" geändert wurde.
-
Klicken Sie auf das Kebab-Symbol rechts neben der Verbindung und dann auf Copy VNC Connection for Windows.
Hinweis: Wenn Sie einen Linux/Mac-Computer verwenden, führen Sie die entsprechenden Schritte aus.
-
Fügen Sie den kopierten Befehl in einen Texteditor ein.
Start-Job { Echo N | plink.exe -i $env:homedrive$env:homepath\oci\console.ppk -N -ssh -P 443 -l ocid1.instanceconsoleconnection.oc1.ap-melbourne-1.anwwkljxyzxyzxyzxyzhatrpp5gdhi75lunwazur6vlkost37m2rxa -L 5905:ocid1.instance.oc1.ap-melbourne-1.anwwkljrxyzxyzxyzxyzoua6cxxfbtqbg2tvhkogyusd6scnb2wfdnfcfmzq:5905 instance-console.ap-melbourne-1.oci.oraclecloud.com }; sleep 5; plink.exe -i $env:homedrive$env:homepath\oci\console.ppk -N -L 5900:localhost:5900 -P 5905 localhost -l ur6vlkost37m2rxa
-
Ersetzen Sie die beiden
$env:homedrive$env:homepath\oci\console.ppk
-Abschnitte im folgenden Befehl, um auf Ihren Private Key zu verweisen.Start-Job { Echo N | plink.exe -i C:\Keys\ssh-key-2022-06-11-converted.ppk -N -ssh -P 443 -l ocid1.instanceconsoleconnection.oc1.ap-melbourne-1.anwwkljxyzxyzxyzxyzhatrpp5gdhi75lunwazur6vlkost37m2rxa -L 5905:ocid1.instance.oc1.ap-melbourne-1.anwwkljrxyzxyzxyzxyzoua6cxxfbtqbg2tvhkogyusd6scnb2wfdnfcfmzq:5905 instance-console.ap-melbourne-1.oci.oraclecloud.com }; sleep 5; plink.exe -i C:\Keys\ssh-key-2022-06-11-converted.ppk -N -L 5900:localhost:5900 -P 5905 localhost -l ur6vlkost37m2rxa
-
Starten Sie Windows PowerShell oder Terminal, führen Sie den folgenden Befehl aus, und befolgen Sie die Anweisungen zum Starten der Sitzung.
-
Nachdem die Verbindung gestartet wurde, öffnen Sie VNC Viewer, und stellen Sie mit dem Befehl
localhost:localport
eine Verbindung zur Konsole her. Für dieses Tutorial verwenden wir localhost:5900. -
Sobald die Verbindung hergestellt ist, wird die DCUI angezeigt.
-
Drücken Sie ALT+F1, um auf die Konsole zuzugreifen, melden Sie sich mit dem opc-Benutzer und dem SDDC-Kennwort an.
Aufgabe 3: Kennwortbasierte Authentifizierung für den Host ESXi aktivieren
-
Um die kennwortbasierte Anmeldung für den opc-Benutzer zu aktivieren, bearbeiten Sie die Datei
/etc/ssh/sshd_config
. -
Ändern Sie die Einstellung PasswordAuthentication in yes, und speichern Sie die Datei.
-
Laden Sie den SSH-Service neu, indem Sie den Befehl
/etc/init.d/SSH restart
ausführen. -
Konfigurieren Sie ein Kennwort für den opc-Benutzer.
Aufgabe 4: Neuen Public Key auf dem ESXi-Host hinzufügen
-
Stellen Sie mit dem im vorherigen Schritt konfigurierten Kennwort eine SSH-Verbindung zum Host ESXi her.
-
Bearbeiten Sie die Datei
authorized_keys
in/etc/ssh/keys-opc/
. -
Ersetzen Sie den vorhandenen Public Key, oder fügen Sie einen neuen Public Key hinzu.
Aufgabe 5: Zugriff mit dem neuen SSH-Schlüsselpaar testen
-
Richten Sie mit dem neuen SSH-Schlüsselpaar eine neue SSH-Session zum Host ESXi ein.
Aufgabe 6: Kennwortbasierte Anmeldung deaktivieren
Nachdem Sie den Zugriff mit den neuen SSH-Schlüsseln in Aufgabe 5 getestet haben, müssen Sie die kennwortbasierte Anmeldung aus Sicherheitsgründen deaktivieren.
-
Bearbeiten Sie die Datei
/etc/ssh/sshd_config
, und ändern Sie die Einstellung für PasswordAuthentication in no. -
Starten Sie den SSH-Service neu.
-
Stellen Sie sicher, dass die kennwortbasierte Anmeldung nicht funktioniert.
Aufgabe 7: Persistente SSH-Public Keys aktivieren
Um sicherzustellen, dass die Konfiguration auch nach dem Neustart des ESXi-Hosts beibehalten wird, führen Sie die folgenden Schritte aus, um den neuen Public Key zur Datei authorized_keys
hinzuzufügen:
-
Bevor Sie fortfahren, stellen Sie eine SSH-Verbindung zum Host ESXi her, falls dies noch nicht geschehen ist.
-
Kopieren Sie den neuen Public Key in eine Variable.
NEW_PUB_KEY = "Paste New Public Key here"
-
Hängen Sie den neuen Public Key an die Datei
authorized_keys
auf dem ESXi-Host an.echo "<$NEW_PUB_KEY>" >> /etc/ssh/keys-root/authorized_keys
-
Aktivieren Sie das Sticky Bit für die Datei
authorized_keys
, um unbeabsichtigte Änderungen zu verhindern.chmod +t /etc/ssh/keys-root/authorized_keys
-
Führen Sie das automatische Backupskript aus, um die Datei
authorized_keys
persistent zu machen./sbin/auto-backup.sh
Nächste Schritte
Führen Sie die Aufgaben 1 bis 7 fortlaufend auf allen ESXi-Hosts im Oracle Cloud VMware Solution-SDDC aus.
Verwandte Links
Danksagungen
- Autor - Praveen Kumar Pedda Vakkalam (Principal Solution Architect)
Weitere Lernressourcen
Lernen Sie andere Übungen auf docs.oracle.com/learn kennen, oder greifen Sie auf weitere kostenlose Lerninhalte im Oracle Learning YouTube Channel zu. Besuchen Sie außerdem education.oracle.com/learning-explorer, um Oracle Learning Explorer zu werden.
Produktdokumentation finden Sie im Oracle Help Center.
Replace SSH Keys for Oracle Cloud VMware Solution ESXi hosts
F59851-03
December 2023
Copyright © 2023, Oracle and/or its affiliates.