Standardmäßig können sich auf Linux-Systemen alle Benutzer per SSH einloggen. Manchmal möchte man dies aber nur bestimmten Benutzern erlauben. Dies ist beispielsweise der Fall, wenn FTP-User als System-User angelegt werden. Diesen möchte man in der Regel natürlich keinen Login erlauben.
Ein Weg, dieses Problem zu lösen, ist, ihnen keine Shell zu geben, indem man in der
/etc/passwd die Shell des jeweiligen Benutzers "
/bin/bash" durch "
/bin/false" ersetzt. Dies funktioniert jedoch nur dann, wenn der Benutzer auch für keine andere Anwendung eine Shell benötigt.
Die weitaus schönere und auch komfortablere Lösung ist folgende:
- Bei der Installation des OpenSSH-Servers wird die Gruppe "ssh" angelegt. Nun fügt man alle Benutzer, die sich per SSH einloggen können sollen, dieser Gruppe hinzu.
# adduser benutzername ssh
- Nun müssen in der /etc/ssh/sshd_config folgende Zeilen eingefügt werden:
# Limit SSH login to users of the given groups
AllowGroups ssh
Natürlich können dort auch andere Gruppen angegeben werden. Mehrere Gruppen werden dabei durch ein Leerzeichen getrennt notiert.
- Schließlich muss der SSH-Daemon noch mit /etc/init.d/sshd restart neu gestartet werden.
Nun ist ein Login per SSH nur noch den Benutzern möglich, die Mitglied in mindestens einer der angegebenen Gruppen sind.