Открываем общий доступ к папкам и файлам через Samba
- Recluse
- 21.05.2016
- 40 922
- 5
- 18.03.2019
- 13
- 12
- 1
Установка и первоначальная настройка Samba
Установливаем samba через менеджер пакетов:
CentOS/RedHat
yum install samba
Debian/Ubuntu:
aptitude install samba
После установки открываем конфиг /etc/samba/smb.conf, и начинаем его править под свои нужды. В секции [Global] правим следующие параметры:
Если ваш компьютер является еще в добавок и маршрутизатором, и имеет более чем 1 сетевую карту, будет не лишним указать, какой из имеющихся интерфейсов слушать:
interfaces = eth1
bind interfaces only = yes
Указываем нужное имя рабочей группы. По умолчанию стоит WORKGROUP.
workgroup = WORKGROUP
Проверяем, есть ли параметр security, если нет, то выставляем ему значение user.
security = user
Доступ без авторизации
Расшарим папку music по адресу /var/music для всех пользователей (авторизация не будет требоваться). Имя папки, с которым её будут видеть пользователи которые зашли на шару задается в квадратных скобках (в данном случае - Music).
[Music]
browseable = yes
create mode = 0766
guest ok = yes
path = /var/music
writeable = yes
В данную папку будет иметь доступ кто угодно, но не сможет записывать (загружать, заливать) и удалять файлы без авторизации. Для того, чтобы дать неавторизованному пользователю полный доступ для работы с файлами и папками, воспользуемся параметром force user
. Данный параметр отвечает за то, под каким пользователем будут выполняться операции с файлами в данной директории - например, если мы создадим пользователя samba-guest, и выдадим ему полные права на данную папку, а в force user пропишем значение samba-guest, то дадим полный доступ к директории:
[Music]
browseable = yes
create mode = 0766
force user = samba-guest
guest ok = yes
path = /var/music
writeable = yes
Доступ с авторизацией
Теперь перейдем к тому, чтобы разрешить доступ к папке только определенному пользователю - к примеру, пользователю crazysysadmin.
Samba как и большинство приложений Linux использует для своих нужд уже существующих пользователей системы, поэтому нужно использовать либо уже имеющуюся учетную запись, либо создать новую. Создать нового пользователя можно командой useradd:
useradd crazysysadmin -m -G users
Затем нужно добавить пользователя в Samba:
smbpasswd -a crazysysadmin
И активировать его:
smbpasswd -e crazysysadmin
Если нужно поменять пароль пользователю samba, то это можно сделать следующей командой:
smbpasswd crazysysadmin
Теперь сделаем доступ к шаре music только для чтения для неавторизованных пользователей, и полный доступ для пользователя crazysysadmin:
[Music]
admin users = crazysysadmin
browseable = yes
comment = Music
create mode = 0766
guest ok = yes
path = /var/music
writable = yes
Как должно быть понятно из примера выше, то все отличие заключается в строчке admin users - туда задаются пользователи с правами полного доступа на директорию. Так же туда можно добавлять и целые группы из системы - для этого перед её именем нужно поставить символ @ - например @admins.
Если же нужно сделать так, чтобы никто кроме пользователя crazysysadmin не имел доступа к этому каталогу (даже на просмотр), то просто меняем параметр guest ok на no:
[Music]
admin users = crazysysadmin
browseable = yes
comment = Music
create mode = 0766
guest ok = no
path = /var/music
writable = yes
Добавить комментарий