Мы недавно мигрировали на Samba 4.4.16 (от 3.5.15).
Наша конфигурация содержит много долей, которые имеют групповой доступ только (@group или +group), которые отображаются на группы Unix. Вот выборка конфигурации:
[global]
bind interfaces only = yes
interfaces = lo eth0
netbios name = OURSERVER
server string = Office Intranet (OURSERVER) Server Version %v
workgroup = WORKGROUP
domain master = yes
preferred master = yes
os level = 34
dns proxy = no
log level = 3
log file = /var/log/samba/log.%m
max log size = 50
nmbd bind explicit broadcast = No
printcap name = cups
name resolve order = wins hosts
passdb backend = tdbsam:/etc/samba/passdb.tdb
obey pam restrictions = yes
passwd chat debug = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
security = user
encrypt passwords = yes
map to guest = Bad User
wins support = Yes
idmap config * : backend = tdb
cups options = raw
use client driver = Yes
hosts allow = 127.0.0.1 192.168.0.0/24
case sensitive = no
invalid users = root
username map script = /bin/echo
restrict anonymous = 2
[homes]
comment = Home Directories
path = /data/home/%u
hide files = /.*/
veto files = /.*/lost+found/bin/httpd/public/.vacation.*/.forward/
follow symlinks = No
create mask = 0755
read only = No
[Stuff]
comment = All your base are belong to us
path = /data/shares/stuff
hide files = /.*/
veto files = /.*/lost+found/bin/httpd/public/.vacation.*/.forward/
follow symlinks = No
access based share enum = Yes
create mask = 0770
directory mask = 0770
force group = entitled
force user = docman
read only = No
valid users = @entitled
Это продолжает работать smbclient -L OurServer
:
$ smbclient -L OURSERVER
WARNING: The "syslog" option is deprecated
Enter WORKGROUP\funster's password:
Domain=[OURSERVER] OS=[Windows 6.1] Server=[Samba 4.4.16]
Sharename Type Comment
--------- ---- -------
homes Disk Home Directories
funster Disk Home Directories
Stuff Disk All your base are belong to us
IPC$ IPC IPC Service (Office Intranet (OURSERVER) Server Version 4.4.16)
Server Comment
--------- -------
Workgroup Master
--------- -------
WORKGROUP
Но не на smbtree
или Наутилус, потому что ни один не просит пароль по умолчанию:
$ smbtree
WORKGROUP
\\OURSERVER Office Intranet (OURSERVER) Server Version 4.4.16
Однако:
$ smbtree -Ufunster%p4ssw0rd
WORKGROUP
\\OURSERVER Office Intranet (OURSERVER) Server Version 4.4.16
\\OURSERVER\funster Home Directories
\\OURSERVER\IPC$ IPC Service (Office Intranet (OURSERVER) Server Version 4.4.16)
\\OURSERVER\homes Home Directories
\\OURSERVER\Stuff All your base are belong to us
Без restrict anonymous = 2
, анонимные логины позволяются, НО Наутилус и smbtree
шоу только homes
совместно используйте даже при том, что другие доступны непосредственно.
Как я могу вызвать Наутилус и smbtree
попросить пароль так, чтобы это видело доли группы?
Как обозначено в @Robert Riedl комментарий страница справочника для smbtree проясняют что -N
--no-pass
переключатель подавит нормальный запрос пароля.
Возможности, которые приходят на ум и решения, следующие.
1) Возможно, что псевдоним был установлен для smbtree
можно проверить это с командой alias | grep smbtree
и если Вы производитесь подобные alias smbtree='smbtree -N'
или alias smbtree='smbtree --nopass'
можно удалить псевдоним с командой unalias smbtree
2) Вы обнаружили ошибку и должны сообщить об этом. так, чтобы это могло быть раздавлено разработчиками.
3) Единственным другим путем я знаю, которых это может произойти, то, если Вы определяете раздел как Гостевой Сервис в smb.conf при помощи guest ok = yes
строка в конфигурации доли. См. эту выборку из связанной страницы справочника
If this parameter is yes for a service, then no password is required to connect to the service. Privileges will be those of the guest account.
This parameter nullifies the benefits of setting restrict anonymous = 2
See the section below on security for more information about this option.
Default: guest ok = no
Решение этого состоит в том, чтобы удалить guest ok = yes
из конфигурации доли так, чтобы это вернулось к значению по умолчанию.
Если, поскольку Вы предполагаете, это связано с присвоением группы:
Если пользовательский параметр силы будет также установлен, то группа, указанная в группе силы, переопределит набор основной группы в пользователе силы.
force group (S)
Это указывает название группы UNIX, которое будет назначено значением по умолчанию> основная группа для всех пользователей, соединяющихся с этим сервисом.
Это полезно для совместно использования файлов путем обеспечения, что весь доступ к файлам на> сервис будет использовать именованную группу для их проверки полномочий. Таким образом> присваивающиеся полномочия для этой группы в файлы и каталоги в> этот сервис администратор Samba может ограничить или позволить совместно использовать этих файлов.
В Samba 2.0.5 и выше этого параметра расширил функциональность следующим образом. Если название группы, перечисленное здесь, имеет '+' символ, предварительно ожидаемый к нему затем, текущему пользователю, получающему доступ к доле только, присвоили значение по умолчанию основной группы этой группе, если им уже назначают членом той группы. Это позволяет администратору решать, что только пользователи, которые уже находятся в конкретной группе, создадут файлы с набором владения группы той группе. Это дает более прекрасную гранулярность присвоения владения. Например, группа силы установки = +sys подразумевает, что только пользователям, которые уже находятся в группе sys, присвоят их основную группу по умолчанию sys при доступе к этой доле Samba. Все другие пользователи сохранят свою обычную основную группу.
Default: force group =
Example: force group = agroup
Погружаться глубже во все вещи посещение самбы здесь.
Источники:
http://manpages.ubuntu.com/manpages/trusty/man1/alias.1posix.html
http://manpages.ubuntu.com/manpages/xenial/man1/unalias.1posix.html
https://www.samba.org/samba/docs/current/man-html/smb.conf.5.html