Мы настраиваем Samba-серверы под ключ для организации надёжного и безопасного файлового обмена между Linux и Windows. Наш опыт — более 50 проектов, от небольших офисных NAS до высоконагруженных кластеров с репликацией. Гарантируем доступность 99.9% и полную интеграцию с существующей инфраструктурой — Active Directory, LDAP, системами мониторинга.
Типичная ситуация: компания переходит с Windows Server на Linux, но нужно сохранить привычные UNC-пути и права доступа. Или требуется бюджетное решение для файлового хранилища без потери функциональности. Samba с правильно настроенными ACL и оптимизированными параметрами SMB2/3 решает эти задачи.
Как интегрировать Samba с Active Directory?
Для корпоративного использования интеграция с AD обязательна. Мы настраиваем Samba как член домена с помощью net ads join. На этапе конфигурации подключаем winbind для маппинга пользователей и групп AD на Linux-идентификаторы. Это позволяет использовать единую учётную запись для доступа к файлам.
# Установка Samba с поддержкой AD
apt install samba smbclient winbind
# Настройка /etc/samba/smb.conf
[global]
workgroup = DOMAIN
security = ads
realm = DOMAIN.LOCAL
# ... остальные параметры
# Ввод в домен
net ads join -U administrator
# Запуск winbind
systemctl enable --now winbindПосле этого пользователи AD могут подключаться к шарам без создания локальных аккаунтов. Права назначаются через группы AD — Samba автоматически применяет их к ACL.
Почему Samba может тормозить и как это исправить?
Медленная работа Samba часто связана с неправильным alignment сетевых буферов или использованием SMB1. В первую очередь отключите SMB1 и включите SMB3. Оптимизируйте socket options:
[global] socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=131072 SO_SNDBUF=131072 Также проверьте производительность дисковой подсистемы: используйте SSD для метаданных и настройте кэш записи. Для WAN-соединений увеличьте server max protocol = SMB3 и включите server signing = mandatory. Наши инженеры проводят нагрузочное тестирование с помощью smbclient и dd для поиска узких мест.
Базовая конфигурация Samba
Начинаем с установки пакетов и минимального конфигурационного файла:
apt install samba samba-common-bin Файл /etc/samba/smb.conf состоит из глобальной секции и секций шар:
[global]
workgroup = MYGROUP
server string = File Server
netbios name = FILESERVER
server role = standalone server
log file = /var/log/samba/log.%m
max log size = 1000
map to guest = bad user
usershare allow guests = no
min protocol = SMB2
max protocol = SMB3
[data]
path = /srv/samba/data
valid users = @sambagroup
browseable = yes
writable = yes
create mask = 0664
directory mask = 0775
force group = sambagroup
[public]
path = /srv/samba/public
browseable = yes
guest ok = yes
writable = no
read only = yesПараметр map to guest = bad user автоматически перенаправляет неизвестных пользователей на гостевой доступ, иначе Windows-клиенты получат ошибку аутентификации при попытке подключения к публичной шаре.
Пользователи и группы
Samba хранит пароли в собственной базе, отдельно от системных учётных записей:
# Создание системного пользователя и группы
useradd -M -s /sbin/nologin jsmith
groupadd sambagroup
usermod -aG sambagroup jsmith
# Добавление в базу Samba
smbpasswd -a jsmith
smbpasswd -e jsmith
# Проверка
pdbedit -L -v jsmithДля крупных организаций рекомендуем бэкенд LDAP (passdb backend = ldapsam), что упрощает централизованное управление.
Права доступа: Linux ACL + Samba
Правильная схема прав — комбинация групповых ACL и наследуемых прав:
# Группа sambagroup может читать и писать
setfacl -R -m g:sambagroup:rwX /srv/samba/data
setfacl -R -d -m g:sambagroup:rwX /srv/samba/data
# Остальные — только чтение
setfacl -R -m o::r-X /srv/samba/data
Параметры create mask и directory mask в smb.conf ограничивают максимальные права для новых файлов, создаваемых через Samba.
Этапы работы
- Аудит текущей инфраструктуры (сеть, домен, ёмкость дисков).
- Проектирование структуры шар и схемы прав.
- Установка и настройка Samba, оптимизация под нагрузку.
- Создание пользователей/групп, интеграция с AD/LDAP.
- Настройка ACL на файловой системе.
- Конфигурация файрвола и обнаружения (wsdd).
- Подключение мониторинга (Prometheus + Grafana + samba_exporter).
- Тестирование с Windows и Linux-клиентами, стресс-тест.
- Передача документации и обучение администраторов.
Что входит в настройку под ключ
- Развёртывание Samba standalone или в домене.
- Настройка ACL с наследованием прав.
- Интеграция с AD/LDAP через winbind.
- Оптимизация производительности (буферы, кэш, SMB3).
- Мониторинг:
samba_exporterдля Prometheus, алерты в Grafana. - Резервное копирование конфигурации и данных (rsync + snapshot).
- Документация по администрированию и восстановлению после сбоев.
- 30 дней сопровождения после ввода в эксплуатацию.
Подробнее о настройке ACL
Мы используем setfacl с рекурсивными правилами и наследованием прав. create mask и directory mask в smb.conf ограничивают максимальные права создаваемых файлов. Для тонкой настройки используйте acl group control = yes в глобальной секции.
Сравнение протоколов: SMB vs NFS vs FTP
| Критерий | SMB (Samba) | NFS | FTP |
|---|---|---|---|
| Поддержка Windows | Встроенная, UNC-пути | Требуется клиент | Через клиент |
| Безопасность | Шифрование SMB3 | Kerberos/SSH | FTPS |
| Производительность | Высокая (async) | Выше для Linux | Средняя |
| ACL | POSIX + Windows | POSIX | Ограничен |
Мониторинг и диагностика
Проверяйте синтаксис, статус и логи через утилиты командной строки:
# Проверка синтаксиса testparm
# Список активных подключений smbstatus
# Тест подключения smbclient //fileserver/data -U jsmith
# Логи journalctl -u smbd tail -f /var/log/samba/log.smbdДля сетевой фильтрации откройте порты и установите wsdd для обнаружения сервера в Windows:
# Разрешение трафика SMB и WS-Discovery
u
fw allow from 192.168.1.0/24 to any port 445,139 proto tcp
u
fw allow from 192.168.1.0/24 to any port 137:138 proto udp
# Установка и запуск wsdd
apt install wsdd
systemctl enable --now wsddТипичные проблемы: NT_STATUS_ACCESS_DENIED при записи — проверьте и Samba ACL, и права файловой системы. NT_STATUS_CONNECTION_REFUSED — проверьте, запущен ли smbd и открыты ли порты.
Сроки и стоимость
Стандартный файловый сервер настраивается за 1-2 дня. При интеграции с AD/LDAP или сложной схеме ACL — до 5 дней. Стоимость рассчитывается индивидуально после аудита. Экономия по сравнению с Windows Server достигает 50% без потери функциональности.
Закажите настройку Samba под ключ — получите консультацию инженера с 5+ лет опыта. Мы гарантируем надёжность и производительность вашего файлового хранилища.
Свяжитесь с нами для оценки вашего проекта — ответим в течение 2 часов.







