Samba/Usershares: различия между версиями
Нет описания правки |
Нет описания правки |
||
Строка 1: | Строка 1: | ||
{{DISPLAYTITLE:Usershares}} | {{DISPLAYTITLE:Usershares}} | ||
Usershare — возможность непривилегированным пользователям (non-root) создавать, модифицировать и удалять свои собственные ресурсы для публикации их в сети. | |||
Возможность публиковать свои папки пользователем настроена по умолчанию в дистрибутивах Альт, поэтому чаще всего первый раздел данной статьи можно пропустить. | |||
== Предварительная настройка == | |||
< | |||
Для создания общего ресурса пользователем: | |||
# В конфигурационном файле Samba ({{path|/etc/samba/smb.conf}}) должны быть заданы следующие переменные: | |||
#:<syntaxhighlight lang="ini">[global] | |||
# ----------------------- User Shares Options ------------------------- | |||
usershare path = /var/lib/samba/usershares | usershare path = /var/lib/samba/usershares | ||
usershare max shares = 100 | usershare max shares = 100 | ||
usershare allow guests = yes | usershare allow guests = yes | ||
usershare owner only = yes | usershare owner only = yes | ||
</syntaxhighlight> | |||
#:где {{path|/var/lib/samba/usershares}} — каталог, в котором будут храниться описания пользовательских общих ресурсов. | |||
# Пользователь должен входить в группу sambashare: | |||
#:<syntaxhighlight lang="bash"> | |||
$ groups | |||
user wheel uucp proc cdrom floppy cdwriter audio radio users sambashare camera vboxusers xgrp scanner | |||
</syntaxhighlight> | |||
{{Note| Для добавления пользователя в группу sambashare, нужно выполнить команду: | |||
<syntaxhighlight lang="bash"># gpasswd -a <имя_пользователя> sambashare</syntaxhighlight> | |||
и перезапустить службы smbd и nmbd: | |||
<syntaxhighlight lang="bash"># systemctl restart smb | |||
# systemctl restart nmb</syntaxhighlight> | |||
Далее следует завершить сеанс и войти в него вновь. }} | |||
== Управление пользователями == | |||
{{Note|В данном разделе описывается работа с локальной (tdbsam) базой данных пользователей Samba.}} | |||
Samba использует отдельную от системной базу данных пользователей. Для возможности доступа пользователя к папке (если запрещен гостевой доступ) необходимо внести его в базу данных Samba и установить пароль для доступа к общим ресурсам (он может совпадать с основным паролем пользователя). Следует учитывать, что в базу данных Samba можно добавлять пользователей, которые уже есть в системе. | |||
Добавить пользователя в базу данных Samba можно, выполнив команду: | |||
<syntaxhighlight lang="bash"># smbpasswd -a <имя_пользователя></syntaxhighlight> | |||
Например: | |||
< | <syntaxhighlight lang="bash"># smbpasswd -a user | ||
New SMB password: | |||
user | Retype new SMB password: | ||
Added user user.</syntaxhighlight> | |||
Можно создать отдельного пользователя, которому разрешить только доступ к Samba-ресурсам и запретить полноценный вход в систему: | |||
< | <syntaxhighlight lang="bash"># useradd user_samba -d /dev/null -s /usr/bin/nologin | ||
# smbpasswd -a user_samba</syntaxhighlight> | |||
Просмотр списка пользователей Samba: | |||
<syntaxhighlight lang="bash"># pdbedit -L | |||
user_samba:501:</syntaxhighlight> | |||
Смена пароля пользователя Samba: | |||
= | <syntaxhighlight lang="bash"># smbpasswd <имя_пользователя></syntaxhighlight> | ||
== Настройка общего доступа == | |||
=== В файловом менеджере === | |||
Предоставление общего доступа к папке: | |||
* Файловый менеджер Thunar: | |||
*# В контекстном меню папки выбрать пункт «Свойства»; | |||
*# В открывшемся окне на вкладке «Общий доступ» отметить пункт «Разрешить общий доступ к этой папке», настроить параметры публикации и нажать кнопку «ОК» | |||
*:[[Изображение:Samba_usershare_thunar.png|Thunar. Предоставление общего доступа к папке]] | |||
* Файловый менеджер Caja: | |||
*# В контекстном меню папки выбрать пункт «Опции публикации»; | |||
*# В открывшемся окне отметить пункт «Разрешить общий доступ к этой папке», настроить параметры публикации и нажать кнопку «ОК» | |||
*:[[Изображение:Samba_usershare_caja.png|Caja. Предоставление общего доступа к папке]] | |||
=== В консоли === | |||
* | {{Note|Все действия выполняются с правами пользователя.}} | ||
* / | |||
* "Everyone:R" | Команды для настройки общего доступа: | ||
* "guest_ok=y" | |||
<syntaxhighlight lang="bash">$ net usershare add <имя_ресурса> <путь> [комментарий] [пользователь:{R|D|F}] [guest_ok={y|n}] | |||
$ net usershare delete <имя_ресурса> | |||
$ net usershare list | |||
$ net usershare info</syntaxhighlight> | |||
Например, открыть доступ к папке {{path|Общедоступные}}: | |||
<syntaxhighlight lang="bash">$ net usershare add Share /home/user/Общедоступные/ "" "Everyone:R" "guest_ok=y"</syntaxhighlight> | |||
* Share — название опубликованного ресурса; | |||
* /home/user/Общедоступные — опубликованная папка; | |||
* "" — пустой комментарий; | |||
* "Everyone:R" — права доступа; | |||
* "guest_ok=y" — возможность подключения без аутентификации. | |||
Просмотр списка опубликованных ресурсов: | Просмотр списка опубликованных ресурсов: | ||
< | <syntaxhighlight lang="bash">$ net usershare list | ||
Share | |||
</syntaxhighlight> | |||
Просмотр информации об опубликованных ресурсах: | Просмотр информации об опубликованных ресурсах: | ||
< | <syntaxhighlight lang="bash">$ net usershare info | ||
[Share] | |||
path=/home/user/Общедоступные | |||
comment= | |||
usershare_acl=Everyone:R,Unix User\user:F, | |||
guest_ok=y | |||
</syntaxhighlight> | |||
Отменить публикацию папки: | |||
<syntaxhighlight lang="bash">$ net usershare delete Share | |||
</syntaxhighlight> | |||
== Просмотр публичных ресурсов == | |||
=== В файловом менеджере === | |||
Для подключения к общей папке достаточно выбрать закладку «Обзор сети»/«Просмотр сети» в файловом менеджере и затем нужный компьютер. | |||
Также можно указать в адресной строке файлового менеджера протокол и адрес сервера (smb://<имя_сервера>/<имя_ресурса> или smb://<IP_сервера>/<имя_ресурса>) и нажать {{button|Enter}}. Будут показаны ресурсы с общим доступом: | |||
[[Изображение:Samba_usershare_thunar2.png|Thunar. Просмотр публичных ресурсов]] | |||
Для доступа к папке, к которой запрещен анонимный доступ, необходимо указать имя и пароль пользователя Samba: | |||
[[Изображение: | [[Изображение:Samba_usershare_thunar3.png|Thunar. Параметры подключения к общей папке]] | ||
=== В консоли === | |||
Просмотр списка доступных ресурсов на сервере: | |||
<syntaxhighlight lang="bash">$ smbclient -L <имя_сервера> -U%</syntaxhighlight> | |||
Например: | |||
<syntaxhighlight lang="bash">$ smbclient -L 192.168.0.124 -U%</syntaxhighlight> | |||
или: | |||
<syntaxhighlight lang="bash">$ smbclient -L host-01.local -U%</syntaxhighlight> | |||
{{Category navigation|title=Samba|category=Samba|sortkey={{SUBPAGENAME}}}} | {{Category navigation|title=Samba|category=Samba|sortkey={{SUBPAGENAME}}}} |
Версия от 18:03, 9 июня 2022
Usershare — возможность непривилегированным пользователям (non-root) создавать, модифицировать и удалять свои собственные ресурсы для публикации их в сети.
Возможность публиковать свои папки пользователем настроена по умолчанию в дистрибутивах Альт, поэтому чаще всего первый раздел данной статьи можно пропустить.
Предварительная настройка
Для создания общего ресурса пользователем:
- В конфигурационном файле Samba (/etc/samba/smb.conf) должны быть заданы следующие переменные:
[global] # ----------------------- User Shares Options ------------------------- usershare path = /var/lib/samba/usershares usershare max shares = 100 usershare allow guests = yes usershare owner only = yes
- где /var/lib/samba/usershares — каталог, в котором будут храниться описания пользовательских общих ресурсов.
- Пользователь должен входить в группу sambashare:
$ groups user wheel uucp proc cdrom floppy cdwriter audio radio users sambashare camera vboxusers xgrp scanner
# gpasswd -a <имя_пользователя> sambashare
и перезапустить службы smbd и nmbd:
# systemctl restart smb
# systemctl restart nmb
Управление пользователями
Samba использует отдельную от системной базу данных пользователей. Для возможности доступа пользователя к папке (если запрещен гостевой доступ) необходимо внести его в базу данных Samba и установить пароль для доступа к общим ресурсам (он может совпадать с основным паролем пользователя). Следует учитывать, что в базу данных Samba можно добавлять пользователей, которые уже есть в системе.
Добавить пользователя в базу данных Samba можно, выполнив команду:
# smbpasswd -a <имя_пользователя>
Например:
# smbpasswd -a user
New SMB password:
Retype new SMB password:
Added user user.
Можно создать отдельного пользователя, которому разрешить только доступ к Samba-ресурсам и запретить полноценный вход в систему:
# useradd user_samba -d /dev/null -s /usr/bin/nologin
# smbpasswd -a user_samba
Просмотр списка пользователей Samba:
# pdbedit -L
user_samba:501:
Смена пароля пользователя Samba:
# smbpasswd <имя_пользователя>
Настройка общего доступа
В файловом менеджере
Предоставление общего доступа к папке:
- Файловый менеджер Thunar:
- В контекстном меню папки выбрать пункт «Свойства»;
- В открывшемся окне на вкладке «Общий доступ» отметить пункт «Разрешить общий доступ к этой папке», настроить параметры публикации и нажать кнопку «ОК»
- Файловый менеджер Caja:
- В контекстном меню папки выбрать пункт «Опции публикации»;
- В открывшемся окне отметить пункт «Разрешить общий доступ к этой папке», настроить параметры публикации и нажать кнопку «ОК»
В консоли
Команды для настройки общего доступа:
$ net usershare add <имя_ресурса> <путь> [комментарий] [пользователь:{R|D|F}] [guest_ok={y|n}]
$ net usershare delete <имя_ресурса>
$ net usershare list
$ net usershare info
Например, открыть доступ к папке Общедоступные:
$ net usershare add Share /home/user/Общедоступные/ "" "Everyone:R" "guest_ok=y"
- Share — название опубликованного ресурса;
- /home/user/Общедоступные — опубликованная папка;
- "" — пустой комментарий;
- "Everyone:R" — права доступа;
- "guest_ok=y" — возможность подключения без аутентификации.
Просмотр списка опубликованных ресурсов:
$ net usershare list
Share
Просмотр информации об опубликованных ресурсах:
$ net usershare info
[Share]
path=/home/user/Общедоступные
comment=
usershare_acl=Everyone:R,Unix User\user:F,
guest_ok=y
Отменить публикацию папки:
$ net usershare delete Share
Просмотр публичных ресурсов
В файловом менеджере
Для подключения к общей папке достаточно выбрать закладку «Обзор сети»/«Просмотр сети» в файловом менеджере и затем нужный компьютер.
Также можно указать в адресной строке файлового менеджера протокол и адрес сервера (smb://<имя_сервера>/<имя_ресурса> или smb://<IP_сервера>/<имя_ресурса>) и нажать Enter. Будут показаны ресурсы с общим доступом:
Для доступа к папке, к которой запрещен анонимный доступ, необходимо указать имя и пароль пользователя Samba:
В консоли
Просмотр списка доступных ресурсов на сервере:
$ smbclient -L <имя_сервера> -U%
Например:
$ smbclient -L 192.168.0.124 -U%
или:
$ smbclient -L host-01.local -U%