Как настроить общие ресурсы Samba для доступа только определенных пользователей?

31

У меня есть массив RAID10, установленный на Ubuntu Server 12.04. Я создал несколько папок в точке монтирования и хочу следующую функциональность.

Пользователей будет 4, из них 3 пользователя Windows: «один», «два» и «три». 'four' - это медиа-стример, которому нужен только доступ к общему ресурсу MEDIA. Один-два-три должны иметь полный доступ к общему медиа-ресурсу и собственным личным ресурсам (для документов), к которым не имеют доступа другие пользователи, кроме них

В настоящее время User Four работает отлично (имеет полный доступ к папке MEDIA и не может получить доступ к папкам, принадлежащим другим пользователям). Проблема в том, что, когда вы вошли в систему как другой пользователь, я не могу получить доступ ни к одному из них; (попытался использовать действительных пользователей = и использовать chmod, чтобы добавить разрешения безрезультатно).

TL; DR: мне нужно знать, как правильно настроить Samba, чтобы ограничить доступ к определенным общим ресурсам для определенных пользователей и разрешить всем им доступ к одной общей папке (все файлы на монтировании RAID10).

Liam
источник

Ответы:

45

У каждого пользователя samba должна быть нормальная учетная запись linux.

  1. Убедитесь, что каждый пользователь может получить доступ к общей папке мультимедиа на стороне Unix (без samba); Кроме того, вы можете установить force userвsmb.conf
  2. Убедитесь, что у каждого пользователя установлен пароль Samba. Вы можете установить его сsudo smbpasswd -a your_user
  3. Посмотрите /etc/samba/smb.conf: проверьте, установлена ​​ли линия security = userв [GLOBAL]разделе
  4. Установите свои акции /etc/samba/smb.conf, см. Пример

Пример акции:

[allaccess]
    path = /media/common
    read only = no
    writeable = yes
    browseable = yes
    valid users = one, two, three, four
    create mask = 0644
    directory mask = 0755
    ; if you set this, all files get written as this user
    force user = one

Это будет доступно через \\yourserver\allaccess

Один пользовательский ресурс:

[special]
    path = /home/two/onlytwo
    read only = no
    writeable = yes
    browseable = yes
    valid users = one
    create mask = 0640
    directory mask = 0750

Перезапустите сервер samba после изменений с помощью:

sudo service smbd restart
Phoibos
источник
2
Вы, сэр, бог, маски и пользователь силы были тем, что мне было нужно все время, но я не понимал.
Лиам
4
Я думаю, что «только для чтения» и «доступный для записи» являются так называемыми «инвертированными синонимами» друг для друга. Не нужно устанавливать их обоих.
Майк Дин,
1
Потрясающе! Я сделал все, кроме шага № 2. Я никогда не видел, чтобы это упоминалось где-либо еще при настройке акций самбы Благодарность!!
PatrickSteele
Не указывайте имя ресурса как временное, если хотите, чтобы оно было доступно для записи.
SergA