Samba 4 на Ubuntu 14.04 сломан с помощью Posix ACL (2:4.1.6+dfsg-1ubuntu2.14.04.9)?
У меня проблемы с недавно перенесенным BDC (2:4.1.6+dfsg-1ubuntu2.14.04.9) с разрешениями на основе POSIX ACL. Я не могу заставить его работать как PDC, который, к счастью, все еще имеет немного более старую версию (2: 4.1.6 + dfsg-1ubuntu2.14.04.7).
PDC безупречно работает со следующим набором разрешений. Схема очень простая, но позволяет пользователю группы "Бухгалтерский учет" в примерах обмениваться файлами и папками...
# file: accounting
# owner: root
# group: root
user::rwx
group::r-x
group:Accounting:rwx
mask::rwx
other::---
default:user::rwx
default:group::---
default:group:Accounting:rwx
default:mask::rwx
default:other::---
Что-нибудь, что я могу пропустить? Единственный способ, которым я мог бы разрешить пользователю создавать каталог в общем ресурсе, - выставить "другие" разрешения, что, очевидно, нежелательно. Я пытаюсь использовать Windows ACL с помощью acl_xattr, но до сих пор не смог добиться того же, что и с POSIX ACL.
Оба файла smb.conf на PDC и BDC идентичны, за исключением, разумеется, роли сервера и сервера WINS на PDC. Определения акций приведены ниже.
[accounting]
path = /srv/samba/accounting
writable = yes
nt acl support = yes
Что действительно по-настоящему сумасшедшее, так это то, что после новой настройки такого общего ресурса для тестирования и перезапуска или перезагрузки службы все работает с доступом через \\BDC\share
, Однако через некоторое время он ломается и доступ к папке больше не разрешается (Win7, Win10 и WinXP). Под WinXP возможен доступ с \\bdc.domain.tld\share
для одного экземпляра, а затем останавливается. Под WinXP тоже впоследствии разрешен доступ через \\<BDC_IP_ADDRESS>\share
...
Журнал ошибок следует ниже для тестового ресурса.
Большое спасибо заранее за любой намек.
-
[2015/10/03 17:38:21.624058, 3] ../source3/smbd/process.c:1795(process_smb)
Transaction 255 of length 90 (0 toread)
[2015/10/03 17:38:21.624238, 3] ../source3/smbd/process.c:1398(switch_message)
switch message SMBntcreateX (pid 19932) conn 0x7fb256620060
[2015/10/03 17:38:21.624382, 3] ../source3/smbd/service.c:197(set_current_service)
chdir (/srv/samba/posix_acl) failed, reason: Permission denied
[2015/10/03 17:38:21.624469, 3] ../source3/smbd/error.c:82(error_packet_set)
NT error packet at ../source3/smbd/process.c(1517) cmd=162 (SMBntcreateX) NT_STATUS_ACCESS_DENIED
[2015/10/03 17:38:25.186401, 3] ../source3/smbd/process.c:1795(process_smb)
Transaction 256 of length 80 (0 toread)
[2015/10/03 17:38:25.186586, 3] ../source3/smbd/process.c:1398(switch_message)
switch message SMBtrans2 (pid 19932) conn 0x7fb256620060
[2015/10/03 17:38:25.186679, 3] ../source3/smbd/service.c:197(set_current_service)
chdir (/srv/samba/posix_acl) failed, reason: Permission denied
[2015/10/03 17:38:25.186758, 3] ../source3/smbd/error.c:82(error_packet_set)
NT error packet at ../source3/smbd/process.c(1517) cmd=50 (SMBtrans2) NT_STATUS_ACCESS_DENIED
[2015/10/03 17:38:25.277631, 3] ../source3/smbd/process.c:1795(process_smb)
Transaction 257 of length 114 (0 toread)
[2015/10/03 17:38:25.277782, 3] ../source3/smbd/process.c:1398(switch_message)
switch message SMBntcreateX (pid 19932) conn 0x7fb256620060
[2015/10/03 17:38:25.277911, 3] ../source3/smbd/service.c:197(set_current_service)
chdir (/srv/samba/posix_acl) failed, reason: Permission denied
[2015/10/03 17:38:25.277989, 3] ../source3/smbd/error.c:82(error_packet_set)
NT error packet at ../source3/smbd/process.c(1517) cmd=162 (SMBntcreateX) NT_STATUS_ACCESS_DENIED
[2015/10/03 17:38:25.278256, 3] ../source3/smbd/process.c:1795(process_smb)
Transaction 258 of length 80 (0 toread)
[2015/10/03 17:38:25.278356, 3] ../source3/smbd/process.c:1398(switch_message)
switch message SMBtrans2 (pid 19932) conn 0x7fb256620060
[2015/10/03 17:38:25.278436, 3] ../source3/smbd/service.c:197(set_current_service)
chdir (/srv/samba/posix_acl) failed, reason: Permission denied
[2015/10/03 17:38:25.278507, 3] ../source3/smbd/error.c:82(error_packet_set)
NT error packet at ../source3/smbd/process.c(1517) cmd=50 (SMBtrans2) NT_STATUS_ACCESS_DENIED
[2015/10/03 17:38:25.282395, 3] ../source3/smbd/process.c:1795(process_smb)
Transaction 259 of length 114 (0 toread)
[2015/10/03 17:38:25.282526, 3] ../source3/smbd/process.c:1398(switch_message)
switch message SMBntcreateX (pid 19932) conn 0x7fb256620060
[2015/10/03 17:38:25.282610, 3] ../source3/smbd/service.c:197(set_current_service)
chdir (/srv/samba/posix_acl) failed, reason: Permission denied
[2015/10/03 17:38:25.282683, 3] ../source3/smbd/error.c:82(error_packet_set)
NT error packet at ../source3/smbd/process.c(1517) cmd=162 (SMBntcreateX) NT_STATUS_ACCESS_DENIED
[2015/10/03 17:38:25.284720, 3] ../source3/smbd/process.c:1795(process_smb)
Transaction 260 of length 90 (0 toread)
[2015/10/03 17:38:25.284848, 3] ../source3/smbd/process.c:1398(switch_message)
switch message SMBntcreateX (pid 19932) conn 0x7fb256620060
[2015/10/03 17:38:25.284932, 3] ../source3/smbd/service.c:197(set_current_service)
chdir (/srv/samba/posix_acl) failed, reason: Permission denied
[2015/10/03 17:38:25.285005, 3] ../source3/smbd/error.c:82(error_packet_set)
NT error packet at ../source3/smbd/process.c(1517) cmd=162 (SMBntcreateX) NT_STATUS_ACCESS_DENIED
[2015/10/03 17:38:25.288082, 3] ../source3/smbd/process.c:1795(process_smb)
Transaction 261 of length 90 (0 toread)
[2015/10/03 17:38:25.288233, 3] ../source3/smbd/process.c:1398(switch_message)
switch message SMBntcreateX (pid 19932) conn 0x7fb256620060
[2015/10/03 17:38:25.288386, 3] ../source3/smbd/service.c:197(set_current_service)
chdir (/srv/samba/posix_acl) failed, reason: Permission denied
[2015/10/03 17:38:25.288468, 3] ../source3/smbd/error.c:82(error_packet_set)
NT error packet at ../source3/smbd/process.c(1517) cmd=162 (SMBntcreateX) NT_STATUS_ACCESS_DENIED
[2015/10/03 17:38:25.290447, 3] ../source3/smbd/process.c:1795(process_smb)
Transaction 262 of length 80 (0 toread)
[2015/10/03 17:38:25.290578, 3] ../source3/smbd/process.c:1398(switch_message)
switch message SMBtrans2 (pid 19932) conn 0x7fb256620060
[2015/10/03 17:38:25.290663, 3] ../source3/smbd/service.c:197(set_current_service)
chdir (/srv/samba/posix_acl) failed, reason: Permission denied
[2015/10/03 17:38:25.290736, 3] ../source3/smbd/error.c:82(error_packet_set)
NT error packet at ../source3/smbd/process.c(1517) cmd=50 (SMBtrans2) NT_STATUS_ACCESS_DENIED
1 ответ
Я нашел решение проблемы...
Просматривая журналы в /var/log/samba, я увидел журнал winbind, которого там быть не должно. Проверка того, что я вижу, что wbinfo -u возвращает список пользователей, и дальнейшая проверка, я вижу активные процессы winbind. Остановка службы winbind вернула ситуацию в нормальное состояние.
Поэтому удаление пакета с помощью sudo apt-get, удаление winbind и перезагрузка стали окончательным решением.
Для справки, похоже, что тестовый общий ресурс с Windows ACL также работает с типом разрешений sam, установленным для общего ресурса. Таким образом, работают и Posix ACL, и Windows ACL.
Для получения информации ниже конфигурации, используемой для последней (не уверен, что вторая часть Windows ACL нужна для того, чтобы иметь основы, но, кажется, работает в моем случае, я буду дополнительно исследовать, когда у меня будет время).
[windows_acl]
path = /srv/samba/windows_acl
read only = no
; Windows ACL
vfs objects = acl_xattr
map acl inherit = yes
store dos attributes = yes
inherit acls = yes
inherit permissions = yes
acl group control = yes
acl map full control = true
nt acl support = yes
ea support = yes
Я надеюсь, что это может помочь любому, кто сталкивается с подобной ситуацией.