Сервер Samba Создание нескольких профилей разрешений пользователей

Сервер Samba Создание нескольких профилей разрешений пользователей

У меня запущен файловый сервер 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? Это меня действительно сбивает с толку.

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

EDIT: Вот мое определение общего ресурса Samba:

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

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

http://pastebin.com/cUGEF3yi

решение1

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

вот руководство: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», чтобы проверить целостность файла конфигурации.

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

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

Связанный контент