Дистрибутивы для NAS-сервера
Собрать и настроить NAS-сервер можно даже дома. Рассказываем о дистрибутивах для организации файлового сервера.
NAS-сервер, или Network Attached Storage, — это система хранения данных, которая предоставляет к ним доступ пользователям и другим устройствам по принятым сетевым протоколам.
NAS востребованы в качестве:
- недорогого основного хранилища данных,
- резервного хранилища,
- сервера для совместной работы над документами в небольших компаниях, где есть несколько ПК, объединенных в одну локальную сеть.
Для настройки NAS-сервера не нужен IT-отдел, собрать сервер можно даже дома. Но для корректной работы понадобятся дистрибутивы — программы, обеспечивающие работу хранилища данных, файловой системы, доступа к файлам и контроля функций системы. О них и расскажем.
Коротко о NAS-серверах
NAS-система состоит из следующих частей:
- жестких дисков, объединенных в RAID-массив.
- корпуса — аппаратной части, в которой находятся материнская плата, процессор, блок питания, диски.
- расширений под HDD или SSD, портов ввода/вывода (также размещены в корпусе).
- ОС для управления системой и доступом к файлам.
Также в общей системе — клиенты, подключенные по сети.
Внешне NAS-система выглядит как коробка, которая похожа на системный блок.
NAS-системы с двумя или четырьмя отсеками для жестких дисков подходят для домашнего использования. Системы с большим количеством отсеков чаще используют в бизнесе.
Что умеют NAS-системы
Основные задачи таких систем:
- Хранить данные, объединять диски в массивы.
- Предоставлять к ним доступ, как общий, так и к отдельным файлам, разделам и папкам — для пользователей и групп пользователей.
- Организовывать бэкапы: не только объединять жесткие диски в RAID-массивы с возможностью восстановить данные после сбоев, но и организовывать диски в массивы с избыточностью, защищаясь от удаления данных.
- Предоставлять клиентам возможность автономного доступа к документам и файлам в сети по различным протоколам. Как следствие, в NAS-системах есть функции синхронизации данных с устройств, которые к нему подключены, централизованное резервирование, в том числе по расписанию.
Дополнительные функции:
- Объединяться в кластеры, добавлять диски, в том числе «горячим» способом.
- Вести стриминг файлов, видео и аудио на устройства, не только на ПК, но и на ТВ.
- Организовывать метаоблако — предоставить возможность одновременной работы нескольких пользователей над одним документом в браузере.
- Также на NAS-системе можно развернуть почтовый сервер и веб-сервер, на котором можно держать, например, базу знаний компании или корпоративное хранилище.
Популярные дистрибутивы, или урезанные операционные системы, для NAS
Чтобы NAS-системы работали, нам нужна ОС. Можно использовать ОС на базе Linux — например, Ubuntu или Debian. Но они слишком требовательны, в них много излишних служб и утилит, их придется долго настраивать под NAS.
Поэтому для NAS используют дистрибутивы — специализированные урезанные операционные системы с минимумом функциональности. Они не требовательны к железу, у них нет собственной графической среды, но есть веб-интерфейс администратора.
Есть несколько популярных версий дистрибутивов:
- FreeNAS,
- NAS4Free.
- EasyNAS,
- Rockstor,
- OpenMediaVault,
- Openfiler.
Хороший дистрибутив должен соответствовать нескольким требованиям:
- легко разворачиваться,
- устанавливаться не только на жесткий диск, но и на USB,
- занимать мало места,
- предоставлять доступ к файлам по большому списку протоколов,
- предоставлять функции защиты данных.
Также важна хорошая документация, поддержка и возможность добавления расширений. Бонусом станут дополнительные полезные функции и удобство интерфейса как основного способа взаимодействия с дистрибутивом.
Развертывание и интерфейс
Дистрибутив, с которым будет невозможно работать из-за непонятного интерфейса, бесполезен. Но интерфейс должен позволять регулировать настройки.
Здесь также важны несколько параметров:
- Возможность установки дистрибутива на USB или отдельный SSD-диск. Большинство дистрибутивов предлагают такую опцию. Из нее следует возможность доступа со всех компьютеров в сети.
- Штатный пакетный менеджер для установки плагинов и обновлений. Он облегчит работу с дистрибутивом.
- Система должны быть запущена на любом оборудовании, совместимом с Debian.
Размер хранилища в случае NAS — также важное требование. Например, некоторые дистрибутивы занимают весь установочный диск, что критично для небольших NAS-систем.
Управление томами
Главная функция NAS — доступ к файлам, которые в нем хранятся. Здесь все достаточно просто: выбираем массив дисков, создаем том и добавляем сетевые папки. Но, например, FreeNAS и Rockstor работают только с целыми дисками, а не с разделами, что, возможно, будет проблемой.
Общий доступ к файлам
Дистрибутив должен поддерживать популярные сетевые протоколы, хотя бы Samba/CIFS, AFP, AFS, NFS, SFTP, HTTP, FTP и другие, для передачи данным. Скажем заранее, что все дистрибутивы из нашего списка удовлетворяют этому критерию.
Файловая система дистрибутива должна быть надежной. Если ФС не такая, можно потерять все данные при аппаратном сбое. Например, с файловой системой NTFS можно потерять данные при сбое и потом воспроизвести журнал, а у FAT даже такой возможности нет. Для NAS-систем это недопустимо. Поэтому используют отлаженную ZFS, которая сличает контрольные суммы, находит ошибки и восстанавливает данные. Также в ZFS есть функция снапшотов: она может хранить их, монтировать любой набор снимков, откатываться к предыдущим состояниям системы.
Другие «аналоги» ZFS — Btrfs или ReFS.
Документация и поддержка
В документации должно быть описано, как разворачивать дистрибутив, какие протоколы поддерживает NAS и что делать в случае ошибок. Это важно, потому что дистрибутивы NAS не так дружелюбны, как Debian, например. В UNIX-системах можно разобраться методом проб и ошибок, в NAS-дистрибутивах ОС урезанные, и такой возможности нет.
Лидер по этому критерию — дистрибутив FreeNAS. У него — одна из лучших документаций, вдобавок есть форумы сообщества пользователей.
Защита
NAS-сервер предоставляет доступ к данным с любого устройства в сети. Но это минус в контексте безопасности — данные подвергаются риску. Поэтому обеспечение безопасности — ключевая функция любого дистрибутива. Например, дистрибутивы должны предоставлять возможность шифрования, настройки правил брандмауэра и списков контроля доступа, правила использования HTTPS и безопасных протоколов передачи данных.
Расширения
Мы уже писали, что дистрибутивы — это урезанные ОС, поэтому некоторых функций может не хватать. В хорошем дистрибутиве проблема решается установкой плагинов через веб-интерфейс. Но есть нюанс: интерфейс не сообщает, помещается ли в системе очередной плагин. Об отсутствии свободного места на дисках вы можете узнать уже постфактум.
Дополнительные функции
В их числе могут быть:
- автоматическое резервное копирование томов,
- развертывание веб-сервера и стриминга видео и аудио,
- настройка для работы с облачными сервисами хранения данных,
- ограничение места под хранение для отдельных пользователей,
- дополнительные функции безопасности.
Чаще всего эти функции уже встроены, но может потребоваться и установка плагина.
Теперь рассмотрим каждый дистрибутив отдельно.
Выберите сервер под настройку NAS
Вы можете установить любой из выбранных дистрибутивов на выделенном сервере от Selectel.
FreeNAS
FreeNAS — дистрибутив 2005 года, созданного на базе BSD. Один из самых популярных: примерно миллион NAS-систем работает на FreeNAS. Это open source-дистрибутив, который развивает компания iXsystems.
Развертывание и интерфейс
Установщик текстовый, но не требует вмешательства пользователя: необходимо выбрать диск, на который установится ОС. Образ ISO дистрибутива FreeNAS весит 602 МБ, но при установке занимает весь объем диска любого размера.
Установить дистрибутив можно и на USB. На странице загрузки доступны образы обновлений, пакет плагинов.
FreeNAS — «тяжелая система». Минимальные требования — 8 ГБ RAM и 8 ГБ свободного места.
Через интерфейс есть доступ к функциям — например, настройке сетей. Есть боковая панель, которая расширяется, предоставляя доступ к подменю, чтобы получить, например, быстрый доступ в учетные записи. Поддерживается работа через консоль.
Управление томами
Файловая система FreeNAS основана на ZFS, что имеет свои преимущества:
- целостность данных,
- снапшоты — снимки локальной файловой системы,
- дедупликация,
- создание разделяемых ресурсов,
- программный RAID-Z3 (хранит три копии структур),
- организация RAID 0, 1, 5, 6, 10, 60,
- разделение отзеркалированного zpool-раздела на несколько раздельных пулов (zpool split).
Но у функций ZFS есть и недостатки: требуют много свободной памяти, потому что постоянно считает контрольные суммы. Кроме того, FreeNAS умеет работать только с целыми дисками, а не с разделами. Также из недостатков — нельзя уменьшить массив.
Доступ к файлам
Для доступа к хранилищу поддерживаются протоколы FTP, NFS, SSH, CIFS, AFP, iSCSI, SMB/CIFS, Samba, rsync для синхронизации. Для авторизации клиентов есть поддержка LDAP/Active Directory. Файловая система — ZFS.
Есть настройка ресурсов общего доступа WebDAV, с помощью которой можно просматривать содержимое определенного тома или директории из браузера.
Документация и поддержка
Один из лучших дистрибутивов в части документации: есть сайт с большим массивом информации, форумы, сообщества и книга Learning FreeNAS. Например, в документации, кроме инструкций по установке, можно найти список плагинов.
Безопасность
Можно защитить данные без сторонних решений — в дистрибутиве FreeNAS реализовано 128-, 192- или 256-битное AES-шифрование. Для процессоров, которые поддерживает инструкции AES-NI, шифрование не будет влиять на производительность.
Но в документации дистрибутива указано, что «корневая файловая система или другие компоненты ОС, такие как каталог /var, даже если это отдельная файловая система» не шифруются.
Дополнительная функция безопасности — поддержка rsync через SSH.
Расширения
FreeNAS поддерживает сторонние плагины для потокового вещания, скачивания, синхронизации или размещения собственного сервера облачных сервисов. Новые плагины добавляются в боковую панель под заголовком Plugins, настраиваются и запускаются через интерфейс.
В контексте безопасности все плагины основаны на FreeBSD jails и пакетах PBI с PC-BSD, поэтому изолированы от основной системы.
Особенные функции
Здесь можно выделить несколько дополнительный функций:
- Оптимизация системы в зависимости от железа с помощью скрипта autotune. Например, скрипт уменьшает проблемы с памятью с помощью автоподстройки значений ZFS sysctl, если в NAS-системе мало ОЗУ.
- Планирование задач с помощью заданий cron.
- Подключение NAS-сервера к домену Microsoft AD от имени доменной учетной записи. Под этой учетной записью можно работать с сервером по протоколу CIFS.
- SNMP-мониторинг.
- Отправка журналов на удаленный syslogd и отчетов по электронной почте — администратор может на графиках видеть порядок работ программного обеспечения и тенденции использования ресурсов.
NAS4Free
NAS4Free разработан на основе FreeNAS 0.7, но к iXsystems отношения не имеет. Распространяется по лицензии BSD. Сейчас называется XigmaNAS.
Развертывание и интерфейс
Настройки хранятся в XML-файле (config.xml). Установка дистрибутива возможна на USB или отдельный SSD — файл «подхватится» автоматически во время инсталляции. Установка простая, как с обычным ISO-образом.
NAS4Free похож на FreeNAS, но старых версий — как интерфейсом, так и установкой. Например, после загрузки ОС появляется консольное меню, через которое по шагам можно сменить IP, конфигурировать сетевые интерфейсы, установить систему, выйти в shell, сбросить пароль веб-администратора.
Восстановление системы также простое: дистрибутив устанавливается на диск, загружается файл конфигурации и NAS4Free снова работает.
Поддерживается работа через консоль — например, настройка сетевых интерфейсов. Через интерфейс производится работа с большинством операций. В их числе управление файловой системой и редактированием файлов, снапшотами, работа с инструментами сетевой диагностики, тестирование пропускной способности сети. Но боковой панели здесь нет.
Все сервисы отключены по умолчанию, для работы необходимо их запустить и настроить.
Минимальные требования для дистрибутива — 512 МБ оперативной памяти и 2 ГБ хранилища под систему. Дистрибутив скомпилирован для 32- и 64-разрядных Intel x86-совместимых процессоров.
Управление томами
Поддерживаются:
- мониторинг состояния жестких дисков S.M.A.R.T.,
- уведомления о проблемах по электронной почте,
- программный RAID (0, 1, 5 и комбинации), RAID-Z1/Z2/Z3,
- отправка сообщений Syslog, контроль состояния UPS.
Доступ к файлам
Файловая система — ZFSv28. Поддерживает:
- UFS, ext2/3, FAT, NTFS.
- Протоколы для обмена данными SMB/CIFS, FTP, TFTP, NFS, AFP, iSCSI (initiator и target), SCP (SSH), BitTorrent, HAST, CARP. Они настраиваются через веб-интерфейс.
- Кроме них поддерживает Unison, HAST, UPnP (на базе Fuppes), протоколы CARP, HAST, VLAN и Wake On LAN.
- Синхронизацию посредством rsync.
- Сервер iTunes/DAAP (Firefly).
- Управление доступом: на основе пользователей и групп UNIX.
- Аутентификацию: для этого используется внутренняя база и средства Active Directory и LDAP.
NAS4Free также умеет работать с файловыми системами UFS, FAT32, EXT2.
Документация и поддержка
На сайте дистрибутива есть базовая информация — например, по установке и начальной настройке. Остальная документация «встроенная». Чтобы получить информацию по опциям настройки, нужно изучить журналы [Диагностика → Журналы]. Здесь можно найти отчеты о ежедневной работе вашего NAS. В интерфейсе также есть QuiXplorer — менеджер файлов.
Безопасность
Поддерживается шифрование GELI-диска.
Расширения
У NAS4Free большой набор служб и сервисов «из коробки»: Unison, iSCSI, SNMP, BitTorrent и прочие. В большинстве случаев вам не придется ничего дополнительно устанавливать. Но установка плагинов возможна.
Информация о расширениях дистрибутива есть только на официальных форумах NAS4Free.
Особенные функции
Есть поддержка LDAP и активной директории, теги VLAN, беспроводное соединение, CARP (протокол общего резервирования адресов), HAST (высокодоступное хранилище), клиент BitTorrent, веб-сервер Lighttpd, FUPPES — сервер Plug and Play для автоматического обнаружения сетевых устройств, IPERF3 для измерения пропускной способности.
EasyNAS
Дистрибутив разработан на базе openSUSE.
Развертывание и интерфейс
Поставляется в виде ISO-образа размером 380 МБ. Минимальные требования: 1 ГБ оперативной памяти и жесткий диск на 20 ГБ.
После установки открывается оболочка, где выполняются общие задачи администрирования: смена пароля администратора или IP-адреса.
К веб-интерфейсу можно получить доступ в браузере по адресу, перейдя на http://<ip-адрес>:1443 — вход со своим паролем администратора.
Доступ к функциям — через строку поиска и боковую панель. Также через панель есть доступ к настраиваемым элементам — хранилищу или общему доступу к файлам.
Управление томами
Поддерживается топология дисковых массивов JBOD, RAID 0/1/5/6/10, централизованное управления аутентификацией, авторизацией и аккаунтингом при помощи протокола RADIUS.
Общий доступ к файлам
Файловая система — Btrfs. Есть возможность расширения размера хранилища без отключения системы, создания снапшотов, добавления и удаления разделов.
Дистрибутив поддерживает основной пул протоколов: CIFS (Samba), NFS, FTP, TFTP, SSH, RSYNC, AFP. Но функции их настройки нет.
Документация
На сайте проекта очень мало информации, только общие данные и краткое описание концепций и технологий. Информацию придется искать по форумам, которых тоже немного.
В дистрибутиве предусмотрены подсказки: типсы с вопросительными знаками можно найти в боковой панели.
Безопасность
Очень слабая. Можно ограничить доступ к интерфейсу администрирования с помощью ACL или IP-адресов или настроить Radius, чтобы аутентифицировать удаленных пользователей. Остальные функции безопасности не предусмотрены.
Расширения
Их нет.
Особенные функции
В целом, это довольно «бедный» дистрибутив: есть планирование автоматического добавления томов или запуск веб-сервера.
Rockstor
Дистрибутив с открытым исходным кодом на базе openSUSE. Минимальные требования — 2 ГБ оперативной памяти и жесткий диск на 16 ГБ.
Развертывание и интерфейс
Поставляется с установщиком Anaconda, но он не пригодится — установка автоматическая, можно задать только пароль root. Можно установить на USB-диск.
Интерфейс представляет собой панель мониторинга в виде набора виджетов. Их можно выбирать из верхней панели. Боковая панель становится активна при выборе компонента.
Управление томами
Rockstor работает только с целыми дисками.
Есть:
- мониторинг ресурсов через панель и SNMP,
- мониторинг S.M.A.R.T.,
- объединение дисков в RAID-массивы или пулы (0,1,5,6,10), сжатие, монтирование,
- резервное копирование через rsync, Apple Time Machine и Windows Backup.
Общий доступ к файлам
Файловая система — Btrfs. Поддерживается создание разделяемых ресурсов, используется защита файлов Bitrot, контрольные суммы, резервное копирование файлов с помощью rsync.
Документация и поддержка
На сайте проекта можно найти подробную документацию по всем вопросам, начиная с установки и заканчивая расширениями.
Безопасность
Поддерживается шифрование целого диска, но с помощью LUKS.
Расширения
Поддерживает много плагинов, например, Booksonic — сервер потоковой передачи аудиокниг — или CouchPotato — загрузчик для пользователей usenet и bittorrent. Плагины устанавливаются как Docker-образы через веб-интерфейс. На сайте проекта есть документация по поддерживаемым плагинам и их установке.
Дополнительные функции
Создание снапшотов и их планирование с помощью заданий cron.
OpenMediaVault: дистрибутив для любителей Linux
Open source-дистрибутив на основе Debian Linux. OpenMediaVault похож на FreeNAS, потому что автор системы — бывший разработчик FreeNAS Фолькер Тайле.
Развертывание и интерфейс
Дистрибутив поставляется в виде:
- ISO-образа для x86- и x64-систем,
- образа для VMware и VirtualBox,
- репозитория для Debian.
Программа установки текстовая, во время нее потребуется выбрать часовой пояс, установить пароль root, заполнить имя домена и прочее.
Опций настройки через консоль, как в других дистрибутивах, нет. Системные настройки производятся через веб-интерфейс. В нем есть боковая панель, через которую можно получить доступ к компонентам. Есть подсказки для применения настроек.
Дистрибутив ставится как на жесткий диск, так и на USB, при это занимает весь объем памяти.
Управление томами
В дополнение к поддержке файловых систем ЕХТЗ/4, XFS и JFS в OpenMediaVault вы также получите опцию создания квот для каждого настроенного тома и списка контроля доступа (ACL). Поддерживается программный RAID (0, 1, 5, 6, JBOD, 5+0, 5+1, 0+1, 1+0).
Общий доступ к файлам
В отличие от FreeNAS автор дистрибутива не стал ставить ZFS. Как файловая система используются ext3, ext4, XFS, JFS, NTFS и FAT32 (чтение/запись). Функций, как следствие, чуть меньше:
- Протоколы, которые поддерживает дистрибутив: SMB/CIFS, FTP/FTPS, TFTP, NFSv3/v4, SSH и RSYNC.
- Есть организация совместного доступа, разделения привилегий групп и пользователей, настройка квот.
- Мониторинг — SNMP, S.M.A.R.T, UPS.
- Уведомления об ошибках по почте.
Но в сравнении с FreeNAS здесь создается смешанный раздел для хранения настроек, в котором сочетаются данные и системные файлы.
Документация
Основная документация есть.
Безопасность
Есть функция безопасности в виде монтирования файловых систем с флагом noexec. Но скрипты безопасности, помещенные в папки с распределенным доступом, запустить не получится.
Нет шифрования данных. Эту функцию обеспечивает только плагин LUKS.
Расширения
В дистрибутиве есть вся базовая функциональность NAS4Free и FreeNAS, кроме ZFS. Недостаток функций закрывается большим списком расширений: LVM, iSCSI Target, поддержка LDAP, доступ AFP, BitTorrent, DAAP, UPS, антивирусы.
Официальных плагинов несколько десятков: их можно увидеть в меню Система → Плагины, где они категоризированы. Для установки используется штатный пакетный менеджер.
Есть сторонние «самодельные» плагины, ставятся стандартным для Linux способом.
Дополнительные функции
В OpenMediaVault можно распределять квоты диска отдельным пользователям, ограничивая место, на которое пользователи могут претендовать. Вы также можете определить права доступа каждого пользователя для каждой папки с общим доступом.
Как и в FreeNAS, обычные задачи поддержки системы, такие как установка обновлений, можно выполнять из веб-интерфейса. OpenMediaVault предоставляет почти все функции FreeNAS, но через плагины.
Итоги обзора дистрибутивов для NAS-хранилищ
Завершим обзор дистрибутивов несколькими советами. Для продвинутых систем с большими ресурсами рекомендуем FreeNAS и Rockstor. Большое комьюнити, широкий функционал, подробная документация и много расширений.
Из всех представленных дистрибутивов лидером выходит бесплатный FreeNAS:
- надежная корпоративная файловая система OpenZFS,
- поддержка всех протоколов,
- синхронизация с облачными сервисами (включая Dropbox) из коробки,
- интеграция с Amazon S3, Backblaze B2 и Microsoft Azure,
- много дополнительных приложений,
- продвинутые инструменты мониторинга.
NAS4FREE тоже хорош для больших систем, если вас не испугает малый объем документации.
Для тех, кто привык работать с Linux, подойдет OpenMediaVault. Будет легко устанавливать плагины для расширения функционала своей NAS-системы.
Rockstor и EasyNAS можно рекомендовать для организации NAS-cервера для дома или небольшого офиса (первый не требует много оперативной памяти). Но если Rockstor можно использовать в коммерческих системах, то EasyNAS — нет из-за ограниченных возможностей для повышения безопасности.