Коротко: если каталог имеет разрешение 700 на Linux-машине, являющейся владельцем, мне не разрешено открывать каталог из Windows. Если я меняю его на 750 или 770, он работает. То же самое происходит с файлами (но с 600 против 640/660).
Более подробное описание: Переустанавливаю наш сервер под CentOS7. Мы использовали самбу для простого обмена каталогами. SELinux выключен, и брандмауэр разрешает соединения.
more /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
uname -r
3.10.0-862.2.3.el7.x86_64
sestatus
SELinux status: disabled
firewall-cmd --zone=public --list-all |grep samba
rule family="ipv4" source address="XXX.YYY.ZZ.1/24" service name="samba" log prefix="samba" accept
rpm -qa |grep samba-4
samba-4.7.1-6.el7.x86_64
В testuser
принадлежит testgroup
id
uid=1001(testuser) gid=1000(testgroup) groups=1000(testgroup),100(users)
Конфигурационный файл Samba (некоторые параметры, такие как write_list, не должны быть обязательными; valid_users должно быть достаточно - я был в отчаянии):
[global]
# ...usual staff like master, group, netbios-name...
load printers = no
printing = cups
veto files = /*.[mM][pP]3
interfaces = lo enp3s0f0
security = user
[TestUser]
path = /home/testuser
writeable = yes
browseable = yes
read only = no
valid users = testuser
write list = testuser
read list = testuser
printable = no
create mask = 0640
directory mask = 710
force create mode = 0640
force directory mode = 0710
inherit acls = no
inherit permissions = no
Я протестировал все файлы / каталоги с помощью getfacl /home/testuser/SOME/PATH
и все они имеют разрешения 600/700 или 660/770.
Теперь проблема: После предоставления IP-адреса сервера на Windows-машине меня спрашивают о паре пользователь / пароль, а затем я вижу с Windows-машины все общие ресурсы, доступные на сервере Linux - пока все хорошо. Журнал Samba указывает, что testuser
успешно подключился к услуге TestUser
. Я выбираю свою долю, а затем ...
... если у группы нет разрешения на чтение файла (или rx для каталогов), мне не разрешено открывать файл / каталог из окон, но я могу делать все, что захочу на Linux-машине после входа в систему с ssh
. Если я изменю разрешение на 644/750, я также смогу работать с этими файлами из Windows.
Если samba заставляет записывать файлы / каталоги с 600/700, тогда создается пустой файл / каталог, и сразу же приложение Windows сообщает мне, что у меня нет прав для работы с ним.
Я протестировал множество различных настроек масок файлов и каталогов, создания и т. Д. В /etc/samba/smb.conf
и я не могу запустить его.
У меня нет идей, как это решить. Любая помощь будет оценена.
Пожалуйста, попробуйте изменить владельца папки. Также проверьте базовую конфигурацию, как показано ниже. Надеюсь, это сработает.
[TestUser]
path = /home/testuser
browsable =yes
writable = yes
guest ok = yes
chown -R testuser:testgroup /home/testuser/
chmod -R 700 /home/testuser/