Samba, FreeBSD, ZFS: Групповые разрешения игнорируются

Я использую Samba 4.6 на FreeBSD 11 с ZFS. Каждый пользователь принадлежит к группе файловых серверов . К тому же, для каждого отдела есть дополнительные группы, например группа продаж .

И вот моя проблема. На сервере есть папка с названием sales . Который принадлежит файловому серверу и группе продаж. Почему члены моей группы из отдела продаж не могут перезаписывать файлы через Windows внутри этой папки. При использовании доступа к оболочке редактирование работает без проблем.

В Windows появляется сообщение Доступ к целевой папке запрещен , когда я пытаюсь перезаписать файл. Новые файлы могут быть без проблем созданы внутри папки продаж. Переименование также работает

folder sales
chmod 770 sales
chown fileserver:sales

# file: sales
# owner: fileserver
# group: sales
owner@:rwxp--aARWcCos:-------:allow
group@:rwxp--a-R-c--s:-------:allow
everyone@:r-x---a-R-c--s:-------:allow

Внутри папки продаж находится файл test.txt

chmod 770 test.txt
chown fileserver:sales

# file: test.txt
# owner: fileserver
# group: sales
owner@:rwxp--aARWcCos:-------:allow
group@:rwxp--a-R-c--s:-------:allow
everyone@:------a-R-c--s:-------:allow

Изменение разрешения папки на продажи chmod 2770 также не влияет

Только если я дам файлу те же права ACL, что и владелец экономия работает. Это почему? Я сделал неправильную настройку? Права доступа группы rwx должны перекрывать права ACL? Нет?

smb4.conf
[global]
# Logging
log level = 3
log file = /var/log/samba4/log.%m
max log size = 50
utmp = 0

# Domain & controller & workgroups
server string = NAS Server
workgroup = COMPANY
server string = NAS
netbios name = NAS

# Network restriction
bind interfaces only = yes
interfaces = lo0 igb0

# Security model
security = user
encrypt passwords = true
map to guest = bad user

# Time server
time server = yes

map hidden = no
map system = no
map archive = no
map readonly = no

store dos attributes = yes

ea support = yes
access based share enum = yes
load printers = no

template homedir = /fileserver/users/%U
allow insecure wide links = yes

[data]
comment = Data
path = /fileserver/data
valid users = +fileserver

browsable = yes
writable = yes
read only = no
guest ok = no
public = no
follow symlinks = yes
wide links = yes

create mask = 0770
force create mode = 0760
directory mask = 2770
force directory mode = 2770

hide unreadable = yes

vfs objects = shadow_copy2 zfsacl recycle crossrename
shadow: snapdir = .zfs/snapshot
shadow: sort = desc
shadow: format = %Y-%m-%d-%H%M

recycle:directory_mode = 0750
recycle:subdir_mode = 0750
recycle:exclude = *.tmp *.temp *.swp
recycle:keeptree = yes
recycle:repository = Trash/%U
recycle:versions = yes
recycle:touch = yes
recycle:touch_mtime = yes

nfs4:mode = special
nfs4:acedup = merge
nfs4:chown = yes

crossrename:sizelimit = 50
1
задан 4 November 2017 в 20:02
1 ответ

Итак, вы ожидаете, что доступ для чтения и записи будет работать без delete , delete_child и write_owner ? Это просто неправильно, вы находитесь не в устаревшей системе разрешений POSIX 3x3, а в списках ACL NFSv4. Они не дополнительные к POSIX 3x3, они нормализованы. В основном вам нужен ACL full_set , вам нужен более детальный контроль, который вам нужен для экспериментов.

И не забывайте, что вам также нужны aclmode и aclinherit установлен на сквозную передачу в этом наборе данных.

0
ответ дан 4 December 2019 в 04:27

Теги

Похожие вопросы