sshd_config: AllowUsers und AllowGroups

edvsb

Registered User
Hallo zusammen,

habe aktuell folgendes Problem, für das ich noch keine Lösung habe und aus dem Man werde ich da auch nicht schlauer.

Bisher hatte nur ein User "loginmaster" Zugriff über SSH.

-> AllowUsers loginmaster

Nun sollen zahlreiche User hinzukommen. Menge ist unbekannt, die sind aber alle in der gleichen Gruppe.

Wenn ich nun die Zeile

-> AllowGroups benutzergruppe

hinzufüge, dann bekommt keiner der Benutzer aus der Gruppe Zugriff.

Der User "loginmaster" ist nicht! in der Gruppe. Füge ich alle Benutzer einfach als "AllowUser" hinzu, dann geht es, nur ist die Anzahl variable und ich möchte ungern jedes mal in der sshd_config rummachen müssen.

Hat mir einer einen Rat, wie man AllowUsers und AllowGroups gleichzeitig verwenden kann? Also einen speziellen User freigeben und eine spezielle Gruppe?
 
Hat mir einer einen Rat, wie man AllowUsers und AllowGroups gleichzeitig verwenden kann?
Das geht nicht. Allow{Groups,User} schließt automatisch alle Benutzer bzw. Gruppen aus, die nicht in der Liste stehen (siehe sshd_config(5)).

Du kannst entweder deinen Benutzer loginmaster in eine dedizierte Gruppe packen (nennen wir sie spaßeshalber mal loginmaster) und diese dann bei AllowGroups mit aufführen oder du nutzt jeweils einen Match Block für die Konfiguration des Benutzers bzw. der Gruppe. Ich würde die erste Variante nutzen.
 
Hallo Roger Wilco,

also Dein Vorschlag ist gut. Darauf kam ich auch direkt nach meinem Post hier :-) Erst dachte ich, einfach eine neue Gruppe zu nehmen, etwa "sshgroup" und dort sowohl den loginmaster als auch die einzelnen Benutzer reinzupacken. Die Gruppe dann mit AllowGroups freigeben.

Dann dämmerte es mir und ich war bei dem was Du geschrieben hast. "loginmaster" hat schon eine gleichnamige Gruppe :-) Also das AllowUsers aus der Config raus und beide Gruppen als AllowGroups rein und schon ging es.

Das mit dem automatischen Ausschluss habe ich eigentlich schon gelesen auch, dass es eine Rangfolge der Abarbeitung gibt. Dass das aber direkt zwischen User und Group auch "abgeglichen" wird, war mir nicht klar. Also ich dachte da eher an die Art: User nicht erlaubt.... weitermachen.... Gruppe testen... Gruppe erlaubt, dann ok, Gruppe auch nicht, dann verweigern.

Danke Dir!
 
Wenn man einen User anlegt wird standartmäßig eine neue Gruppe mit gleichem Namen angelegt. Dies ist dann die Primärgruppe des Users.

Was Roger Wilco wohl meinte ist, dass du eine neue Gruppe anlegen solltest. Diese dann den SSH Usern als sekundäre Gruppe zuweisen.
Ein User kann auch in mehreren Gruppen sein ;)

Ich persönlich benutze lieber AllowUsers, weil man mit einem Blick in die sshd_config sofort alle zugelassenen User erkennt und man schnell einen User hinzufügen, bzw entfernen kann, ohne mit Gruppenrechten spielen zu müssen.
Ich gebe halt gerne jedem User eine eigene Gruppe und verwende dann chmod x00. Das ist aber meine persönliche Präferenz und sicher nicht zwingend.
 
Hi Terrorkarotte,

also das "in eine dedizierte Gruppe packen (nennen wir sie spaßeshalber mal loginmaster) und diese dann bei AllowGroups mit aufführen" hört sich aber eher nach dem von mir verstandenen an. Da steht ja "mit" in die AllowGroups packen, also müssen da ja mehrere sein.

Wobei....

AllowUsers loginmaster
AllowGroups loginmaster benutzergruppe

müsste dann ja auch funktionieren. Vielleicht war das so gemeint. Oder haben dann die einzelnen Benutzer wieder keine Berechtigung, da bei AllowUsers nicht aufgeführt?? Da alle einzeln aufzuführen wollte ich eigentlich umgehen. Da kommen immer wieder mal welche dazu, dann werden welche umbenannt usw....

Wobei ich dann den Sinn nicht wirklich verstehe. Wenn ein User in einer Gruppe sein muss, dann kann ich doch gleich die Gruppe freigeben und brauche den User nicht. In der Gruppe "loginmaster" ist nur der eine User, da kommt auch nie ein anderer rein.

Oder eben alle Benutzer in eine extra SSHgruppe und die freigeben.

Nachtrag:
Das Ganze ist so zu sehen.
Der "loginmaster" ist nur für den Login, mehr nicht, kein Admin.
In der Gruppe "benutzergruppe" sind lauter SFTP-User, die jeweils ihr eigens home-Dir haben. Rechte dort nur für den User, nicht für die Gruppe (außer lesen).
 
Last edited by a moderator:
Ich würde einfach eine SSH-Gruppe erstellen und alle User da rein packen - weniger aus technischen Gründen, sondern einfach aus organisatorischen. In der Gruppe habe ich alle User, die SSH nutzen können, auf einen Blick. In der Config vom sshd darf natürlich nur diese eine Gruppe bei AllowGroups eingetragen sein...
 
Wenn man einen User anlegt wird standartmäßig eine neue Gruppe mit gleichem Namen angelegt.
Das ist nicht pauschal richtig. Einige Distributionen haben diese Voreinstellung, andere nicht. Das lässt sich (abgesehen von entsprechenden Parametern für `useradd`) in der `/etc/login.defs` konfigurieren.

Ich persönlich benutze lieber AllowUsers, weil man mit einem Blick in die sshd_config sofort alle zugelassenen User erkennt und man schnell einen User hinzufügen, bzw entfernen kann, ohne mit Gruppenrechten spielen zu müssen.
Die Variante mit den dedizierten Gruppen hat den Vorteil, dass der `sshd` nicht jedesmal neugestartet bzw. geHUP't werden muss, wenn ein Benutzer hinzugefügt oder entfernt wird. Eine Übersicht der Benutzer bekommst du dann ganz normal mit `getent group wheel`.
 
Back
Top