The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Ошибка samba при работе с acl"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Samba, вопросы интеграции Unix и Windows (Public)
Изначальное сообщение [ Отслеживать ]

"Ошибка samba при работе с acl"  +/
Сообщение от AlekseyShibanov email(ok) on 12-Ноя-09, 23:26 
Доброго времени суток!
Обнаружил ошибку в samba, которая не дает мне пустить народ на сервер.
С английским я знаком слабо.(Написать письмо не смогу).
Проанализируйте пожалуйста содержимое и может кто-то напишет баг-репорт.
Думаю и в предыдущих версиях проблема тоже будет наблюдаться.

root@nas:/md0/samba/projects# uname -a
Linux nas 2.6.27.39-nas #21 Wed Nov 11 15:14:04 MSK 2009 i686 GNU/Linux

root@nas:/etc# cat issue
Debian GNU/Linux squeeze/sid


Есть следующая структура каталогов.

[/]
+- md0
|     +- samba
|     |    +- linux
|     |    +- projects
|     |   ...
|     |    +- Видео
|     |    +- Литература
|     |    +- Музыка
|     |    +- Электроника
|     |


Конфиг samba. Только ключевые вещи.

[global]
hide unreadable = yes
...

[data]
    path = /md0/samba
    browsable = yes
    writable = yes
    vfs objects = recycle
    recycle:repository = recycle
    recycle:keeptree = yes
    recycle:versions = yes
    recycle:touch = yes
    valid users = @DOMAIN\"Пользователи домена"
    force group = sambashare

Все работает почти нормально.
Проблема:
При подключении к data пользователь user1 видит все каталоги, т.к. является
их владельцем. При подключении пользователя user2, права которого согласно
acl позволяют читать каталог [Видео] и несколько других каталогов, не видит их,
но если сделать cd, то он туда заходит и все дальше видит.

У каталога Видео нет флага w, и из-за этого он считается самбой за нечитабельным.

root@nas:/md0# ls
backups  samba

root@nas:/md0# ls -l samba
root@nas:/md0# ls -l
drwxr-x---   2 root root 112   1 17:29 backups
drwxrwx---+ 11 root root 312  12 13:13 samba

root@nas:/md0# getfacl samba
# file: samba
# owner: root
# group: root
user::rwx
user:rtorrent:r-x
group::---
group:пользователи\040домена:r-x
group:gnasadmins:rwx
mask::rwx
other::---

root@nas:/md0# cd samba
root@nas:/md0/samba# ls -l
итого 5
drwx------   7 user1 sambashare  176 Ноя 12 10:55 linux
drwxrwx---+ 18 user1 sambashare  608 Ноя 12 16:48 projects
drwx------+  3 user1 sambashare   72 Ноя 12 16:47 recycle
drwxrwx---+ 63 user1 sambashare 2808 Ноя 12 10:22 software
drwxrwx---+  6 rtorrent rtorrent    152 Ноя 12 09:11 torrent
drwxrwx---+  3 user1 sambashare 2104 Ноя 12 12:04 Видео
drwxrwx---+  9 user1 sambashare  304 Ноя 12 10:53 Литература
drwxrwx---+  2 user1 sambashare   48 Ноя 12 07:59 Музыка
drwxrwx---+ 11 user1 sambashare  392 Ноя 12 08:56 Электроника
root@nas:/md0/samba#


root@nas:/md0/samba# getfacl Видео Электроника
# file: Видео
# owner: user1
# group: sambashare
user::rwx
group::---
group:пользователи\040домена:r-x
mask::rwx
other::---
default:user::rwx
default:group::---
default:other::---

# file: Электроника
# owner: user1
# group: sambashare
user::rwx
group::---
group:gelectronic:rwx
mask::rwx
other::---
default:user::rwx
default:group::---
default:group:gelectronic:rwx
default:mask::rwx
default:other::---


root@nas:/md0/samba# id user1
uid=1000(user1) gid=1000(user1) группы=1000(user1),10004(пользователи домена),10016(администраторы домена),10059(gnasadmins),10014(gelectronic),10008(BUILTIN\users),10007(BUILTIN\administrators)

root@nas:/md0/samba# id user2
uid=10001(user2) gid=10004(пользователи домена) группы=10004(пользователи домена),10059(gnasadmins),10014(gelectronic),10008(BUILTIN\users)

root@nas:/md0/samba# smbclient -Uuser1 \\\\192.168.71.13\data
Enter user1's password:
Domain=[DOMAIN] OS=[Unix] Server=[Samba 3.4.2]
smb: \> ls
  .                                   D        0  Thu Nov 12 13:13:01 2009
  ..                                  D        0  Thu Nov 12 12:27:44 2009
  software                            D        0  Thu Nov 12 10:22:48 2009
  recycle                             D        0  Thu Nov 12 16:47:03 2009
  linux                               D        0  Thu Nov 12 10:55:45 2009
  Музыка                        D        0  Thu Nov 12 07:59:26 2009
  Видео                          D        0  Thu Nov 12 12:04:33 2009
  torrent                             D        0  Thu Nov 12 09:11:50 2009
  Литература                D        0  Thu Nov 12 10:53:14 2009
  Электроника              D        0  Thu Nov 12 08:56:39 2009
  projects                            D        0  Thu Nov 12 16:48:07 2009

44711 blocks of size 33553920. 36854 blocks available
smb: \> quit
root@nas:/md0/samba#

... Пользователь видит все каталоги

root@nas:/md0/samba# smbclient -Uuser2 \\\\192.168.71.13\\data
Enter user2's password:
Domain=[DOMAIN] OS=[Unix] Server=[Samba 3.4.2]
smb: \> ls
  .                                   D        0  Thu Nov 12 13:13:01 2009
  ..                                  D        0  Thu Nov 12 12:27:44 2009
  software                            D        0  Thu Nov 12 10:22:48 2009
  torrent                             D        0  Thu Nov 12 09:11:50 2009
  Электроника              D        0  Thu Nov 12 08:56:39 2009
  projects                            D        0  Thu Nov 12 16:48:07 2009

44711 blocks of size 33553920. 36854 blocks available

Видно не все, но зайти можно.

smb: \> cd Видео
smb: \\> ls
  .                                   D        0  Thu Nov 12 12:04:33 2009
  ..                                  D        0  Thu Nov 12 13:13:01 2009
  Still life.avi                        65004990  Thu Oct 29 22:08:39 2009
  Brayan Adams - I do it for You.avi        76568576  Thu Oct 29 22:08:31 2009

44711 blocks of size 33553920. 36854 blocks available
smb: \\> quit
root@nas:/md0/samba#

Вот что samba пишет в логи:
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:3347(posix_get_nt_acl)
  posix_get_nt_acl: called for file .//Видео
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:2498(canonicalise_acl)
  canonicalise_acl: Access ace entries before arrange :
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:2511(canonicalise_acl)
  canon_ace index 0. Type = allow SID = S-1-1-0 other SMB_ACL_OTHER ace_flags = 0x0 perms ---
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:2511(canonicalise_acl)
  canon_ace index 1. Type = allow SID = S-1-5-21-1701787264-3151614174-2072985285-513 gid 10004 (пользователи домена) SMB_ACL_GROUP ace_flags = 0x0 perms r-x
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:2511(canonicalise_acl)
  canon_ace index 2. Type = allow SID = S-1-22-2-104 gid 104 (sambashare) SMB_ACL_GROUP_OBJ ace_flags = 0x0 perms ---
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:2511(canonicalise_acl)
  canon_ace index 3. Type = allow SID = S-1-5-21-1701787264-3151614174-2072985285-1108 uid 10002 (user1) SMB_ACL_USER_OBJ ace_flags = 0x0 perms rwx
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:817(print_canon_ace_list)
  print_canon_ace_list: canonicalise_acl: ace entries after arrange
  canon_ace index 0. Type = allow SID = S-1-5-21-1701787264-3151614174-2072985285-1108 uid 10002 (user1) SMB_ACL_USER_OBJ ace_flags = 0x0 perms rwx
  canon_ace index 1. Type = allow SID = S-1-22-2-104 gid 104 (sambashare) SMB_ACL_GROUP_OBJ ace_flags = 0x0 perms ---
  canon_ace index 2. Type = allow SID = S-1-5-21-1701787264-3151614174-2072985285-513 gid 10004 (пользователи домена) SMB_ACL_GROUP ace_flags = 0x0 perms r-x
  canon_ace index 3. Type = allow SID = S-1-1-0 other SMB_ACL_OTHER ace_flags = 0x0 perms ---
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:2498(canonicalise_acl)
  canonicalise_acl: Default ace entries before arrange :
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:2511(canonicalise_acl)
  canon_ace index 0. Type = allow SID = S-1-1-0 other SMB_ACL_OTHER ace_flags = 0x0 perms ---
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:2511(canonicalise_acl)
  canon_ace index 1. Type = allow SID = S-1-3-1 gid 104 (sambashare) SMB_ACL_GROUP_OBJ ace_flags = 0x0 perms ---
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:2511(canonicalise_acl)
  canon_ace index 2. Type = allow SID = S-1-3-0 uid 10002 (user1) SMB_ACL_USER_OBJ ace_flags = 0x0 perms rwx
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:817(print_canon_ace_list)
  print_canon_ace_list: canonicalise_acl: ace entries after arrange
  canon_ace index 0. Type = allow SID = S-1-3-0 uid 10002 (user1) SMB_ACL_USER_OBJ ace_flags = 0x0 perms rwx
  canon_ace index 1. Type = allow SID = S-1-3-1 gid 104 (sambashare) SMB_ACL_GROUP_OBJ ace_flags = 0x0 perms ---
  canon_ace index 2. Type = allow SID = S-1-1-0 other SMB_ACL_OTHER ace_flags = 0x0 perms ---
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:1092(map_canon_ace_perms)
  map_canon_ace_perms: Mapped (UNIX) 1c0 to (NT) 1f01ff
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:1092(map_canon_ace_perms)
  map_canon_ace_perms: Mapped (UNIX) 0 to (NT) 0
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:1092(map_canon_ace_perms)
  map_canon_ace_perms: Mapped (UNIX) 140 to (NT) 1200a9
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:1092(map_canon_ace_perms)
  map_canon_ace_perms: Mapped (UNIX) 0 to (NT) 0
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:1092(map_canon_ace_perms)
  map_canon_ace_perms: Mapped (UNIX) 1c0 to (NT) 1f01ff
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:1092(map_canon_ace_perms)
  map_canon_ace_perms: Mapped (UNIX) 0 to (NT) 0
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:1092(map_canon_ace_perms)
  map_canon_ace_perms: Mapped (UNIX) 0 to (NT) 0
[2009/11/12 20:46:20, 10] smbd/posix_acls.c:2969(merge_default_aces)
  merge_default_aces: Merging zero access ACE 3 onto ACE 6.
[2009/11/12 20:46:20, 10] smbd/dir.c:1071(is_visible_file)
  is_visible_file: file .//Видео is unreadable.

Расковырять самостоятельно почему не работает я скорее всего не смогу.

Надеюсь, что вы подскажете какое-то решение.
С уважением, Алексей.

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Ошибка samba при работе с acl"  +/
Сообщение от AlekseyShibanov (ok) on 13-Ноя-09, 08:44 
>[оверквотинг удален]
>    browsable = yes
>    writable = yes
>    vfs objects = recycle
>    recycle:repository = recycle
>    recycle:keeptree = yes
>    recycle:versions = yes
>    recycle:touch = yes
>    valid users = @DOMAIN\"Пользователи домена"
>    force group = sambashare
>

Утро вечера мудренее.
Проблему решил сам. Ошибка была в переопределении группы на sambashare, на которую acl не действовали. Ликвидировал эту строчку и все стало нормально.

Всем спасибо.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру