Ubuntu 16.04 NFS Exports/Shares не монтируется на клиентском компьютере
Я следил за доступными постами, чтобы максимально настроить NFS на двух компьютерах с Ubuntu.
Я установил nfs-kernel-server на хост-систему, настроил экспорт на сервер. Я даже закрыл брандмауэр, чтобы убедиться, что он не мешает. На клиентском компьютере также установлен сервер и клиентский пакет nfs-common.
Когда я пытаюсь смонтировать ЛЮБОЙ из акций на клиенте. (текущее местоположение монтирования /home/nfs_local). Терминал зависает без ответа в течение очень долгого времени, когда он просто говорит "Тайм-аут соединения".
Я пытаюсь смонтировать, используя эту структуру команд для монтирования общих ресурсов на терминале клиента:
$ sudo mount 192.168.10.111:/home/uname / home / nfs_local
Вот как выглядит мой экспорт в / etc / exports
/ home 192.168.10.128/255.255.255.0(ro,anonuid=65534,no_subtree_check,insecure,sync,nohide) / home / uname 192.168.10.128/255.255.255.0(rw,anonuid=65534,no_subtree_check,,c) /mnt/volume /Massive_A 192.168.10.128/255.255.255.0(rw,nohide,no_subtree_check,insecure,sync) /mnt/volume /Massive_B 192.168.10.128/255.255.255.0(rw,nohide,no_subtree_ches,c) / volume /Massive_C 192.168.10.128/255.255.255.0(rw,nohide,no_subtree_check,insecure,sync) /mnt/volume /SSD_B 192.168.10.128/255.255.255.0(rw,nohide,no_subtree_check,insecuress)
rpcinfo -p (на стороне сервера) дает следующий вывод:
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100005 1 udp 46285 mountd
100005 1 tcp 40996 mountd
100005 2 udp 37056 mountd
100005 2 tcp 56903 mountd
100005 3 udp 59774 mountd
100005 3 tcp 33079 mountd
100003 2 tcp 2049 nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100227 2 tcp 2049
100227 3 tcp 2049
100003 2 udp 2049 nfs
100003 3 udp 2049 nfs
100003 4 udp 2049 nfs
100227 2 udp 2049
100227 3 udp 2049
И, брандмауэр неактивен:
$ ufw status (на стороне сервера и на стороне клиента)
Статус: неактивен
Кто-нибудь может определить, что мне здесь не хватает? В конце концов, я хочу добавить их в fstab, чтобы они автоматически монтировались при загрузке... ИЛИ использовать сценарий для каждого общего ресурса... Советы по поводу плюсов и минусов этого использования также очень приветствуются.
Спасибо за чтение.
1 ответ
Спасибо @ridgy за указание мне в направлении этого решения.
При использовании NFS необходимо убедиться, что порты 111 и 2049 открыты для трафика TCP и UDP. (Если вы используете ТОЛЬКО NFS v4, вам не нужен порт 111 PORTMAPPER) Вы можете ограничить его локальной сетью, как считаете нужным. Но он должен быть открыт как на клиенте, так и на сервере для обоих типов трафика.
Если вы хотите использовать командную строку, сначала проверьте состояние брандмауэра, выдав
$ sudo ufw status
если возвращаемая информация гласит "Статус: неактивен", то вы можете либо отключить ее, либо активировать и ввести правила, чтобы NFS и ее данные PORTMAPPER проходили.
Выпустить директиву:
$ sudo ufw enable
запустить службу брандмауэра
Проверьте текущие правила, выполнив директиву статуса снова
$ sudo ufw status
Вы увидите список правил, которые в настоящее время определены (если они были определены). Однако теперь вы должны увидеть, что директива состояния возвращается;
Статус: Активен
Поищите все правила, применимые к портам 2049 и 111. Оба они должны быть открыты для трафика TCP и UDP... из "где угодно" (это должно быть ужесточено после того, как ваши общие ресурсы работают - в зависимости от вашей ситуации) * ПРИМЕЧАНИЕ: брандмауэр как правило, позволяет применять правила, основанные на значениях по умолчанию "APPLICATION", однако экономит время. Я обнаружил, что NFS нет в списке.
Вывод должен выглядеть примерно так:
To Action From
111,2049/tcp ALLOW ANYWHERE
111,2049/udp ALLOW ANYWHERE
111,2049/tcp (v6) ALLOW ANYWHERE (v6)
111,2049/udp (v6) ALLOW ANYWHERE (v6)
Если вы не видите открытости портов, вы можете выполнить следующие директивы, чтобы открыть их. Это должно быть сделано на хосте и клиенте.
$ sudo ufw allow 2049
$ sudo ufw allow 111
ПРИМЕЧАНИЕ. Это откроет эти порты для ВСЕГО трафика, а не только для NFS и PORTMAPPER. Я настоятельно рекомендую - после того, как вы правильно настроили экспорт / монтирование NFS, вы пересмотрите конфигурацию брандмауэра, чтобы усилить безопасность вокруг этих портов. (Это в настоящее время за пределами моих знаний и области ответа)
Еще раз выполните директиву ufw status, чтобы убедиться, что записи были правильно добавлены в правила брандмауэра.
СЕЙЧАС... для смущающей части... Брандмауэр на хосте и клиентских системах может быть не единственной проблемой брандмауэра. Вы должны убедиться, что ваш маршрутизатор не блокирует эти порты. (В моем случае это вызвало некоторое растяжение волос. Так как у меня было туннельное зрение на двух машинах. И, полностью забыл аппаратное обеспечение между ними.) Еще раз спасибо @ridgy!
Я использую ASUS AC3200 с DD-WRT. Так что, конечно, ваша система маршрутизатора, вероятно, будет отличаться.
Если ваш межсетевой экран маршрутизатора активен (рекомендуется), обратитесь к инструкциям производителя о том, как открыть порты 111 и 2049 для трафика локальной сети... По желанию, и просто для того, чтобы все заработало, вы можете ВРЕМЕННО отключить межсетевой экран вашего маршрутизатора (не рекомендуется) до вы получаете ваши экспорт / монтирование работает должным образом.
Я искренне надеюсь, что этот опыт будет полезен всем, кто сталкивается с такими же проблемами при реализации и сетевой среде NFS.