Nach der Installation eines Debian-Servers sollte einer der ersten Schritte die Absicherung des Systems sein. Dazu gehört insbesondere:
- Einen normalen Benutzer anlegen
- Diesem Benutzer Administratorrechte über
sudogeben - Den direkten Root-Login deaktivieren
Dadurch wird verhindert, dass Angreifer direkt das Root-Konto verwenden können. Stattdessen erfolgen administrative Arbeiten über einen persönlichen Benutzeraccount mit nachvollziehbaren Berechtigungen.
In diesem Artikel zeige ich Schritt für Schritt, wie du unter Debian 13 (Trixie) einen neuen Benutzer anlegst, ihm sudo-Rechte gibst und anschließend den Root-Login absicherst.
Warum den Root-Login deaktivieren?
Der Root-Benutzer besitzt uneingeschränkte Rechte auf dem System.
Das Problem:
- Der Benutzername „root“ ist bekannt
- Bots scannen permanent das Internet nach SSH-Zugängen
- Es muss nur noch das Passwort erraten werden
Wird stattdessen ein normaler Benutzer verwendet:
- Muss zunächst der Benutzername bekannt sein
- Root kann nicht direkt per SSH verwendet werden
- Alle administrativen Befehle werden protokolliert
Schritt 1: Neuen Benutzer anlegen
Einen neuen Benutzer erzeugst du mit:
adduser thorsten
Beispiel:
adduser adminuser
Debian fragt anschließend nach:
New password: Retype new password: Full Name: Room Number: Work Phone: Home Phone: Other:
Die zusätzlichen Angaben können leer gelassen werden.
Schritt 2: Benutzer zur sudo-Gruppe hinzufügen
Damit der Benutzer administrative Aufgaben ausführen kann, wird er Mitglied der Gruppe sudo.
usermod -aG sudo adminuser
Alternativ:
adduser adminuser sudo
Prüfen:
groups adminuser
Ausgabe:
adminuser : adminuser sudo
Schritt 3: Testen der sudo-Rechte
Zum neuen Benutzer wechseln:
su - adminuser
Test:
sudo whoami
Ausgabe:
root
Wenn dies funktioniert, besitzt der Benutzer Administratorrechte.
Schritt 4: SSH-Schlüssel einrichten (empfohlen)
Vor dem Deaktivieren des Root-Logins solltest du sicherstellen, dass der neue Benutzer sich per SSH anmelden kann.
Auf dem Client:
ssh-copy-id adminuser@server-ip
Test:
ssh adminuser@server-ip
Erst wenn die Anmeldung erfolgreich funktioniert, solltest du mit dem nächsten Schritt fortfahren.
Schritt 5: Root-Login per SSH deaktivieren
Die SSH-Konfiguration öffnen:
sudo nano /etc/ssh/sshd_config
Folgende Zeile suchen:
PermitRootLogin yes
Ändern in:
PermitRootLogin no
Falls die Zeile auskommentiert ist:
#PermitRootLogin prohibit-password
ersetzen durch:
PermitRootLogin no
Datei speichern.
Schritt 6: SSH-Dienst neu starten
Konfiguration übernehmen:
sudo systemctl restart ssh
Status prüfen:
sudo systemctl status ssh
Schritt 7: Testen
Wichtig:
Nicht die bestehende SSH-Verbindung schließen!
Öffne stattdessen ein zweites Terminal und teste:
ssh adminuser@server-ip
Anschließend prüfen:
sudo -i
Wenn dies funktioniert, ist die Konfiguration korrekt.
Nun den Root-Login testen:
ssh root@server-ip
Erwartete Ausgabe:
Permission denied
Optional: Passwort-Login komplett deaktivieren
Noch sicherer ist die ausschließliche Verwendung von SSH-Schlüsseln.
Datei bearbeiten:
sudo nano /etc/ssh/sshd_config
Folgende Werte setzen:
PasswordAuthentication no PubkeyAuthentication yes PermitRootLogin no
SSH neu starten:
sudo systemctl restart ssh
Ab sofort sind nur noch SSH-Schlüssel zulässig.
Root-Konto zusätzlich sperren
Wer den Root-Benutzer überhaupt nicht mehr nutzen möchte, kann das Passwort sperren:
sudo passwd -l root
Prüfen:
sudo passwd -S root
Beispiel:
root L
Das L steht für „Locked“.
Entsperren:
sudo passwd -u root
Nützliche Befehle
Benutzer anzeigen:
getent passwd
Sudo-Mitglieder anzeigen:
getent group sudo
Benutzer entfernen:
sudo deluser adminuser
Benutzer inklusive Home-Verzeichnis entfernen:
sudo deluser --remove-home adminuser
Zusätzliche Sicherheitsempfehlungen
Für einen produktiven Debian-13-Server empfiehlt sich zusätzlich:
- SSH-Port ändern (z. B. 2222)
- UFW-Firewall aktivieren
- Fail2Ban installieren
- SSH-Schlüssel statt Passwörter verwenden
- Regelmäßige Updates einspielen
- Root-Login deaktivieren
- Starke Passwörter verwenden
- Optional einen Honeypot wie Cowrie auf Port 22 betreiben
Die Kombination aus einem eigenen Benutzerkonto, sudo-Rechten und deaktiviertem Root-Login gehört zu den wichtigsten Sicherheitsmaßnahmen nach einer Debian-13-Installation. Dadurch wird die Angriffsfläche erheblich reduziert und gleichzeitig eine saubere Benutzerverwaltung ermöglicht.
Besonders in Verbindung mit SSH-Schlüsseln, Fail2Ban und einer Firewall entsteht so ein deutlich sichererer Linux-Server, der wesentlich besser gegen automatisierte Angriffe aus dem Internet geschützt ist.