[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Limit Benutzer in einer Gruppe (war: Re: Problem mit SSH Benutzer in chroot jail einsperren)



Am Donnerstag, 2. Februar 2017, 23:36:02 CET schrieb Sven Hartge:
> Martin Steigerwald <martin@lichtvoll.de> wrote:
> > Am Donnerstag, 2. Februar 2017, 22:33:30 CET schrieb Ulf Volmer:
> >> On Thu, Feb 02, 2017 at 10:14:56PM +0100, Michelle Konzack wrote:
> >>> On 2017-02-02 21:15:44 Ulf Volmer hacked into the keyboard:
> >>> 
> >>> Im internet lese ich halt nur Sachen ueber die  32
> >>> Benutzer-Limitierung pro Gruppe sowie 2048 Bytes Zeilenlaenge.
> >> 
> >> Link or it didnt happen. Ich kenne nur ein Limit, dass ein Nutzer
> >> maximal in 16/32 Gruppen Mitglied sein darf.
> >> 
> >> Es wird sicherlich irgendwo ein Limit geben, ich bin da in der Praxis
> >> nie drangestoßen.
> > 
> > Jetzt bin ich da mal gespannt. Mich würde so ein Limit von 32
> > Benutzern pro Gruppe echt wundern, weil das ne heftige Einschränkung
> > wäre.
> 
> Ich auch. Dann müßten sich nämlich meine Hochschul-Systeme in diesem
> Moment alle in Rauch auflösen.
> 
> Praktisch gesehen wirft Michelle (wie üblich) mit grandiosem Halbwissen
> diverse Dinge durcheinander.
> 
> Z.B. gibt es bei NFSv3 das Limit, das ein Benutzer nur in 16 Gruppen
> sein darf. Mit NFSv4 und idmapping wird das aber gelöst.
> 
> Und dann gibt es tatsächlich ein Limit in der Zeilenlange in
> /etc/groups sowie Bugs in den Tools wie z.B. useradd oder adduser, die
> Probleme haben, wenn die Zahl der Benutzer pro Gruppe zu groß wird.
> 
> Aber kein normal denkender Admin würde versuchen, diese Mengen an
> Benutzern über /etc/passwd und /etc/group abzubilden, schon gar nicht
> auf mehreren Servern, sondern etwas wie LDAP oder AD, o.ä. benutzen.

In usermod(8) ist was dazu:

       MAX_MEMBERS_PER_GROUP (number)
           Maximum members per group entry. When the maximum is
           reached, a new group entry (line) is started in /etc/group
           (with the same name, same password, and same GID).

           The default value is 0, meaning that there are no limits in
           the number of members in a group.

           This feature (split group) permits to limit the length of
           lines in the group file. This is useful to make sure that
           lines for NIS groups are not larger than 1024 characters.

           If you need to enforce such limit, you can use 25.

           Note: split groups may not be supported by all tools (even
           in the Shadow toolsuite). You should not use this variable
           unless you really need it.

Das ist doch mal ziemlich eindeutig.

Andersherum, weil das ja auch oben zur Sprache kam, also in wie vielen Gruppen 
ein Benutzer sein darf, gibt es jedoch ein Limit (7), das jedoch auch viel 
höher ist als oben angegeben:

       *  Supplementary  group IDs.  This is a set of additional group
          IDs that are used for permission checks when accessing files
          and  other shared resources.  On Linux kernels before 2.6.4,
          a process can be a member of up to 32 supplementary  groups;
          since kernel 2.6.4, a process can be a member of up to 65536
          supplementary groups.  The call sysconf(_SC_NGROUPS_MAX) can
          be  used  to determine the number of supplementary groups of
          which a process may be a member.  A process can  obtain  its
          set  of  supplementary group IDs using getgroups(2), and can
          modify the set using setgroups(2).

martin@merkaba:~> getconf -a | grep GROUPS_MAX
NGROUPS_MAX                        65536
_POSIX_NGROUPS_MAX                 65536

Ciao,
-- 
Martin


Reply to: