Linux User für einen SSH Tunnel anlegen

Freitag, 6. Februar 2026 - Lesezeit: ~1 Minute

Hat man auf einem Server in der Cloud zum Beispiel eine Postgres, die aber nicht direkt über den Hostnamen erreicht werden soll sondern nur per SSH Tunnel, braucht man dafür einen User. Oftmals soll dieser User dann aber auch nur einen SSH Tunnel öffnen können und keine eigene Bash haben (ein Login ist also nicht möglich).

Das lässt sich folgendermaßen erreichen:

useradd tunneluser -M -s /usr/bin/false

Erklärung Parameter:

  • -M > Dem User kein Home-Verzeichnis erstellen
  • -s > Festsetzen der Login-Shell für den Benutzer

Was macht

/usr/bin/false

Diese Funktion tut im Prinzip nichts und gibt einen Fehler als Statuscode zurück. Jeder Login endet also sofort wieder mit einem LogOut.

Danach setzt man das Passwort per

passwd tunneluser

Jetzt muss man noch sicherstellen, das in der Konfigurationsdatei "/etc/ssh/sshd_config" die Zeile "PasswordAuthentication yes" aktiviert ist (Raute entfernen).

Danach starten man den Dienst mit "systemctl reload sshd" neu.