[Sysadmins] Samba 4.6.15, доменные пользователи и группы, posix acl
Москаленко Алексей Владимирович
mav на elserv.msk.su
Пн Авг 6 11:56:45 MSK 2018
Здравствуйте.
Столкнулся с непонятным мне поведением winbind в samba 4.6.15(p8) в
части использования доменных пользователей и групп в nss.
Есть домен на samba (nt4-style). Есть член этого домена на P8 (samba
4.6.15). На нем настроен idmap backend rid. Конфиг члена домена:
[global]
dos charset = CP866
server string = Server (ver. %v)
workgroup = DOMAIN
local master = No
os level = 200
preferred master = No
log file = /var/log/samba/log.%m
max log size = 50
load printers = No
printcap name = /dev/null
client ipc signing = if_required
client signing = if_required
security = DOMAIN
server signing = if_required
template homedir = /dev/null
template shell = /dev/null
winbind sealed pipes = No
wins server = 192.168.0.1
idmap config domain : range = 1000000 - 1999999
idmap config domain : backend = rid
idmap config * : range = 100000 - 199999
dbwrap_tdb_mutexes:* = yes
idmap config * : backend = tdb
map archive = No
map readonly = no
store dos attributes = Yes
printing = lprng
map acl inherit = Yes
inherit acls = Yes
use sendfile = Yes
vfs objects = acl_xattr streams_xattr
В домене заведен пользователь test.tt, входящий в одну глобальную группу
- Domain users. Все описанное ниже происходит на члене домена.
Первая странность - в группы любого пользователя добавляется также и
группа с его именем. Пример:
# id domain\\test.tt
uid=1041378(DOMAIN\test.tt) gid=1000513(DOMAIN\domain users)
группы=1041378(DOMAIN\test.tt),1000513(DOMAIN\domain
users),10001(BUILTIN\users)
# wbinfo -G 1041378
S-1-5-21-DOMAIN_SID-41378
# wbinfo -U 1041378
S-1-5-21-DOMAIN_SID-41378
# wbinfo --user-groups=elserv\\test.tt
1041378
1000513
10001
# for gid in $(wbinfo --user-groups=domain\\test.tt); do wbinfo -s
$(wbinfo -G $gid); done
DOMAIN\test.tt 1
DOMAIN\Domain Users 2
BUILTIN\Users 4
Вопрос - что за группа DOMAIN\test.tt с GID 1041378? В домене ее нет, а
на члене домена для любого доменного пользователя есть соответствующая
группа с таким же именем, GID=UID и одинаковыми SID. Для чего это
сделано и нельзя ли это как-нибудь отключить?
Вторая странность - при создании файлов/каталогов на общем ресурсе, для
них выставляются непонятные мне POSIX ACLs:
# getfacl test
# file: test
# owner: DOMAIN\\test.tt
# group: DOMAIN\\domain\040users
user::rwx
user:1000513:r-x
group::r-x
group:DOMAIN\\domain\040users:r-x
group:DOMAIN\\test.tt:rwx
mask::rwx
other::r-x
default:user::rwx
default:user:DOMAIN\\test.tt:rwx
default:group::r-x
default:group:DOMAIN\\domain\040users:r-x
default:mask::rwx
default:other::r-x
# getfacl test/q.txt
# file: test/q.txt
# owner: DOMAIN\\test.tt
# group: DOMAIN\\domain\040users
user::rwx
user:1000513:r-x
group::r-x
group:DOMAIN\\domain\040users:r-x
group:DOMAIN\\test.tt:rwx
mask::rwx
other::r-x
Появляется запись ACL пользователя для UID=1000513 (на самом деле это
GID для группы DOMAIN\domain users) и запись ACL группы для GID=1041378
(а это UID для пользователя DOMAIN\test.tt, который из-за странности (1)
отображается в несуществующую группу DOMAIN\test.tt). Пользователя с
UID=1000513 не существует, поэтому он показывается номером.
Собственно, хочется понять корни такого поведения, чтобы принять
решение, что с этим делать дальше.
Подробная информация о списке рассылки Sysadmins