Настройка Samba nas4free

Установка и запуск Samba

Установка выполняется из репозитория одной командой:

dnf install samba

Разрешаем автостарт сервиса и запускаем его:

systemctl enable smb —now

И проверим, что сервис запустился: 

systemctl status smb

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

* в данном примере мы подключаемся к серверу Samba с IP-адресом 192.168.1.15.

Если мы настроили сервер правильно, система должна запросить пароль на подключение к Samba. Отказываемся его вводить. На данном этапе проверка закончена.

Сетевая корзина

При удалении файлов из общей папки, данные удаляются навсегда. Но мы можем настроить сетевую корзину — скрытый каталог, в который будут перемещаться удаляемые с самбы объекты.

Открываем конфигурационный файл:

vi /etc/samba/smb.conf

Создаем шару:

   comment = Snap Directories
   path = /data/recycle
   public = yes
   browseable = yes
   writable = yes
   vfs objects = recycle
   recycle:repository = .recycle/%U
   recycle:keeptree = Yes
   recycle:touch = Yes
   recycle:versions = Yes
   recycle:maxsize = 0
   recycle:exclude = *.tmp, ~$*
   recycle:exclude_dir = /tmp

* где:

  • vfs objects = recycle — использовать подсистему recycle.
  • recycle:repository — где хранить удаленные объекты. В данном примере удаленные файлы попадут в скрытый каталог .recycle к котором создастся каталог с именем пользователя, удалившего файл или папку.
  • recycle:keeptree — удалять объекты с сохранение дерева каталогов.
  • recycle:touch — изменить ли дату изменения файла при его перемещении в корзину.
  • recycle:versions — при удалении файлов с совпадающими именами, добавлять номер версии.
  • recycle:maxsize — не помещать в корзину файлы, размер которых больше заданного параметра (в байтах). В данном примере, помещать файлы любого размера.
  • recycle:exclude — исключить файлы.
  • recycle:exclude_dir — исключить каталог.

Создаем каталог и задаем права:

mkdir /data/recycle

chmod 777 /data/recycle

Перезапускаем самбу:

systemctl restart smb

Пробуем зайти в сетевой каталог Recycle и создать, а после удалить файл. Он должен оказаться к скрытой папке .recycle.

Для автоматической чистки сетевой корзины можно создать скрипт:

mkdir /scripts

vi /scripts/cleanrecycle.sh

#!/bin/bash
recyclePath=»/data/recycle/.recycle»
maxStoreDays=»30″
/usr/bin/find $recyclePath -name «*» -ctime +$maxStoreDays -exec rm {} \;

* в данном скрипте мы ищем все файлы в каталоге /data/recycle/.recycle, которые старше 30 дней и удаляем их.

Разрешаем запуск скрипта:

chmod +x /scripts/cleanrecycle.sh

Создаем задание в планировщике:

crontab -e

0 5 * * * /scripts/cleanrecycle.sh

* в данном примере мы будем запускать скрипт по очистке сетевой корзины каждый день в 05:00.

⇡#Установка

Если всё прошло успешно, то появится меню загрузчика, в котором надо выбрать пункт Install. В самом процессе установки ничего сложного нет. Русский язык поддерживается, так что достаточно внимательно читать сообщения и вводить необходимые данные. Если сомневаетесь в каких-то параметрах, то просто не меняйте их. Важных этапов в процессе установки несколько. Во-первых, лучше выбрать корректный часовой пояс и в конце указать, что часы показывают не UTC-время. Во-вторых, инсталлятор попросит ввести пароль для пользователя root — запишите его куда-нибудь, хотя он вряд ли понадобится. В-третьих, установщик попросит выбрать диск, на который будет установлена ОС

Тут опять-таки важно не ошибиться и выбрать нужный накопитель. Вручную указать разделы на диске установщик не позволяет

После окончания установки в настройках BIOS именно этот накопитель надо будет указать в качестве первого загрузочного диска, а флешку просто вытащить.

Установка openmediavault

Смотреть все изображения (23)

Смотреть всеизображения (23)

⇡#Базовая настройка

Логин по умолчанию admin, пароль — openmediavault. Этот пароль веб-администратора рекомендуется сразу же сменить на свой, более надёжный

Обратите внимание на общую схему работу веб-интерфейса. В меню слева находится дерево разделов, при выборе которых справа открываются различные параметры, разбитые иногда на отдельные вкладки

Для некоторых пунктов вверху есть несколько вариантов действий: изменить, удалить, проверить и так далее. Для большинства предлагаются просто переключатели или поля для выбора/ввода данных. Так вот, после изменения параметра чаще всего надо ещё и нажать кнопку сохранения, а потом и кнопку применения, всплывающую через несколько секунд вверху в отдельном уведомлении жёлтого цвета. Без этой последовательности действий изменения сохраняться не будут.

После смены пароля надо, конечно, установить последние обновления: в соответствующем разделе кликаем «Проверка», выбираем все пакеты, жмём «Обновить» и ждём, пока все не загрузится и не установится. В соседнем разделе включаем синхронизацию времени с NTP-сервером. Нелишним будет также включить S.M.A.R.T. для мониторинга состояния дисков. В общих параметрах можно выбрать частоту опроса, установить ограничения на проверку (вот тут как раз первый пример неудачной локализации) и задать лимиты температуры. В соседней вкладке нужно включить мониторинг вручную — для каждого диска по отдельности. Наконец, на последней вкладке можно задать расписание периодических проверок накопителей.

В разделе «Диски» можно очистить накопители — это может пригодиться перед форматированием и созданием массива, если на накопителях остались какие-то данные и разделы. Тут же настраивается соотношение уровня шума и производительности (AAM), время ухода в спящий режим, а также включается кеширование записи — если все эти функции HDD в принципе поддерживает. Выбирайте параметры на свой вкус.

Настройка Samba в Ubuntu 16.04

Начнем, как обычно, с установки. Установка Samba Ubuntu вместе со всеми необходимыми компонентами выполняется командой:

Когда все будет установлено, можно переходить к настройке. Сначала создайте резервную копию оригинального файла конфигурации Samba:

После создания резервной копии, создайте свой файл конфигурации, этой командой:

Сначала укажем глобальные настройки файлового сервера. Для этого вставьте в файл такие строки:

Рассмотрим подробнее что значат эти строки.

  • workgroup — рабочая группа, как уже говорилось должна одинакова на всех машинах
  • netbios name — имя компьютера, которое будет отображаться в Windows;
  • log file — адрес файла, куда будут складываться сообщения об ошибках и другая информация;
  • security — по умолчанию выполнять аутентификацию на уровне пользователя;
  • name resolve order — очередность разрешения IP адресов по NetBIOS имени. bcast — означает отправить в локальную сеть широковещательный запрос. Если все компьютеры между которыми планируется взаимодействие находятся в одной сети этот вариант оптимальный;
  • passdb backend — способ хранения паролей пользователей;
  • unix password sync — синхронизация паролей пользователей samba с локальными паролями Unix;
  • map to guest — указывает, когда пользователю будет предоставляться гостевой доступ. Доступно три значения — never — никогда, bad user — когда такого пользователя не существует, bad password — когда пароль введен неверно,

Когда завершите создание конфигурационного файла, переходим к вопросу как расшарить папку Ubuntu для Windows.

Настройка Samba в Debian

Настройки Samba находятся в файле /etc/samba/smb.conf. Этот файл содержит общие настройки для Samba, а также сведения об общих ресурсах. Обычно в Debian предоставляются неплохие настройки по умолчанию, которые позволяют начать работать немедленно, что в общем не мешает взглянуть на них и внести изменения там, где это необходимо.

1. Базовые настройки

Первое что вам встретится в верхней части группы глобальных настроек  — настройка workgroup. Эта опция определяет имя рабочей группы Windows, частью которой станет ваш сервер. Значение по умолчанию — WORKGROUP, так как такое же значение, по умолчанию в задано в Windows. Если вы изменяли настройки рабочей группы в Windows, измените их также и здесь.

Следующая опция позволит ограничить доступ к вашему серверу. Если вы хотите ограничить доступ к общему ресурсу по ip адресу или маске сети, уберите символ комментария в строке где находится параметр interfaces, и укажите ip адрес или диапазон IP адресов, и интерфейс к которому они могут подключаться.

Если такой метод вам не нравится, вы можете добавить параметр hosts allow, чтобы определить, клиентов, которые могут подключаться к общему ресурсу. Укажите IP-адрес или диапазоны адресов.

Остальные параметры из группы глобальных настроек имеют довольно обоснованные значения по умолчанию. Вам не потребуется изменять их для того чтобы запустить свои общие ресурсы. Но не стоит ограничиваться только рассмотренными нами опциями, вы можете исследовать и другие параметры, и настраивать их по своему усмотрению. Настройка Samba Debian 10 практически завершена, осталось создать общую папку и пользователя.

2. Создание общего ресурса

В конфигурационном файле, по умолчанию, уже присутствуют несколько настроек для общих ресурсов. Они дают вам возможность настроить совместное использование домашних папок пользователей системы и принтеров. А доступ к каталогу печати уже открыт. Измените значение параметра browseable на no.

Теперь попробуйте создать свой собственный общий ресурс. Существует масса опций, которые вы можете использовать для своего общего ресурса Samba, но в этом руководстве будут рассмотрены лишь наиболее используемые из них.

Во-первых, дайте имя своему общему ресурсу, и поместите это имя в скобки.

В следующей строке напишите краткий комментарий, описывающий общий ресурс.

Затем задайте путь, эквивалентный абсолютному пути к общей папке.

Выберите, будет ли папка отображаться в файловом менеджере или же ее нужно будет подключать вручную.

Хотите ли вы, чтобы пользователи имели права на запись в общий ресурс или могли подключить его только для чтения?

Смогут ли гости получить доступ к общему ресурсу? В терминах Samba гости — это анонимные пользователи, для которых не существует записи в настройках доступа к общему ресурсу. Если выразиться короче, хотите ли вы защитить общий ресурс паролем, или ограничить доступ к ресурсу только для отдельных пользователей?

Если гости не будут иметь доступ к общей папке, то у кого он будет?

Ну вот и все. Есть еще и другие опции и другие способы выполнить эти базовые шаги, но они дадут вам в итоге приблизительно тот же результат. Если вы точно знаете что вам нужно, этих опций вам будет достаточно. Если соединить все что мы написали выше — у нас получится что-то вроде этого:

Сохраняем и закрываем файл. Затем перезагружаем Samba.

3. Создание пользователя

Для подключения к общей папке, если только вы не используете гостевой доступ, вам потребуется настроить учетные записи пользователей Samba. Это очень быстро, и потребует всего одной команды.

После этого вам будет предложено ввести пароль для этого пользователя. Это пароль, которым будут защищены доступные ему общие ресурсы.

⇡#Общие папки, пользователи и права доступа

OMV использует традиционную систему прав доступа, состоящую из групп и входящих в них пользователей. По умолчанию есть только один — администратор. Для других людей лучше всего завести отдельные аккаунты, которые будут входить в группу users. Для них достаточно задать имя и пароль. Опционально им можно запретить менять свои данные, а для пущей безопасности в качестве оболочки выбрать false или nologin. Кроме того, для некоторых служб вроде того же клиента BitTorrent создаются отдельные служебные аккаунты. Всё это нужно для управления правами доступа к папкам, которые имеют три уровня: чтение + запись, только чтение, отсутствие доступа вообще. Есть также опция, запрещающая исполнение файлов, но нам она не нужна.

При создании общих каталогов как раз и выбирается их имя, их местоположение (путь + диск или раздел) и задаются права доступа. В диалоге создания приведены только базовые параметры доступа для администраторов, обычных пользователей и всех остальных аккаунтов (служебных в основном). В разделе ACL можно более тонко настроить распределение прав и применить их к текущему каталогу или ко всем вложенным папкам тоже (рекурсивно). Вот тут важна аккуратность, а иначе пользователи или приложения не смогут использовать разрешённые директории или, наоборот, получат слишком много свободы.

Кроме того, для удобства пользователей можно завести им личные каталоги. Для этого надо создать ещё один общий ресурс и указать его в качестве пути для таких каталогов.

⇡#Настройка FTP и SMB

Почти готово! Осталось лишь открыть доступ к общим каталогам по FTP или SMB/CIFS. Остальные сервисы — NFS или Rsync — домашним пользователям ни к чему. Основным способом работы с NAS в этом случае будет именно SMB, родной для Windows-систем. Опять-таки сначала включаем сам сервис

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

Опции сервера времени, WINS и локального мастера дома особо не нужны.

На соседней вкладке включается сетевой доступ к общим папкам

Здесь стоит обратить внимание на ряд параметров. Пункт «Опубликованы» на самом деле определяет, будет ли активен гостевой доступ к папке, без ввода логина и пароля

«Видимый» указывает на видимость общего ресурса в списке папок, в противном же случае путь к нему надо будет вводить вручную. Опция «Корзина» при удалении данных помещает их в специальную папку .recycle, откуда они будут окончательно удалены лишь через заданный промежуток времени. Эта папка, как и любые другие файлы с каталогами с точкой в начале имени, по умолчанию имеет атрибут «Скрытый».

Для FTP-сервера настройка, в общем, аналогична — его надо включить и выбрать общие папки, к которым будет предоставлен доступ. Опцию «Требовать допустимую оболочку» лучше выключить, а опцию «Сводка» (в оригинале resume) включить. «Анонимный FTP» позволяет, как понятно из названия, работать с сервером вообще любым подключившимся к нему клиентам. Если планируется открыть доступ к FTP из Интернета, а это самый типичный случай, то её, понятное дело, включать не надо. А вот пассивный режим, возможно, стоит задействовать, равно как и функции бана. Назначение остальных настроек вполне ясно из их названия и описания.

Общий доступ к папке Ubuntu

Сначала давайте создадим общую папку доступную всем. То есть с анонимным доступом, без авторизации samba.

Создайте папку, к которой будем открывать доступ, например:

После того как папка создана, нужно сделать для нее правильные права доступа. Следующие команды разрешают доступ к папке для всех и делают владельцем nobody:

Следующим шагом будет описать папку allaccess в файле настройки samba:

Теперь ваш конфигурационный файл должен выглядеть вот так:

Рассмотрим подробнее опции, которые были здесь использованы:

  • path — путь к папке, которую нужно расшарить;
  • browsable — будет ли папка отображаться в списке доступных шар;
  • writable — будет ли папка доступна для записи;
  • read only — папка доступна только для чтения;
  • guest ok, public — будет ли разрешен гостевой доступ;
  • only guest — если установлено yes, то папка будет доступна только гостям;
  • hosts allow — ip адреса, с которых можно получить доступ к этому серверу;
  • valid users — по умолчанию могут авторизоваться все пользователи, если в этом параметре передать список пользователей, то авторизоваться смогут только они;
  • create mask — маска прав для создаваемых файлов.

Чтобы применить изменения, перезапустите сервер Samba:

Настройка Samba Ubuntu 16.04 для анонимного доступа завершена. Теперь вы можете проверить доступность общей папки allaccess из Windows, для этого нажмите Win+R и выполните:

Вы увидите нашу папку. Если не увидите, проверьте еще раз конфигурацию. Доступ к папке можно получить без авторизации samba. Настойка Samba шары с доступом без авторизации завершена.

Также вы можете подключится к этому серверу из Linux с помощью Nautilus для этого достаточно набрать адрес smb://ip-сервера, в разделе другие места:

Доступ к папке по логину и паролю

Теперь создадим каталог, в который вход будет разрешен только авторизованным пользователям.

Открываем конфигурационный файл samba:

vi /etc/samba/smb.conf

Добавляем настройку для новой папки:

    comment = Staff Folder
    path = /data/staff
    public = no
    writable = yes
    read only = no
    guest ok = no
    create mask = 0777
    directory mask = 0777
    force create mode = 0777
    force directory mode = 0777

* эти настройки, во многом, похожи на те, что использовались в примере выше. Вот основные различия:

  • path = /data/staff — используем новый путь до папки.
  • public = no — запрещаем публичный доступ.
  • guest ok = no — не разрешаем гостевое подключение.

Создаем каталог для новой папки:

mkdir /data/staff

Задаем права на созданный каталог:

chmod 777 /data/staff

Создаем пользователя в системе Linux:

useradd staff1

* где staff1 — имя пользователя.

Задаем пароль для пользователя:

passwd staff1

Теперь создадим пользователя в samba:

smbpasswd -a staff1

Перезапускаем samba:

systemctl restart smb

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

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

Подготовка сервера

1. Время

Для корректного отображения дат, необходимо позаботиться о синхронизации времени. Для этого будем использовать демон chrony. Установим его:

dnf install chrony

Разрешим автозапуск и стартанем сервис:

systemctl enable chronyd

systemctl start chronyd

2. Брандмауэр

По умолчанию, в системах CentOS брандмауэр запрещает все соединения. Необходимо разрешить сервис samba. Выполняем команду:

firewall-cmd —permanent —add-service=samba

Применяем настройки:

firewall-cmd —reload

3. SELinux

Система безопасности SELinux будет блокировать все попытки подключиться к удаленной папке. Необходимо создать политику для каталога, в котором будут находиться общие папки. Для этого устанавливаем пакеты для управления политиками:

dnf install policycoreutils setroubleshoot

Теперь создаем само правило. Например, если мы планируем использовать каталог /data, то вводим команды:

mkdir /data

* на случай, если каталога еще нет, создаем его.

semanage fcontext -a -t samba_share_t «/data(/.*)?»

