Подробный гайд: Настройка NFS/NAS в ALT Server V

Настройка NFS-сервера в ALT Server V: установка, экспорт, firewall, монтирование клиентов. Гайд по развёртыванию надёжного NAS-хранилища в корпоративной сети.

2026.05.18                  


Подробный гайд: Настройка NFS/NAS в ALT Server VПодробный гайд: Настройка NFS/NAS в ALT Server V

Примечание:

В терминологии Linux NAS (Network Attached Storage) — это архитектурная роль сервера, а не отдельный пакет. В ALT Server V она реализуется через связку NFS (для Linux/Unix), Samba (для Windows/macOS) и управление дисковым массивом. В данном гайде рассматривается настройка NFS-сервера как основы NAS-решения.


Система:

ALT Server V (база p10/p11, systemd, apt-get + RPM, firewalld по умолчанию)


Протокол:

NFSv4 (по умолчанию), NFSv3 (для обратной совместимости)


Требования:

root или sudo, статический IP, подготовленный диск/раздел, доверенная сеть


1. Установка необходимых пакетов

ALT Linux использует apt-get несмотря на RPM-базу.

Установите пакеты NFS и зависимости:

sudo apt-get update
sudo apt-get install nfs-utils rpcbind
  • nfs-utils — содержит nfs-server, mountd, exportfs, showmount
  • rpcbind — необходим для NFSv3 и работы RPC-сервисов

Проверьте установку:

rpm -q nfs-utils rpcbind

2. Подготовка хранилища (NAS-роль)

Создайте точку экспорта и примонтируйте физическое хранилище:

sudo mkdir -p /srv/nfs/share
sudo chown -R nobody:nobody /srv/nfs/share
sudo chmod 777 /srv/nfs/share

Если используете отдельный диск/раздел:

sudo mkfs.ext4 /dev/sdb1
sudo mount /dev/sdb1 /srv/nfs/share

Добавьте в /etc/fstab для автозагрузки:

/dev/sdb1  /srv/nfs/share  ext4  defaults,nofail  0  2

Рекомендация:

Для production используйте LVM или mdadm RAID. В ALT Server V инструменты lvm2 и mdadm устанавливаются отдельно.


3. Настройка экспорта /etc/exports

Отредактируйте файл экспорта:

sudo nano /etc/exports

Пример конфигурации:

/srv/nfs/share  192.168.1.0/24(rw,sync,no_subtree_check,no_root_squash)
/srv/nfs/share  10.0.0.5(ro,sync,sec=sys)

Разбор опций:

Опция Значение
rw / ro Чтение-запись / только чтение
sync Гарантирует запись на диск до ответа клиенту (безопасно)
async Выше производительность, риск потери данных при обрыве
no_subtree_check Отключает проверку поддеревьев (ускоряет, рекомендуется)
no_root_squash Клиентский root сохраняет права root на сервере (только для доверенных сетей)
all_squash / anonuid=1000,anongid=1000 Все клиенты мапятся на указанного пользователя
sec=sys / sec=krb5 Метод аутентификации (sys = без шифрования, krb5 = Kerberos)

Примените изменения:

sudo exportfs -rav
  • -r — перечитать /etc/exports
  • -a — экспортировать/размонтировать все
  • -v — подробный вывод

Проверьте активные экспорты:

exportfs -v

4. Запуск и включение служб

sudo systemctl enable --now rpcbind nfs-server nfs-mountd
sudo systemctl status nfs-server

В ALT Server V nfs-mountd и nfs-idmapd запускаются автоматически как зависимости nfs-server. Убедитесь, что все статусы active (exited) или active (running).


Проверка видимости экспортов локально:

showmount -e localhost

5. Настройка firewall (firewalld)

ALT Server V по умолчанию использует firewalld.

Откройте необходимые сервисы:

sudo firewall-cmd --permanent --add-service=nfs
sudo firewall-cmd --permanent --add-service=rpc-bind
sudo firewall-cmd --permanent --add-service=mountd
sudo firewall-cmd --reload

Проверка:

firewall-cmd --list-services

Для повышенной безопасности ограничьте доступ по IP-адресам в зонах firewalld или используйте iptables/nftables правила, если firewalld не подходит.


6. Настройка клиента

На клиентской машине (Linux):

sudo apt-get install nfs-utils
showmount -e <IP_СЕРВЕРА>

Ручное монтирование:

sudo mkdir -p /mnt/nfs
sudo mount -t nfs <IP_СЕРВЕРА>:/srv/nfs/share /mnt/nfs

Автозагрузка через /etc/fstab:

<IP_СЕРВЕРА>:/srv/nfs/share  /mnt/nfs  nfs  defaults,nofail,x-systemd.automount  0  0

x-systemd.automount позволяет монтировать NFS только при первом обращении, ускоряя загрузку.


Для принудительного использования NFSv3:

<IP_СЕРВЕРА>:/srv/nfs/share  /mnt/nfs  nfs  nfsvers=3,defaults  0  0

7. Безопасность и оптимизация

7.1. SELinux

В ALT Server V SELinux отключен по умолчанию.

Если включён:

sudo setsebool -P nfs_export_all_rw on
sudo setsebool -P nfsd_anon_write on

7.2. Kerberos (шифрование)

Для sec=krb5 настройте интеграцию с Active Directory/Kerberos:

  • Установите krb5-workstation, sssd
  • Получите keytab: kadmin -p admin -q "addprinc -randkey nfs/server.domain"
  • Настройте /etc/exports: .../srv/nfs/share *(rw,sec=krb5)

7.3. Производительность

  • Увеличьте размер буферов на клиенте: rsize=1048576,wsize=1048576
  • Используйте TCP (по умолчанию в NFSv4)
  • В /etc/nfs.conf можно настроить nfsd.threads=16 (для многопоточности)

7.4. Ограничение доступа

  • Никогда не используйте * в production
  • Избегайте no_root_squash без строгой фильтрации по IP
  • Разделите экспорт на разные директории с разными правами

8. Диагностика и устранение неполадок

Проблема Решение
mount: access denied Проверьте /etc/exports, firewall-cmd --list-services, rpcinfo -p
Stale file handle Перемонтируйте, проверьте, не изменился ли inode на сервере
Permission denied Проверьте права chmod/chown, SELinux, root_squash
Служба не стартует journalctl -u nfs-server -e, проверьте синтаксис /etc/exports
Низкая скорость Увеличьте rsize/wsize, отключите sync (с осторожностью), проверьте сеть

Полезные команды:

sudo exportfs -v
sudo rpcinfo -p
sudo systemctl status nfs-server rpcbind nfs-mountd
journalctl -u nfs-server -f
showmount -e <IP>

9. Особенности ALT Server V

Аспект Примечание
Пакетный менеджер apt-get (RPM-бэкенд, репозитории p10/p11)
Система инициализации systemd (все службы управляются через systemctl)
Firewall firewalld по умолчанию, поддержка зон
SELinux Отключен в стандартной поставке серверного профиля
Обновления sudo apt-get update && sudo apt-get dist-upgrade

Итог

  1. Установите nfs-utils и rpcbind
  2. Подготовьте хранилище и точку монтирования
  3. Настройте /etc/exports с учётом безопасности
  4. Запустите и включите rpcbind, nfs-server
  5. Откройте порты в firewalld
  6. Протестируйте с клиента, добавьте в fstab
  7. При необходимости настройте Kerberos, LVM, Samba (для Windows)

Для полноценного NAS-решения добавьте samba (sudo apt-get install samba samba-client), настройте /etc/samba/smb.conf и объедините с NFS через единое хранилище /srv/nfs.


Комментарии

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