In diesem Dokument wird beschrieben, wie Sie als Root-Nutzer eine Verbindung zu Linux-VM-Instanzen herstellen, wodurch Superuser-Berechtigungen auf der VM aktiviert werden. 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. Aktivieren Sie die Root-Anmeldung. Folgen Sie dazu der Anleitung für Ihre VM:
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 no
in 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 no
in 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 als Root-Nutzer zur VM her. Wenn Sie eine Verbindung zu einer VM herstellen, für die OS Login aktiviert ist, müssen Sie Tools von Drittanbietern anstelle der gcloud CLI verwenden.
gcloud
Hinweis: Wenn für die 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, wobei root@
vor dem VM-Namen angegeben ist:
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Stellen Sie mit folgendem Befehl eine Verbindung zur VM her:
gcloud compute ssh \ --project=PROJECT_ID \ --zone=ZONE \ root@VM_NAME
Dabei 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
Verbinden Sie sich über Drittanbietertools 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
root
sein.
- 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
root
sein.Fügen Sie den Schlüssel für den Root-Nutzer zu den Metadaten hinzu.
Verbinden Sie sich über Drittanbietertools und geben Sie Folgendes an:
Privater Schlüssel: Der private Schlüssel für den Root-Nutzer
Nutzername: Der Nutzername muss
root
sein.
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.