Страница 1 из 1

Samba 3.6 AD ACL

Добавлено: 2012-12-07 11:27:40
tray.irk
Делал все по статье http://www.lissyara.su/archive/samba+acl/ в итоге создал в шаре unit несколько папок 1,2,3 дал права 1-ой папке дал права на доступ группе g-asup, 2-ой дал права на доступ группе g-buh ... в итоге все могу заходить куда угодно и делать что угодно ... ниже прилагаю конфиги

Код: Выделить всё

fs# cat /usr/local/etc/smb.conf
[global]
        # Рабочая группа
        workgroup       = OCTI
        # тип безопасности - Актив Директори
        security        = ADS
        # Сервер паролей - тут указывается контроллер домена
        # но у меня их несколько - поэтому я указал имя домена
        # благо оно резольвится в их имена.
        password server = OCTI.ORG
        # область kerberos
        realm           = OCTI.ORG
        # имя машины в "сетевом окружении"
        netbios name    = FS
        # комментарий к имени машины
        server string   = SAMBA shares server
        # уровень логгирования - 0-10 - но никогда не оставляейте
        # в 10 - очень быстро засрёт раздел с логами
#       log level       = 10
        # файл логов - подробности о значении переменных
        # есть в man smb.conf
        log file        = /var/log/samba/%m.%U.log
        # максимальный размер файла лога (kB)
        max log size    = 50000
        # диапазон отмапленых winbindd`ом uid пользователей
        idmap uid       = 10000-20000
        # диапазон отмапленых winbindd`ом gid пользователей
        idmap gid       = 10000-20000
        # использовать дефолтовый домен (имя юзера можно
        # указывать без домена)
        winbind use default domain = yes
        # кодировка выводимых сообщений
        display charset = koi8-r
        # кодировка в которой хранить на диске
        unix charset    = koi8-r
        # в какой кодировке общаться с досовскими клиентами
        dos charset     = 866

[unit]
        # каммент к шаре
        comment                 = Shares for Documents
        # путь к шаре на диске
        path                    = /data/unit
        # список тех, кому разрешён доступ на чтение
        read list               = "@OCTI.ORG\Пользователи домена"
        # список тех, кому разрешён доступ на запись
        write list              = "@OCTI.ORG\Пользователи домена"
        # список тех, кому разрешёно ставить те самые галки,
        # ради которых всё затевалось. инттересная особенность, в которую
        # до конца не вкурил - в одинаковых конфигурациях, иногда можно
        # указывать без домена, а иногда домен необходим.
        # Все операции этих пользователей выполняются от рута!
        admin users             = @OCTI.ORG\g-fsadm
        # ДОступ к шаре тока на чтение
        read only               = No
        # маска для создаваемых файлов
        create mask             = 0660
        # маска для создаваемых директорий
        directory mask          = 0770
        # наследовать владельца (вышестоящей директории)
        inherit owner           = no
        # наследовать ACL
        inherit acls            = yes
        # наследовать права
        inherit permissions     = yes
        # позвоялет редактору прав из винды корректно обрабатывать
        # наследуемые права
        map acl inherit         = yes
        # блокировки - иногда бывают грабли без этого пункта
        locking                 = no

Код: Выделить всё

fs# cat /etc/nsswitch.conf
#
# nsswitch.conf(5) - name service switch configuration file
# $FreeBSD: release/9.0.0/etc/nsswitch.conf 224765 2011-08-10 20:52:02Z dougb $
#
group: files winbind
group_compat: nis
hosts: files dns
networks: files
passwd: files winbind
passwd_compat: nis
shells: files
services: compat
services_compat: nis
protocols: files
rpc: files

Код: Выделить всё

fs# cat /etc/krb5.conf
[libdefaults]
        default_realm = OCTI.ORG

[realms]
        OCTI.ORG = {
                kdc = OCTI.ORG
                admin_server = OCTI.ORG
        }

[domain_realm]
        .octi.org = OCTI.ORG

[logging]
        kdc = FILE:/var/log/krb5kdc.log
        admin_server = FILE:/var/log/kadmin.log
        default = FILE:/var/log/krb5lib.log

Код: Выделить всё

fs# id pupkin.vv
uid=10001(pupkin.vv) gid=10000(пользователи домена) groups=10000(пользователи домена),10025(g-pm)

Re: Samba 3.6 AD ACL

Добавлено: 2012-12-07 12:34:37
tray.irk

Код: Выделить всё

fs# mount
/dev/da0p2 on / (ufs, local, journaled soft-updates)
devfs on /dev (devfs, local, multilabel)
/dev/da1s1d on /data (ufs, local, soft-updates, acls)

Re: Samba 3.6 AD ACL

Добавлено: 2012-12-07 14:43:04
snorlov
А чего кажут

Код: Выделить всё

getfacl /data/unit/1
getfacl /data/unit/2
getfacl /data/unit/3

Re: Samba 3.6 AD ACL

Добавлено: 2012-12-08 5:58:53
tray.irk

Код: Выделить всё

fs# getfacl /data/unit/1
# file: /data/unit/1
# owner: root
# group: пользователи домена
user::rwx
group::rwx
group:g-asup:rwx
mask::rwx
other::rwx

Код: Выделить всё

fs# getfacl /data/unit/2
# file: /data/unit/2
# owner: root
# group: пользователи домена
user::rwx
group::rwx
group:g-pm:rwx
mask::rwx
other::rwx
есть пользователь pupkin.vv который и может гадить где угодно ... хотя ему разрешено только во 2-ой папке

Код: Выделить всё

fs# id pupkin.vv
uid=10001(pupkin.vv) gid=10000(пользователи домена) groups=10000(пользователи домена),10025(g-pm)

Re: Samba 3.6 AD ACL

Добавлено: 2012-12-09 16:58:17
snorlov
Убери наследование acl...

Re: Samba 3.6 AD ACL

Добавлено: 2012-12-09 17:10:55
GhOsT_MZ
А ничего страшного, что группе "Пользователи домена", куда входят все пользователи разрешено все в этих двух каталогах, так как они являются владельцами?
Сделайте так:

Код: Выделить всё

chgrp -R wheel /data/unit

Re: Samba 3.6 AD ACL

Добавлено: 2012-12-10 3:23:05
tray.irk
убрать полностью все наследования? или нет?

сделал chgrp -R wheel /data/unit ни чего не дало ....

Re: Samba 3.6 AD ACL

Добавлено: 2012-12-10 15:06:03
suspender
в итоге все могу заходить куда угодно и делать что угодно

Код: Выделить всё

other:rwx
ну ничего удивительного.

Попробуйте

Код: Выделить всё

chmod -R 770 /data/unit
для начала, а затем уже acls добавляйте и проверяйте.