Файловый сервер Samba. Что такое SAMBA? Быстрая и простая настройка samba Что такое samba
Иногда нужно очень быстро на сервере настроить файловую шару и открыть на нее доступ. При этом нет необходимости городить какие-то сложные конфигурации, права доступа или что-то еще. Нужен просто оперативный доступ к информации без лишних вопросов.
Мне, к примеру, недавно подобное понадобилось, чтобы открыть доступ к резервным копиям, которые хранились на сервере. Самому разбираться и искать информацию не хотелось, нужно было быстро дать человеку доступ на чтение, чтобы он сам нашел все, что ему нужно.
Я не буду специально оперировать версиями операционных систем. У самбы конфиги одинаковые почти везде, где мне приходилось с ними работать, тем более в самых простых конфигурациях.
Итак, устанавливаем самбу любым подходящим способом для вашей операционной системы. Конфигурации справедливы для 3-й версии самбы. Дальше решаем, что нам нужно:
- доступ по пользователю и паролю,
- доступ по ip адресу,
- доступ всем подряд без ограничений.
В зависимости от этого настройки будут немного разные.
Для доступа по паролю рисуем такой конфиг:
Security = user passdb backend = tdbsam workgroup = MYGROUP server string = Samba path = /mnt/shara valid users = @users force group = users create mask = 0660 directory mask = 0771 writable = yes browseable = yes
# useradd share-user -M -G users -s /sbin/nologin
Импортируем этого пользователя в самбу и задаем пароль:
# smbpasswd -a share-user
И пробуем зайти на шару по адресу:
\\ip-сервера\share
Чтоб организовать доступ в зависимости от ip адреса , делаем такие настройки в smb.conf:
Security = share workgroup = MYGROUP server string = Samba map to guest = bad user path = /mnt/files browsable = yes writable = yes guest ok = yes read only = no hosts allow = 192.168.0.171
В данном случае полный доступ будет у адреса 192.168.0.171. Чтобы добавить всю подсеть, то указать нужно следующее:
Hosts allow = 192.168.0.
Комбинировать можно разные подсети и адреса, разделяя их пробелами. Для того, чтобы отключить доступ каким-то отдельным адресам из разрешенной подсети, можно сделать вот так:
Hosts allow = 192.168.0. except 192.168.0.15
Доступ будет разрешен всей подсети 192.168.0.0/24, кроме адреса 192.168.0.15.
Делаем перезапуск самбы и проверяем.
Если у вас установлена samba 4, то эта конфигурация не заработает и вы получите ошибку:
WARNING: Ignoring invalid value "share" for parameter "security"
Чтобы доступ по ip нормально заработал, вам необходимо внести следующие изменения в приведенный выше конфиг:
Security = user map to guest = Bad Password
Остальные параметры оставляете те же. После этого доступ по ip будет работать и на 4-й версии самбы.
Если доступ будет предоставлен всем без ограничений , то простейшая конфигурация самбы будет такой:
Security = user workgroup = MYGROUP server string = Samba guest account = nobody map to guest = Bad User path = /mnt/files browseable = Yes guest ok = Yes writeable = Yes public = yes
Не забываем сделать права для всех на папку:
# chmod 0777 /mnt/files
Перезапускаем самбу и пробуем зайти. Должно пустить без лишних вопросов.
Вот так буквально за 5 минут можно организовать простейший файловый сервер с помощью samba. А часто сложнее и не надо. Для какой-нибудь файловой помойки подойдет самый последний вариант.
Для более сложных конфигураций у меня есть отдельные статьи:
Онлайн курс по Linux
Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «Администратор Linux» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров. Что даст вам этот курс:- Знание архитектуры Linux.
- Освоение современных методов и инструментов анализа и обработки данных.
- Умение подбирать конфигурацию под необходимые задачи, управлять процессами и обеспечивать безопасность системы.
- Владение основными рабочими инструментами системного администратора.
- Понимание особенностей развертывания, настройки и обслуживания сетей, построенных на базе Linux.
- Способность быстро решать возникающие проблемы и обеспечивать стабильную и бесперебойную работу системы.