URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID14
Нить номер: 2286
[ Назад ]

Исходное сообщение
"# id username - показывает не более 16 групп AD."

Отправлено mslabousov , 04-Мрт-10 13:04 
Суть проблемы:
Если доменный юзер AD включен в более чем 16 доменных групп в AD, то winbind видит только 16 групп AD. Таким образом, используя ACL и раздавая права на расшаренные ресурсы посредствам групп AD, некоторых пользователей, которые входят в большое кол-во групп могут не получить доступ у ресурсу.
Не знаю как с этим бороться!!!???

Далее показываю все что с этим связано:

Юзер входит только в одну группу в AD “пользователи домена”

# id trandov
uid=10003(trandov) gid=10020(пользователи домена) groups=10020(пользователи домена)

Включил этого юзера еще в 10 групп в AD.

id trandov
uid=10003(trandov) gid=10020(пользователи домена) groups=10020(пользователи домена)

Перестартуем samba целиком (как перестартовать только winbind – не знаю)
sh /usr/local/etc/rc.d/samba restart

Видно что появились 10 групп, которые я добавил.
# id trandov
uid=10003(trandov) gid=10020(пользователи домена) groups=10020(пользователи домена),10053(f024),10054(f070),10055(f110),10056(f115),10057(f118),10058(f125),10059(f128),10122(f118d),10153(f116),10154(f117)

Включил этого юзера еще в 10 других групп в AD.

# id trandov
uid=10003(trandov) gid=10020(пользователи домена) groups=10020(пользователи домена),10053(f024),10054(f070),10055(f110),10056(f115),10057(f118),10058(f125),10059(f128),10060(f129),10061(f130),10062(f131),10063(f132),10064(f140),10065(f155),10066(f1557),10067(f156)

и вот тут-то вся беда и заключается, что я ограничен только 16-ю группами в AD. Если юзер включен в бОльшее кол-во групп, то они не отображаются. Скорей всего у меня что не так сконфигурировано, но перепроверял все несколько раз.

Wbinfo –u – показывает всех юзеров домена
Wbinfo –g – показывает все группы домена

Далее привожу свои конфиги. Может у кого была такая проблема – просьба сообщить как Вы с ней справились.

# uname -a
FreeBSD greenstorage.mydomen.ru 7.2-RELEASE FreeBSD 7.2-RELEASE #0: Fri May  1 08:49:13 UTC 2009     root@walker.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  i386

cat /etc/nsswitch.conf
#
# nsswitch.conf(5) - name service switch configuration file
# $FreeBSD: src/etc/nsswitch.conf,v 1.1.8.1 2009/04/15 03:14:26 kensmith Exp $
#

group: files winbind
hosts: files dns nis winbind
networks: files winbind
passwd: files winbind
shadow: files winbind
shells: files winbind


# cat /etc/fstab
# Device                Mountpoint      FStype  Options         Dump    Pass#
/dev/amrd0s1b           none            swap       sw                     0           0
/dev/amrd0s1a           /                    ufs         rw                      1           1
/dev/amrd0s1e           /tmp             ufs         rw                      2            2
/dev/amrd0s1f           /usr               ufs         rw,acls               2           2
/dev/amrd0s1d          /var               ufs         rw                       2          2
/dev/acd0                   /cdrom          cd9660  ro,noauto           0          0


# cat /usr/local/etc/smb.conf.

[global]
        workgroup=MYDOMEN
        server string = Samba File Server
    security =ADS
        hosts allow =192.168.0., 127.
        log level = 0 vfs:1
        log file = /var/log/samba/log.%m
        max log size =500
    syslog=0
        password server =psi.mydomen.ru
        realm = MYDOMEN.RU
        encrypt passwords=yes
        socket options=SO_RCVBUF=8192 SO_SNDBUF=8192 TCP_NODELAY IPTOS_LOWDELAY
        idmap uid=10000-20000
        idmap gid=10000-20000
        winbind use default domain=yes
        winbind enum users=yes
        winbind enum groups=yes
    auth methods=winbind
        display charset = koi8-r
        unix charset = koi8-r
        dos charset = cp866
    #ACL
    map acl inherit=yes
    inherit acls=yes
    inherit owner=yes
    inherit permissions=yes
    #ACL
        block size=4096
    deadtime=10
    follow symlinks=no
    getwd cache=yes
    hide dot files=yes
    wide links=no
        hide unreadable=yes
        case sensitive=no
        # CUPS
        load printers = no
        show add printer wizard = no
    printcap name = /dev/null
    disable spoolss = yes
          
[info]
        path=/usr/fileserver/info
        comment="Consultant, MosMap"
        create mask=0777
        directory mask=0777
        browseable=yes
        available=yes
        read only=no
        admin users="@MYDOMEN\администраторы домена"
        valid users="@MYDOMEN\пользователи домена"

[Dep]
        path=/usr/fileserver/dep
        comment="Данные отделов"
        create mask=0777
        directory mask=0777
        browseable=yes
        available=yes
        read only=no
        admin users="@MYDOMEN\администраторы домена"
        valid users="@MYDOMEN\пользователи домена"
        #recycle
        vfs objects = recycle full_audit
        recycle:repository = /usr/fileserver/dep/recycle
        recycle:keeptree = yes
        recycle:versions = yes
        recycle:exclude = *.tmp | *.TMP | ~$* | ~WRL*
        recycle:maxsize = 104805760

  ;          full_audit:facility=LOCAL5
  ;          full_audit:priority=INFO
            full_audit:failure = mkdir rmdir write unlink rename
            full_audit:success = mkdir rmdir write unlink rename
            full_audit:prefix = %m|%U