restorecon -R -v /data

Или можно просто отключить SELinux.

Вход в Nas4Free web

На находящемся в той же подсети ноутбуке или настольном компе входим в браузер, набираем в адресной строке 192.168.1.29 — те IP, который мы NAS задали. Если видим экран с запросом имени и пароля — у нас получилось.

PS: Кстати, сама установка — раза в два быстрее, чем это все прочитать и в 10 — чем написать :)

Если не видим (1) проверяем, что NAS нормально загрузился путем подключения монитора и клавы.
(2) проверяем сеть — пингуем 192.168.1.29, убеждаемся что комп и NAS в одной подсети, те оба имеют IP вида 192.168.1.X, смотрим, что роутер в той же подсети и т.д.

16) Если ввести пару логин пароль (по умолчанию admin и nas4free) , можно видеть WEB гуй nas4free

Первоначальная настройка

Идём в System- General setup
Здесь можно выбрать
Language (язык). Я, впрочем, предпочитаю английский
Hostname (имя NAS) — для первого NAS менять умолчание nas4free смысла нет, но если NAS побее одного в одной сети — это сделует сделать
Domain (домен) — значение по умолчанию local вполне разумно, но обратиться к NAS как http://nas4free.local вы сможете только если в сети, обычно на роутере, настроен локальный DNS сервер этого домена.
DNS IP 4 — должно быть как на картинке. Если не так — значит в прошлых пунктах вы что-то недоделали — стоит задать.
Time zone (часовой пояс) — стоит задать ваш
Enable NTP (включить запрос времени с сервера времени) — ставим галочку, более ничего не меняем. Понятно, будет работать только при наличии подключения локальной сети к Internet.

17) Дальше можно поменять пароль администратора по умолчанию во вкладке Password. Это хорошая практика, но не так чтобы обязательная в доверенной домашней сети.PS: Пароль root и пароль пользователя admin от вебгуя совпадают.

18) Мы настроили всего-ничего, но хорошая привычка — после каждого изменения — сохранять конфиг. Только сохранять его ВО ВНЕ NAS :)

System- Backup/Restore — и жмём кнопку Download configuration, сохраняем конфигурационный файл. В нём содержатся все настройки NAS. Если что-то пойдёт не так — вы сможете установить NASD а чистую флешку, скормить системе этот конфиг — и все настройки на месте.

Так же рекомендую почитать:

Настройка Samba (шара) на nas4freeНастройка DLNA/UPnP на nas4freeУстановка zabbix agent на nas4free (embedded версия)

⇡#Плагины и OVM-Extras

Если же сайт вам доступен, то пакет можно найти в разделе Guides, в секции Installation. После скачивания файла openmediavault-omvextrasorg идём в раздел плагинов, здесь кликаем «Загрузить», открываем этот файл и ждём собственно загрузки. Затем ищем его в списке плагинов,  выбираем и жмём «Установить». После этого в меню появится новый пункт OMV-Extras. Вот здесь-то и можно включать репозитории с дополнительным ПО — для BitTorrent нужен Sync. После включения и обновления в разделе плагинов появится нужный нам transmissionbt. Впрочем, можете сами покопаться и найти для себя что-то интересное — большинство плагинов добавляет в меню новые пункты или же предоставляет дополнительные опции в диалогах настройки других компонентов.

Некоторые опции Samba

Рассмотрим некоторые полезные опции, которые могут пригодится при настройке Samba.

1. hosts allow

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

Пример использования параметра.

hosts allow = comp1, 192.168.1., 192.168.160.0/255.255.252.0

* в нашем примере мы разрешим доступ только для компьютера comp1, компьютеров из сетей 192.168.1.0/24 и 192.168.160.0/22.

2. hosts deny

Параметр аналогичный hosts allow, только он наоборот — запрещает доступ для хостов и сетей. Например:

hosts deny = comp2, 192.168.2., 192.168.164.0/255.255.252.0

hosts deny = ALL EXCEPT 192.168.3.

3. interfaces

По умолчанию samba использует все сетевые интерфейсы, кроме локальной петли (127.0.0.1). Параметр interfaces позволит указать, на каком сетевом адаптере файловый сервер должен принимать запросы. Пример:

interfaces = ens32 192.168.1.15/24 192.168.2.15/255.255.255.0

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделитесь с друзьями:
Технарь
Добавить комментарий

Нажимая на кнопку "Отправить комментарий", я даю согласие на обработку персональных данных и принимаю политику конфиденциальности.