Samba/Usershares
С версии Samba 3.0.23 появилась возможность непривилегированным пользователям (non-root) создавать, модифицировать и удалять свои собственные ресурсы для публикации их в сети.
Рассмотрим создание такого ресурса на примере Alt Workstations 9. Создадим папку и дадим доступ всем на просмотр (без аутентификации).
Приводим конфигурационный файл Samba (/etc/samba/smb.conf) к следующему виду:
[global]
usershare path = /var/lib/samba/usershares
usershare max shares = 100
usershare allow guests = yes
usershare owner only = yes
workgroup = WORKGROUP
server string = Samba Server Version %v
log file = /var/log/samba/log.%m
max log size = 50
security = user
passdb backend = tdbsam
load printers = yes
cups options = raw
map to guest = Bad User
[homes]
comment = Home Directories
browseable = no
writable = yes
[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
guest ok = no
writable = no
printable = yes
Данный конфигурационный файл отличается от конфигурации по-умолчанию в Alt WS 9 добавлением опции "map to guest = Bad User" (не берем в расчет комментарии и пустые строки). Данная опция позволяет воспользоваться опублекованным ресурсом без аутентификации, в режиме Гостя.
Как видно из конфигурации, пользователи могут создавать и публиковать свои папки в директории /var/lib/samba/usershares.
Смотрим права на эту папку:
alt-ws-9 ~ # ls -la /var/lib/samba/usershares
итого 36
drwxrwx--T 6 root sambashare 4096 дек 19 11:50 .
В этой директории создавать папки могут только члены группы sambashare.
Добавляем пользователя в эту группу:
alt-ws-9 ~ # usermod -aG sambashare user
alt-ws-9 ~ # groups user
user : user wheel uucp proc cdrom floppy cdwriter audio radio users scanner xgrp vboxusers video camera sambashare vmusers
Также для подключения в режиме Гость устанавливаем следующие права на папку:
alt-ws-9 ~ # chmod 1775 /var/lib/samba/usershares
После добавление пользователя в группу необходимо перелогиниться. После перезагрузки пользователь может создавать и публиковать папки.
Добавление папки через интерфейс командной строки
Добавление папки через графический интерфейс
Открываем проводник (Caja): Меню - Мой компьютер
Заходим в директорию /var/lib/samba/usershares, создаем папку и публикуем ее:
После этого пользователи в сети могут подключаться к сетевому ресурсу.