Страницы

вторник, 17 июля 2012 г.

NFS для HP Proliant Microserver


Установка NFS сервера на HP Proliant Microserver, под ОС Ubuntu 12.04 LTS
$sudo apt-get install nfs-kernel-server nfs-common
После установки, сервер запуститься автоматически.

Настройка NFS сервера под свои нужды
Создадим папку fotobank под пользователем userserver и разрешим всем пользователям к ней доступ.
$ mkdir fotobank
$ chmod a+rw fotobank
Отредактируем файл /etc/exports, содержащий папки, которые NFS сервер будет предоставлять клиентам для работы.
$ sudo nano /etc/exports
Внесем строку вида:
/home/userserver/fotobank (rw)

или так:
/srv/iso    *(rw,sync,no_subtree_check,insecure,all_squash,anonuid=1000,anongid=1000)

Этим мы "экспортируем" папку (путь в локальной серверной системе) для клиентов.

Перезапустим NFS сервер.

Перезапуск NFS сервера
$sudo  /etc/init.d/nfs-kernel-server restart
и проверяем экспортируемые ресурсы:
$exportfs

/home/userserver/fotobank
<world>



Проверка доступности "экспортированной" папки на клиенте

Клиентская система Ubuntu 11.10.
Устанавливаем базовую поддержку NFS на клиенте
$sudo apt-get install nfs-common
После этого, команда присоединения "экспортированной" папки, на клиенте выглядит так:
$sudo mount -t nfs -o timeo=30 192.168.3.1:/home/userserver/fotobank /home/userclient/fotobank

userserver - имя пользователя на сервере
userclient - имя пользователя на клиенте

Размонтирование на клиенте:
$sudo umount /home/userclient/fotobank

Просмотр всех экспортированных папок: showmount -e "имя сервера или его ip-адрес"
$showmount -e microserver.local


Стоит заметить, что и на сервере и на клиенте у меня одинаковое имя пользователя.

Порты используемые NFS
$grep nfs /etc/services 

nfs 2049/tcp # Network File System
nfs 2049/udp # Network File System

Проверка безопасности микросервера извне
На любом публичном сервисе сканирования портов, произведем операцию проверки портов NFS. Порты, по умолчанию, окажутся открытыми. Надо закрывать. Закроем порты только на внешних интерфейсах, т.к. они нужны в локальной сети. Интерфейсы имеют имена beeline (локальная сеть), ppp8(интернет).
Закрывать будем с помощью встроенного файрвола iptables.
Итак, для внешнего интерфейса Интернет (ppp8):
$sudo iptables -A INPUT -i ppp8 -p tcp --dport 2049 -j DROP
$sudo iptables -A INPUT -i ppp8 -p udp --dport 2049 -j DROP
Чтобы убрать эти правила из файрвола, если нужно надо выполнить:
$sudo iptables -D INPUT -i ppp8 -p tcp --dport 2049 -j DROP
$sudo iptables -D INPUT -i ppp8 -p udp --dport 2049 -j DROP

Тоже самое и для интерфейса локальной сети
$sudo iptables -A INPUT -i beeline -p tcp --dport 2049 -j DROP
$sudo iptables -A INPUT -i beeline -p udp --dport 2049 -j DROP


Для сохранения вновь добавленных правила после перезагрузки надо что-то типа выполнить:
$iptables-save > /etc/default/iptables
У кого как сохраняются настройки, так что гарантии, что у вас сработает нет.

Ресурсы
. https://help.ubuntu.com/community/NFSv4Howto
. https://help.ubuntu.com/12.04/serverguide/network-file-system.html
. http://www.k-max.name/linux/network-file-system-nfs/
http://www.ibm.com/developerworks/ru/library/l-network-filesystems/index.html
http://nix-sa.blogspot.com/2012/07/nfs-linux.html
. http://www.bog.pp.ru/work/NFS.html

Комментариев нет: