1

У меня работает файловый сервер Samba, и мне было интересно, как я могу создать несколько учетных записей пользователей с разными разрешениями. Например, на данный момент у меня есть пользователь smbusr, но когда я делаю ssh на общем ресурсе, я могу читать, писать, выполнять и даже перемещаться из каталога samba и выполнять какие-либо действия на реальном компьютере. Это плохо, потому что я хочу иметь возможность выдавать свой IP, чтобы друзья / семья могли использовать сервер, но я не хочу, чтобы они могли делать что-либо.

Я хочу заблокировать пользователя в общей папке samba (и во всех подкаталогах). В конце концов я хотел бы несколько профилей, таких как (smbusr_R, smbusr_RW, smbguest_R, smbguest_RW).

У меня также есть второй вопрос, связанный с этим, является ли SSH лучшим способом подключения с других машин Unix? А как насчет VPN? Или просто монтируем так:

mount -t ext3 -o user=username //ipaddr/share /mnt/mountpoint

Эта команда монтирования выше той же самой вещи, что и vpn? Это действительно смущает меня.

Спасибо за помощь, ребята, дайте мне знать, если вам нужно увидеть какие-либо файлы или вам нужна дополнительная информация.

РЕДАКТИРОВАТЬ: Вот мое определение доли самбы:

[SAMBA]
path = /samba
browseable = yes
guest ok = no
read list = smbusr_RO
write list = smbusr

EDIT2: Вот мой весь файл smb.conf:

http://pastebin.com/cUGEF3yi

1 ответ1

1

Да, Samba в настоящее время может поддерживать ACL. он занимает несколько строк в разделе глобальных переменных и список разрешенных и запрещенных списков ACL на акцию. Тем не менее, для их поддержки может потребоваться некоторая настройка разрешений вашей базовой файловой системы, поскольку файловые системы ext по умолчанию не выполняют ACL.

вот учебник: http://aisalen.wordpress.com/2007/08/10/acls-on-samba/

и общая ссылка на файл SMB.conf: http://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html.

Изменить: попробуйте изменить конфигурацию вашего ресурса следующим образом. обратите внимание, что группам ОС требуется знак «@» впереди, и этот список записи не подразумевает чтение привилегий, поэтому поместите обе группы в список чтения.

добавить их в глобалы:

invalid users = root
valid users = @smbusers, @smbusers_RO
create mask = 02775
directory mask = 02770

[SAMBA]
comment = Debian File Server With Read Write
invalid users=nobody,nobody
valid users=@smbusr,@smbusr_RO
path = /samba
browseable = yes
guest ok = no
read list = @smbusr,@smbusr_RO
write list = @smbusr
writeable=yes

также запустите sudo testparm -s, чтобы проверить целостность вашего конфигурационного файла.

с точки зрения разрешений файловой системы, вы можете выбрать -R ваши файлы, которые будут принадлежать «root:smbusers», так что ваша группа разрешений контролирует, кто может писать, а ваше другое разрешение может контролировать, кто может читать (smb позаботится, чтобы разрешения на чтение предоставляются только 'smbusers_RO'). затем я рекомендую использовать SetGID, чтобы все новые папки, созданные в общем ресурсе, принадлежали:smbusers, и все ваши smbusers имели к ним доступ.

chown -R root:smbusers /samba 
chmod -R 2775 /samba

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .