Entsperren Sie das Root-Konto und aktivieren Sie bei Bedarf die direkte SSH-Anmeldung als Root auf Ihrem Linux-Cloud-Server – dies ist nützlich, wenn eine Anwendung oder ein Installationsprogramm ausdrücklich den Root-Benutzer anstelle von „sudo“ erfordert.
Gilt für / Voraussetzungen
Marken: dogado
Ein laufender Cloud-Server mit einer installierten Linux-Distribution
Zugriff auf Ihren Server über SSH oder die oneHome-Webkonsole mit Ihrem Standard-„sudo“-Benutzer
Das Passwort Ihres „sudo“-Benutzers, um die folgenden Schritte zu autorisieren
Warum das wichtig ist / Typische Anwendungsfälle
Standardmäßig wird ein neuer Cloud-Server mit einem Nicht-Root-Benutzer (Standard: „administrator“) bereitgestellt, der über vollständige „sudo“-Berechtigungen verfügt – es handelt sich also weder um ein Root-Konto mit festgelegten Passwort noch um eine direkte Root-SSH-Anmeldung.
Für die meisten alltäglichen Verwaltungsaufgaben reicht die Ausführung von Befehlen mit „sudo“ aus und wird als Vorgehensweise empfohlen.
Einige Anwendungen, Installationsprogramme oder Skripte erfordern ausdrücklich den echten Root-Benutzer (sie prüfen auf „$EUID -eq 0“ oder Ähnliches) anstelle einer mit „sudo“ erweiterten Shell und lassen sich unter „sudo“ allein nicht korrekt ausführen.
Typische Anwendungsfälle:
- Installation von Software mit einem Installationsprogramm, das eine Root-Shell erfordert
- Ausführung von Installationsskripten von Drittanbietern, die sudo ablehnen und den tatsächlichen Root-Benutzer erfordern
- Arbeit mit älteren Anwendungen oder Tools, die ausschließlich für Root entwickelt wurden
- Wiederherstellung des Zugriffs, falls das Konto Ihres Sudo-Benutzers gesperrt oder gelöscht wird oder die Sudoers-Konfiguration fehlerhaft ist – ein Root-Passwort ist Ihr Ausweichweg zurück auf den Server
- Reparatur des Systems im Rettungsmodus (z. B. bei einem defekten Bootloader oder einem Problem mit dem Dateisystem), wobei die Arbeit innerhalb einer Chroot-Umgebung dazu führen kann, dass die üblichen Mechanismen von Sudo möglicherweise nicht zuverlässig verfügbar sind
- Migration eines kompletten Servers oder Synchronisierung eines vollständigen Backups mit rsync/scp als root, damit Dateibesitz und Berechtigungen systemweit exakt übertragen werden
- Ausführung interaktiver Konfigurationstools (z. B. dpkg-reconfigure, einige Datenbank-Konfigurationsassistenten), die eine echte root-Anmeldeumgebung erwarten (HOME=/root, vollständiger root-PATH), die durch „sudo <Befehl>“ allein nicht vollständig nachgebildet wird
- Verwaltung von Cron-Jobs, die Root gehören, oder die Erlaubnis, dass sich ein Überwachungs- oder Backup-Agent als systemd-Dienst unter Root installiert
Schritt-für-Schritt-Anleitung
Teil 1 – Root-Passwort festlegen (erforderlicher erster Schritt)
Stellen Sie über SSH oder die Webkonsole eine Verbindung zu Ihrem Cloud-Server her, wobei Sie Ihren Standard-sudo-Benutzer verwenden – siehe „Verbindung zu Ihrem Linux-Cloud-Server über SSH herstellen“.
Legen Sie ein Passwort für das Root-Konto fest:
sudo passwd root
Geben Sie ein sicheres neues Passwort ein und bestätigen Sie es, wenn Sie dazu aufgefordert werden.
Sie können nun jederzeit von Ihrer aktuellen Sitzung aus zum Root-Benutzer wechseln:
su -
Teil 2 – Direkte Root-Anmeldung über SSH aktivieren (optional)
Öffnen Sie die Konfigurationsdatei des SSH-Servers:
sudo nano /etc/ssh/sshd_config
Suchen Sie die Zeile, die mit „PermitRootLogin“ beginnt (sie ist möglicherweise mit einem # auskommentiert oder auf „no“ oder „prohibit-password“ gesetzt).
Ändern Sie sie wie folgt:
PermitRootLogin yes
Speichern und schließen Sie die Datei.
Starten Sie den SSH-Dienst neu, um die Änderung zu übernehmen:
sudo systemctl restart sshd
Sie können sich nun direkt als Root verbinden:
ssh root@<Ihre-Server-IP>
Wichtige Hinweise und Einschränkungen
Die Aktivierung der direkten SSH-Anmeldung als „root“ vergrößert die Angriffsfläche Ihres Servers: „root“ ist ein bekannter Benutzername, auf den automatisierte Bots gezielt Brute-Force-Anmeldeversuche richten. Wenn Sie diese Funktion aktivieren, empfehlen wir dringend, den SSH-Zugriff über die Firewall bzw. IP-Zugriffsregeln auf vertrauenswürdige IP-Adressen zu beschränken und ein starkes, einzigartiges Passwort oder die SSH-Schlüsselauthentifizierung zu verwenden.
Sobald Sie die direkte SSH-Anmeldung als „root“ nicht mehr benötigen, setzen Sie „PermitRootLogin“ wieder auf „no“ oder „prohibit-password“ zurück, um die Standard-Sicherheitskonfiguration wiederherzustellen.
Die Verwaltung und Absicherung des Root-Zugriffs erfolgt vollständig innerhalb Ihres Gastbetriebssystems und liegt in Ihrer Verantwortung – dies fällt nicht in den von der Plattform verwalteten Bereich Ihres nicht verwalteten Cloud-Servers.
Bei einer Neuinstallation wird das Betriebssystem von Grund auf neu installiert, wodurch das Root-Konto auf seinen standardmäßigen gesperrten Zustand zurückgesetzt und „PermitRootLogin“ auf seinen Standardwert zurückgesetzt wird.
Fehlerbehebung / Häufige Probleme
„passwd: Fehler bei der Manipulation des Authentifizierungstokens“
Stellen Sie sicher, dass das Dateisystem nicht voll oder schreibgeschützt eingehängt ist (df -h).
Root-Anmeldung wird nach Änderung von „PermitRootLogin“ weiterhin verweigert
Stellen Sie sicher, dass Sie den SSH-Dienst neu gestartet haben (sudo systemctl restart sshd), und prüfen Sie, ob in /etc/ssh/sshd_config.d/ eine konfliktverursachende Übersteuerungsdatei vorhanden ist.
„Zugriff verweigert (publickey)“ bei der Verbindung als Root über SSH
Wenn Ihr Server nur die schlüsselbasierte Authentifizierung akzeptiert, fügen Sie Ihren SSH-Schlüssel zu /root/.ssh/authorized_keys hinzu oder stellen Sie sicher, dass auch die Passwortauthentifizierung zugelassen ist, falls Sie sich auf diese Weise anmelden möchten.
Nach der Bearbeitung von „sshd_config“ ausgesperrt
Verwenden Sie die Webkonsole in oneHome (kein SSH erforderlich), um die Konfigurationsdatei zu korrigieren und den SSH-Dienst neu zu starten.
Häufig gestellte Fragen (FAQs)
Warum ist der Root-Benutzer auf einem neuen Cloud-Server standardmäßig nicht aktiviert?
Aus Sicherheitsgründen werden neue Server standardmäßig mit einem sudo-fähigen Nicht-Root-Benutzer bereitgestellt. Dies entspricht gängigen Linux-Sicherheitspraktiken und verringert die Anfälligkeit für automatisierte Brute-Force-Angriffe auf den bekannten Benutzernamen „root“.
Ist es sicher, die direkte SSH-Anmeldung als Root zu aktivieren?
Dies wird als dauerhafte Einstellung nicht empfohlen, da es die Anfälligkeit für Brute-Force-Angriffe erhöht. Wenn Sie dies vorübergehend benötigen – beispielsweise für ein Installationsprogramm, das dies erfordert –, sollten Sie in Betracht ziehen, die Einstellung anschließend wieder rückgängig zu machen und den SSH-Zugriff in der Zwischenzeit über die Firewall bzw. IP-Zugriffsregeln einzuschränken.
Muss ich die SSH-Root-Anmeldung aktivieren, um den Root-Benutzer nutzen zu können?
Nein. Sie können eine Root-Shell mit „su -“ (nach Festlegung eines Root-Passworts) aufrufen oder einzelne Befehle mit „sudo“ ausführen, ohne jemals die direkte SSH-Root-Anmeldung zu aktivieren.
Was passiert mit meinem Root-Passwort und meinen SSH-Einstellungen, wenn ich eine Neuinstallation durchführe?
Bei einer Neuinstallation wird das Betriebssystem von Grund auf neu installiert, wodurch das Root-Konto auf seinen standardmäßigen gesperrten Zustand und „PermitRootLogin“ auf seinen Standardwert zurückgesetzt wird.
Kann ich statt eines Passworts einen SSH-Schlüssel für die Root-Anmeldung verwenden?
Ja, indem Sie Ihren öffentlichen Schlüssel zu /root/.ssh/authorized_keys hinzufügen.