Оценю любую Вашу помощь. Спасибо.


Содержание

Сообщения в этом обсуждении
"# id username - показывает не более 16 групп AD."
Отправлено Golub Mikhail , 04-Мрт-10 13:41 
>Суть проблемы:
>Если доменный юзер AD включен в более чем 16 доменных групп в
>AD, то winbind видит только 16 групп AD. Таким образом, используя
>ACL и раздавая права на расшаренные ресурсы посредствам групп AD, некоторых
>пользователей, которые входят в большое кол-во групп могут не получить доступ
>у ресурсу.
>Не знаю как с этим бороться!!!???
>
>Оценю любую Вашу помощь. Спасибо.

Это все отсюда:
sysctl -d kern.ngroups

Говорили, что можно будет менять в каких-то версиях ...
Не проверял. Почитайте, проверьте.
http://www.freebsd.org/cgi/query-pr.cgi?pr=108552

Проверил на FreeBSD 8.0-RELEASE-p2. Добавил в /boot/loader.conf
kern.ngroups="32"

После ребута вижу:
kern.ngroups: 1023
Не то, что вводил (32), но, думаю, хватит :)



"# id username - показывает не более 16 групп AD."
Отправлено mslabousov , 05-Мрт-10 15:43 
>[оверквотинг удален]
>Говорили, что можно будет менять в каких-то версиях ...
>Не проверял. Почитайте, проверьте.
>http://www.freebsd.org/cgi/query-pr.cgi?pr=108552
>
>Проверил на FreeBSD 8.0-RELEASE-p2. Добавил в /boot/loader.conf
>kern.ngroups="32"
>
>После ребута вижу:
>kern.ngroups: 1023
>Не то, что вводил (32), но, думаю, хватит :)

Благодарю за подсказку.
В своей версии 7.2 данный параметр на лету менять нельзя.
Пришлось править в файл sys/sys/syslimits.h #define NGROUPS_MAX                1024
и далее перегенерить ядро.
После перезагрузки на ввод #sysctl kern.ngroups
выводит: kern.ngroups: 1024
НО ПРОБЛЕМА НЕ РЕШИЛАСЬ!!!
При вводе #id username - показывает не более 16 групп.
Кто знает как победить этого гада???
  


"# id username - показывает не более 16 групп AD."
Отправлено Golub Mikhail , 05-Мрт-10 16:29 
>[оверквотинг удален]
>В своей версии 7.2 данный параметр на лету менять нельзя.
>Пришлось править в файл sys/sys/syslimits.h #define NGROUPS_MAX      
>          1024
>
>и далее перегенерить ядро.
>После перезагрузки на ввод #sysctl kern.ngroups
>выводит: kern.ngroups: 1024
>НО ПРОБЛЕМА НЕ РЕШИЛАСЬ!!!
>При вводе #id username - показывает не более 16 групп.
>Кто знает как победить этого гада???

Не уверен, но может и самбу пересобрать надо (или даже и мир)?
Посмотрите http://www.lissyara.su/articles/freebsd/www/apache1.3_+_php_.../
Там самбы не касается, но тоже упирается в лимит в 16 групп:
"Короче - ставим сколько надо (всё не тестил, но вроде как всё рабтает нормально, правда, для верности, пересобирал вообще всё - мир, ядро, и все установленные приложения. Каюсь - метод, всёже косячный, но умней ничё в башке не родилось, да и время поджимало)."


А что выводит "wbinfo -r username"?
У меня выводит все id групп - 49 штук (группы, в которые входит аккаунт).


"# id username - показывает не более 16 групп AD."
Отправлено mslabousov , 05-Мрт-10 17:07 
>А что выводит "wbinfo -r username"?
>У меня выводит все id групп - 49 штук (группы, в которые
>входит аккаунт).

А вот при таком раскладе, кстати, выводит id-шники всех тех груп, в которые включен данный юзер. Странно как то!!!


"# id username - показывает не более 16 групп AD."
Отправлено Golub Mikhail , 09-Мрт-10 15:37 
>>А что выводит "wbinfo -r username"?
>>У меня выводит все id групп - 49 штук (группы, в которые
>>входит аккаунт).
>
>А вот при таком раскладе, кстати, выводит id-шники всех тех груп, в
>которые включен данный юзер. Странно как то!!!

Похоже, что в случае не с wbinfo winbind не используется.
http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/i...


"# id username - показывает не более 16 групп AD."
Отправлено Golub Mikhail , 09-Мрт-10 19:46 
>>А что выводит "wbinfo -r username"?
>>У меня выводит все id групп - 49 штук (группы, в которые
>>входит аккаунт).
>
>А вот при таком раскладе, кстати, выводит id-шники всех тех груп, в
>которые включен данный юзер. Странно как то!!!

Проверил специально.
На 7.2 нельзя через loader.conf изменить kern.ngroups.
На 8.0 - можно. Изменил (как писал выше).
Поставил самбу 3.0.37 (из портов, с поддержкой ADS). Ввел в домен.
Все группы отображаются через "id username".


"# id username - показывает не более 16 групп AD."
Отправлено mslabousov , 22-Мрт-10 17:35 
Да, точно, спасибо. Так оно и есть.
Сделал то же самое и все получилось.
Поставил FreeBSD 8.0!!!