Май 252011
 

Добрый день.
Серверов становиться все больше, и что бы не насиловать сервер репозитария портов, то решил в сети поднять nfs server.

— С начало ставим-настраиваем сервер
— Потом клиента

Приступим.

В компелим поддержку nfs servera в ядро.

options         NFSCLIENT               # Network Filesystem Client
options         NFSSERVER               # Network Filesystem Server

На всякий пожарный добавил опцию клиента, в друг !!!
Теперь добавим поддержку к системе

pav-253# tail /etc/rc.conf
rpcbind_enable="YES"
nfs_server_enable="YES"
nfs_server_flags="-u -t -n 4"
mountd_enable="YES"
mountd_flags="-r"
potmap_enable="YES"
  • nfsd — NFS демон, обслуживающий запросы клиентов
  • mountd — NFS mount daemon выполняет запросы, передаваемые ему от nfsd
  • rpcbind — Данный демон позволяет клиентам определить, какой порт использует сервер
mountd
-r – Allow mount RPCs requests for regular files to be served
nfsd
-h – биндинг адреса
-t – параметр, указывающий обслуживать только TCP-клиентов (если требуется работать по протоколу UDP, следует указать параметр -u)
-n – количество создаваемых серверов

Далее , создаем экспортный фаел, в нем мы укажим какую диреткорию и с какими правами раздаем.

# more /etc/exports
/usr/ports -ro -maproot=root -network 10.7.20 -mask 255.255.255.0

— /usr/ports — Путь к каталогу который надо разрешить подключать по сети.
— ro — Режим только чтения, используется для самих портов.
— network, -mask — Подсеть для доступа к ресурсу.
— параметр -alldirs позволяет вам экспортировать каталог и все его подкаталог
— maproot=user
Права данного пользователя используются для удаленного подключения как root.
Права включают все группы в которые входит пользователь на локальной машине.
Может быть представлен по имени или uid (как в нашем примере).
Даемон mountd должен быть проинформирован об изменении файла /etc/exports, чтобы изменения вступили в силу.
Это может быть достигнуто посылкой сигнала HUP процессу mountd:

# kill -HUP `cat /var/run/mountd.pid`
pav-253# rpcinfo -p | egrep rpc\|moun\|nfs
    100000    4   tcp    111  rpcbind
    100000    3   tcp    111  rpcbind
    100000    2   tcp    111  rpcbind
    100000    4   udp    111  rpcbind
    100000    3   udp    111  rpcbind
    100000    2   udp    111  rpcbind
    100000    4 local    111  rpcbind
    100000    3 local    111  rpcbind
    100000    2 local    111  rpcbind
    100005    1   udp    763  mountd
    100005    3   udp    763  mountd
    100005    1   tcp    763  mountd
    100005    3   tcp    763  mountd
    100003    2   udp   2049  nfs
    100003    3   udp   2049  nfs
    100003    2   tcp   2049  nfs
    100003    3   tcp   2049  nfs

Добавим правила на вход и выход в нашем фаерволе.

oif="alc0"
cmd="ipfw -q add "
OpenPorts="111,369,2049,763"
$cmd 00707 allow tcp from 10.7.20.0/24 to 10.7.20.253 dst-port ${OpenPorts}
$cmd 00708 allow udp from 10.7.20.0/24 to 10.7.20.253 dst-port ${OpenPorts}
# Out
$cmd 00709 allow tcp from me ${OpenPorts} to any established out via $oif

Что бы не перегружать наш сервер сделаем пару манипуляций со стартовыми скриптами.

pav-253# /etc/rc.d/rpcbind restart
pav-253# /etc/rc.d/mountd restart

Теперь у клиента.
В компелим поддержку nfs servera в ядро.

options         NFSCLIENT               # Network Filesystem Client
options         NFSSERVER               # Network Filesystem Server
pav-210# tail /etc/rc.conf
nfs_client_enable="YES"

и под редактируем правло в фаерволе нашем

oif="re0"
cmd="ipfw -q add "
OpenPorts="111,369,2049,763"
$cmd 00707 allow tcp from 10.7.20.0/24 to 10.7.20.210 dst-port ${OpenPorts}
$cmd 00708 allow udp from 10.7.20.0/24 to 10.7.20.210 dst-port ${OpenPorts}

И настал тот час когда мы можем уже примантировать диретокри с удаленного сервера.

pav-210# mount -t nfs 10.7.20.253:/usr/ports /usr/ports
pav-210# umount 10.7.20.253:/usr/ports

Или добавить строчьку в /etc/fstab

10.7.20.253:/usr/ports /usr/ports   nfs     ro, -b, -i      0   0

Если система FreeBSD является сервером, укажите параметр -w=1024 на клиенте при монтировании. Если система FreeBSD является клиентом, то смонтируйте файловую систему NFS с параметром -r=1024
Вот и все.

 Leave a Reply

(required)

(required)

37 Запросов к базе. 0,436 Генерации страницы, 36MB Использование памяти.
Вы зашли с IP: 54.224.108.238