Bug 52333

Summary: Нарушение унаследования прав на сетевых ресурсах при использовании опции cifsacl
Product: Sisyphus Reporter: Murat <sokurov-mz>
Component: autofsAssignee: Sergey Bolshakov <sbolshakov>
Status: NEW --- QA Contact: qa-sisyphus
Severity: critical    
Priority: P5 CC: alimektor, sbolshakov
Version: unstable   
Hardware: x86_64   
OS: Linux   
See Also: https://bugzilla.altlinux.org/show_bug.cgi?id=50445
Attachments:
Description Flags
Скрины с правами none

Description Murat 2024-12-03 16:43:27 MSK
Created attachment 17314 [details]
Скрины с правами

AD на Windows server 2019 с Administrative Templates (.admx) for Windows 10 October 2022 Update (22H2) и admx-basealt-master 0.1.13.6-alt1, ALT Workstation K 10.4 Kernel: Linux 6.1.115-un-def-alt1, версия gpupdate-0.11.4-alt1.noarch.
Файловый сервер на Windows server 2019, autofs-5.1.8-alt4.x86_64, групповые политики настроены по данной инструкции https://docs.altlinux.org/ru-RU/domain/10.4/html/group-policy/drives.html

Имеется общий файлообменник, на который все пользователи организации имеют права на чтение, в данном файлообменнике каждая служба имеет свою папку с полными правами, при подключении сетевого ресурса через gpo (autofs), после создания  пользователем паки в своем подразделении, не может работать внутри созданной им папки, ему необходимо дать предварительно себе же права для работы внутри созданной им же папкой, не смотря на то, что унаследование предоставлены для этой папки и ее подпапок и файлов группе пользователей состоящим в данном подразделении. При работе из под windows таких проблем не возникает. Для наглядности прикладываю скрины, слева права на папку созданная из под линукс, справа из под windows, и второй скрин когда пользователь из под линукс заходит из проводника с адресной строки smb://fileserver/folder с указанием своих учетных прав, при таком подключении у пользователя из под линукс есть положенные права без ограничений нарушений прав унаследования как из под windows.
Comment 1 Evgeny Shesteperov 2024-12-10 17:20:54 MSK
Стенд

-   ALT Workstation 11 (Sisyphus)
-   Windows Server 2019

Версия

-   gpupdate-0.11.4-alt1
-   autofs-5.1.9-alt3

Шаги воспроизведения

TLDR: связано с опцией cifsacl

1.  Создать пару подразделений (OU1, OU2).
2.  Создать по группе для данных подразделений соответственно
    (group_ou1, group_ou2)
3.  Создать по пользователю для данных подразделений соответственно
    (user_ou1, user_ou2).
4.  Добавить данных пользователей в только что созданные группы
    соответственно (user_ou1 в group_ou1, user_ou2 в group_ou2).
5.  Создать сетевую шару на сервере (C:/share) с правами чтения для
    всех.
6.  Создать подпапки для с доступом Чтение и запись только для созданных
    групп.
    1.  C:/share/ou1 для group_ou1
    2.  C:/share/ou2 для group_ou2
7.  Согласно документации 10.5.7. Подключение сетевых дисков
    (https://docs.altlinux.org/ru-RU/domain/10.4/html/group-policy/drives.html)
    настроить сетевой диск для C:/share (пользовательская политика).
8.  Применить групповые политики: # gpupdate && gpoa и $ gpupdate.
9.  Войти пользователем user_ou1 на тестовой машине.
10. В файловом менеджере перейти по пути
    /run/media/user_ou1/drives/share/ou1
11. Создать папку user_ou1.
12. Проверить права созданной папки:
    # stat /run/media/user_ou1/drives/share/ou1/user_ou1/ -c %A

Ожидаемый результат: папка доступна на чтение и запись.

Фактический результат: папка недоступна на чтение и запись (d---------).

Сравните права в данной примере

1 - созданная папка с правами

    # stat /run/media/user_ou1/drives/share/ou1/ -c %A
    drwx-----T

2 - созданная доменным пользователем в данной папке

    # stat /run/media/user_ou1/drives/share/ou1/user_ou1/ -c %A
    d---------

При создании папки из под Windows права не изменяются, то есть
наследование прав не работает:

    # stat /run/media/user_ou1/drives/share/ou1/win_user_ou1 -c %A
    d---------

Дополнительно: если убираю опцию cifsacl, то всё выглядит корректно:

    # echo '+dir:/etc/auto.test' >> /etc/auto.master
    # mkdir -p /etc/auto.test && \
    echo '"share" -fstype=cifs,cruid=$USER,sec=krb5,noperm ://dc/share' > /etc/auto.test/test.conf && \
    echo '/mnt/testcifs /etc/auto.test/test.conf --browse' > /etc/auto.test/test.autofs
    # systemctl restart autofs.service
    $ stat /mnt/testcifs/share/ou1/user2_ou1/ -c %A
    drwxr-xr-x
    $ mkdir -p /mnt/testcifs/share/ou1/new/ && \
    stat /mnt/testcifs/share/ou1/new/ -c %A
    drwxr-xr-x


Воспроизводится в P10