23.10. Создание общедоступных сетевых каталогов
Проблема
В компании есть несколько рабочих групп или отделов, для которых нужно организовать общий доступ к файлам. Вы хотите создать для них общие каталоги, чтобы упростить совместную работу и обмен документами, используя Samba для контроля доступа.
Решение
Для создания общих сетевых каталогов сначала настройте Samba-сервер, добавив параметры доступа в конфигурационный файл smb.conf
. В этом примере мы создадим каталог для группы «QA»:
[qa-group]
comment = QA group's shared files
path = /var/share/qagroup
valid users = helix patti devdas @qausers
browseable = yes
writable = yes
Директива comment
описывает назначение общего каталога. path
указывает на физическое расположение каталога на сервере, а valid users
ограничивает доступ, разрешая вход только указанным пользователям и группе @qausers
. Директива writable
позволяет пользователям записывать файлы, а browseable
определяет, будет ли каталог видимым для пользователей при просмотре сети.
Пошаговая настройка общих сетевых каталогов
1. Откройте конфигурационный файл Samba, обычно расположенный по пути /etc/samba/smb.conf
.
2. Добавьте новый раздел для группы. Например, для общего каталога отдела разработчиков можно добавить:
[dev-group]
comment = Development team's shared files
path = /var/share/devgroup
valid users = @devteam
browseable = yes
writable = yes
3. Перезагрузите службу Samba, чтобы применить изменения:
# systemctl restart smb
# systemctl restart nmb
Эти команды перезапускают основные службы Samba: smb
и nmb
. После этого новые каталоги станут доступными для указанных пользователей.
Рекомендации по безопасности для общих каталогов
Чтобы повысить безопасность, следите за настройками доступа и видимости общих каталогов:
- Используйте
browseable = no
для скрытия каталогов от всех, кроме назначенных пользователей. - Для особо конфиденциальных документов используйте шифрование и передавайте их через безопасные соединения, такие как OpenSSH или rsync на базе SSH.
- Применяйте для каталогов строгие разрешения на уровне файловой системы, например, с помощью команды
chmod
, чтобы обеспечить доступ только определённым пользователям.
В конфигурации Samba также можно использовать директиву read only
, чтобы разрешить или запретить запись в каталог:
read only = no
Полезные команды и параметры для администрирования
При управлении доступом к файлам и каталогам Samba поддерживает ряд полезных команд и параметров, которые помогут вам настроить систему под требования компании:
force user
иforce group
: назначают права владельца и группы, чтобы все файлы создавались от имени одного пользователя.create mask
: устанавливает права доступа для вновь создаваемых файлов. Например,create mask = 0770
предоставляет полные права пользователю и группе, запрещая доступ всем остальным.directory mask
: аналогичноcreate mask
, но применяется к каталогам.
Работа с журналами Samba
Для мониторинга использования общих сетевых ресурсов включите ведение логов в Samba. Включение параметра log level
позволяет отслеживать события на уровне действий пользователей:
log level = 2
Значение уровня можно настраивать от 0 (нет логов) до 10 (максимальная детализация), что позволяет отслеживать активность и потенциальные проблемы с доступом.
См. также