In diesem Dokument wird beschrieben, wie Sie als Root-Nutzer eine Verbindung zu Linux-VM-Instanzen (virtuelle Maschinen) herstellen. Dadurch erhalten Sie Superuser-Berechtigungen auf der VM. Standardmäßig erlauben Compute Engine-VMs, die aus öffentlichen Images und gängigen Betriebssystemen erstellt wurden, die Root-Anmeldung mit einem Passwort über SSH nicht.
Statt eine Verbindung zu VMs als Root-Nutzer herzustellen, können Sie Befehle auch über sudo ausführen. Wir empfehlen diese Alternative vor der Aktivierung der Root-Anmeldung.
Unterstützte Betriebssysteme
Diese Verbindungsmethoden werden für alle öffentlichen Linux-Images unterstützt, die in Compute Engine verfügbar sind. Für Fedora CoreOS-Images müssen Sie den SSH-Zugriff einrichten, bevor Sie diese Methoden verwenden können.
Root-Anmeldung aktivieren
Standardmäßig ist bei Compute Engine-VMs der PermitRootLogin-Parameter in der SSH-Konfigurationsdatei /etc/ssh/sshd_config auf prohibit-password oder no festgelegt. Folgen Sie der Anleitung für Ihre VM, um die Root-Anmeldung zu aktivieren:
VMs mit OS Login
So aktivieren Sie die Root-Anmeldung:
Erstellen Sie einen SSH-Schlüssel. Kopieren Sie den öffentlichen SSH-Schlüssel für die spätere Verwendung.
Ändern Sie
PermitRootLogin noin der/etc/ssh/sshd_config-Datei mit folgendem Befehl inPermitRootLogin prohibit-password:sudo sed -i 's/PermitRootLogin no/PermitRootLogin prohibit-password/g' /etc/ssh/sshd_config
Erstellen Sie mit folgendem Befehl das
/root/.ssh-Verzeichnis:sudo mkdir /root/.ssh
Legen Sie die Berechtigungen für das
.ssh-Verzeichnis mit folgendem Befehl fest:sudo chmod 700 /root/.ssh
Erstellen Sie mit folgendem Befehl die
authorized_keys-Datei:sudo touch /root/.ssh/authorized_keys
Legen Sie die Berechtigungen für die
authorized_keys-Datei mit folgendem Befehl fest:sudo chmod 600 /root/.ssh/authorized_keys
Fügen Sie den öffentlichen SSH-Schlüssel in die
/root/.ssh/authorized_keys-Datei ein.Starten Sie den
sshd-Daemon neu. Dazu starten Sie die VM neu oder nutzen den Neustartbefehl für das Betriebssystem Ihrer VM. Warten Sie, bis die VM neu gestartet wurde, und stellen Sie dann eine Verbindung als Root-Nutzer her.
VMs ohne OS Login
So aktivieren Sie die Root-Anmeldung:
Ändern Sie
PermitRootLogin noin der/etc/ssh/sshd_config-Datei mit folgendem Befehl inPermitRootLogin prohibit-password:sudo sed -i 's/PermitRootLogin no/PermitRootLogin prohibit-password/g' /etc/ssh/sshd_config
Starten Sie den
sshd-Daemon neu. Dazu starten Sie die VM neu oder nutzen den Neustartbefehl für das Betriebssystem Ihrer VM. Warten Sie, bis die VM neu gestartet wurde, und stellen Sie dann eine Verbindung als Root-Nutzer her.
Verbindung als Root-Nutzer herstellen
Nachdem Sie die Root-Anmeldung aktiviert haben, stellen Sie eine Verbindung zur VM als Root-Nutzer her. Wenn Sie eine Verbindung zu einer VM herstellen, auf der OS Login aktiviert ist, müssen Sie Drittanbieter tools anstelle der gcloud CLI verwenden.
gcloud
Hinweis: Wenn auf der VM, zu der Sie eine Verbindung herstellen, OS Login aktiviert ist, müssen Sie Drittanbietertools verwenden, um eine Verbindung als Root-Nutzer herzustellen.
Stellen Sie eine Verbindung zu VMs als Root-Nutzer her. Verwenden Sie dazu den
gcloud compute ssh Befehl mit
root@ vor dem VM-Namen angegeben ist:
-
Aktivieren Sie Cloud Shell in der Google Cloud Console.
Unten in der Google Cloud Console wird eine Cloud Shell Sitzung gestartet und eine Eingabeaufforderung angezeigt. Cloud Shell ist eine Shell-Umgebung in der das Google Cloud CLI bereits installiert ist und Werte für Ihr aktuelles Projekt bereits festgelegt sind. Das Initialisieren der Sitzung kann einige Sekunden dauern.
Stellen Sie mit folgendem Befehl eine Verbindung zur VM her:
gcloud compute ssh \ --project=PROJECT_ID \ --zone=ZONE \ root@VM_NAMEDabei gilt:
PROJECT_ID: Die ID des Projekts, das die VM enthältZONE: Der Name der Zone, in der sich die VM befindetVM_NAME: der Name der VM
Drittanbieter-Tools
Um als Root-Nutzer eine Verbindung zu VMs herzustellen folgen Sie der Anleitung für Ihre VM.
VMs mit OS Login
Stellen Sie eine Verbindung mit Drittanbietertools her und geben Sie Folgendes an:
- Privater Schlüssel: Der private Schlüssel, der dem öffentlichen Schlüssel entspricht, den Sie der
authorized_keys-Datei hinzugefügt haben. - Nutzername: Der Nutzername muss
rootsein.
- Privater Schlüssel: Der private Schlüssel, der dem öffentlichen Schlüssel entspricht, den Sie der
VMs ohne OS Login
Erstellen Sie einen SSH-Schlüssel für den Root-Nutzer. Der Nutzername für den Schlüssel muss
rootsein.Fügen Sie den Schlüssel für den Root-Nutzer zu den Metadaten hinzu.
Stellen Sie eine Verbindung mit Drittanbietertools her und geben Sie Folgendes an:
Privater Schlüssel: Der private Schlüssel für den Root-Nutzer
Nutzername: Der Nutzername muss
rootsein.
Fehlerbehebung
Methoden zur Diagnose und Behebung von fehlerhaften SSH-Verbindungen finden Sie unter Fehlerbehebung für SSH.
Nächste Schritte
- Zugriff auf Instanzen verwalten
- Dateien auf VMs übertragen
- Mehr darüber erfahren, wie SSH-Verbindungen zu Linux-VMs in Compute Engine funktionieren.