Home » Полезные советы » Быстрая и простая настройка samba

Быстрая и простая настройка samba

Иногда нужно очень быстро на сервере настроить файловую шару и открыть на нее доступ. При этом нет необходимости городить какие-то сложные конфигурации, права доступа или что-то еще. Нужен просто оперативный доступ к информации без лишних вопросов.

Мне, к примеру, недавно подобное понадобилось, чтобы открыть доступ к резервным копиям, которые хранились на сервере. Самому разбираться и искать информацию не хотелось, нужно было быстро дать человеку доступ на чтение, чтобы он сам нашел все, что ему нужно.

Я не буду специально оперировать версиями операционных систем. У самбы конфиги одинаковые почти везде, где мне приходилось с ними работать, тем более в самых простых конфигурациях.

Итак, устанавливаем самбу любым подходящим способом для вашей операционной системы. Конфигурации справедливы для 3-й версии самбы. Дальше решаем, что нам нужно:

  • доступ по пользователю и паролю,
  • доступ по ip адресу,
  • доступ всем подряд без ограничений.

В зависимости от этого настройки будут немного разные.

Для доступа по паролю рисуем такой конфиг:

[global]
security = user
passdb backend = tdbsam
workgroup = MYGROUP
server string = Samba

[share]
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:

[global]
security = share
workgroup = MYGROUP
server string = Samba
map to guest = bad user

[share]
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-й версии самбы.

Если доступ будет предоставлен всем без ограничений, то простейшая конфигурация самбы будет такой:

[global]
security = user
workgroup = MYGROUP
server string = Samba
guest account = nobody
map to guest = Bad User

[share]
path = /mnt/files
browseable = Yes
guest ok = Yes
writeable = Yes
public = yes

Не забываем сделать права для всех на папку:

# chmod 0777 /mnt/files

Перезапускаем самбу и пробуем зайти. Должно пустить без лишних вопросов.

Вот так буквально за 5 минут можно организовать простейший файловый сервер с помощью samba. А часто сложнее и не надо. Для какой-нибудь файловой помойки подойдет самый последний вариант.

Для более сложных конфигураций у меня есть отдельные статьи:

Не понравилась статья и хочешь научить меня администрировать? Пожалуйста, я люблю учиться. Комментарии в твоем распоряжении. Расскажи, как сделать правильно!

Помогла статья? Есть возможность отблагодарить автора

12 комментариев

  1. Андрей

    День добрый! Можно ли сделать настройки так, чтобы одна папка share была для всех а вторая например share2 по паролю?

  2. Андрей

    Не совсем понял. У меня не получается, если в секции global есть параметр passdb backend = tdbsam то и во вторую папку пароль спрашивает

  3. Андрей

    по крайней мере если подключаться с клиентской машины с Windows 10

  4. Птенчики_в_гнезде

    Подскажите пожалуйста опции для такой шары: нужно, чтобы у каждого пользователя на сервере samba была своя папка, в которую они могли бы и писать и читать, а другие пользователи этой сети могли бы только читать.

    • Это делается на уровне прав доступа к файлам. Самый простой вариант — создаете системных пользователей, добавляете их в самбу. Делаете для каждого директорию и выставляете соответствующие права — у владельца на запись, у остальных на чтение.

      А вообще, если не очень разбираетесь в самбе, лучше использовать готовый дистрибутив для разворачивания файлового сервера, например OpenMediaVault.

  5. Просьба подсказать в чем может быть проблема. Очень режится скорость при скачивании файлов но только с Linux , если качать с Винды то скорость 5-6 мегабайт, если с Линукса то 2-3 максимум.

  6. Добрый день. Почему то конфиг по паролю не пускает, после ввода share-user и пароля выскакивает учетная запись виндовс и предлагает ввести пароль на pc-windows\share-user, что это может быть? остальные конфиги исправно работают.

Добавить комментарий

Ваш e-mail не будет опубликован.