Настройка nfs centos 8

Обновлено: 06.07.2024

Сетевая файловая система (NFS), также известная как файловая система клиент/сервер, - это популярный кроссплатформенный протокол распределенной файловой системы, используемый для экспорта локальных файловых систем по сети, чтобы клиенты могли обмениваться каталогами и файлами с другими по сети и взаимодействовать с ними, как если бы они были установлены локально.

В CentOS/RHEL 8 поддерживаемые версии NFS - это NFSv3 и NFSv4, а версия NFS по умолчанию - 4.2, которая включает поддержку списков управления доступом (ACL), копирования на стороне сервера, разреженных файлов, резервирования пространства, маркировки NFS, улучшенного макета и гораздо более.

В этой статье вы узнаете, как установить и настроить сервер NFS и клиент NFS в дистрибутивах CentOS/RHEL 8 Linux.

  1. Руководство по установке CentOS 8
  2. Минимальная установка RHEL 8
  3. Включить подписку RHEL в RHEL 8
  4. Установите статический IP-адрес в CentOS/RHEL 8

Настройка сервера NFS на CentOS 8

1. Сначала начните с установки необходимых пакетов на сервере NFS. Это пакеты nfs-utils, которые предоставляют демон для сервера NFS ядра и связанные с ним инструменты, например, содержат программу showmount.

Выполните следующую команду, чтобы установить пакет на сервер NFS (используйте sudo, если вы администрируете систему как пользователь без полномочий root).


2. После завершения установки запустите службу nfs-server, включите ее автоматический запуск при загрузке системы, а затем проверьте ее состояние с помощью команд systemctl.


Обратите внимание, что другие службы, необходимые для запуска сервера NFS или монтирования общих ресурсов NFS, такие как nfsd, nfs-idmapd, rpcbind, rpc.mountd, lockd, rpc.statd, rpc.rquotad и rpc.idmapd, будут запускаться автоматически.

Файлы конфигурации для сервера NFS:

  • /etc/nfs.conf - основной файл конфигурации для демонов и инструментов NFS.
  • /etc/nfsmount.conf - файл конфигурации монтирования NFS.

3. Затем создайте файловые системы для экспорта или совместного использования на сервере NFS. В этом руководстве мы создадим четыре файловые системы, три из которых используются сотрудниками трех отделов: отдела кадров, финансов и маркетинга для обмена файлами, а одна предназначена для резервного копирования пользователей root.

4. Затем экспортируйте указанные выше файловые системы в файл конфигурации/etc/exports, чтобы определить локальные физические файловые системы, доступные для клиентов NFS.

Вот некоторые из параметров экспорта (дополнительную информацию и параметры экспорта см. В man export):

  • rw - разрешает доступ как для чтения, так и для записи в файловой системе.
  • sync - указывает серверу NFS выполнять операции записи (запись информации на диск) по запросу (применяется по умолчанию).
  • all_squash - сопоставляет все UID и GID из клиентских запросов анонимному пользователю.
  • no_all_squash - используется для сопоставления всех UID и GID из клиентских запросов с идентичными UID и GID на сервере NFS.
  • root_squash - отображает запросы от пользователя root или UID/GID 0 от клиента на анонимный UID/GID.

5. Чтобы экспортировать указанную выше файловую систему, запустите команду exportfs с флагом -a , что означает экспорт или невыполнение экспорта всех каталогов, -r означает повторный экспорт всех каталогов, синхронизируя/var/lib/nfs/etab с/etc/exports и файлами в /etc/exports.d, а -v включает подробный вывод.


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


7. Затем, если у вас запущена служба firewalld, вам необходимо разрешить трафик к необходимым службам NFS (mountd, nfs, rpc-bind) через брандмауэр, затем перезагрузить правила брандмауэра, чтобы применить изменения, как показано ниже.


Настройка клиента NFS в клиентских системах

8. Теперь на клиентских узлах установите необходимые пакеты для доступа к общим ресурсам NFS в клиентских системах. Выполните соответствующую команду для вашего дистрибутива:

9. Затем запустите команду showmount, чтобы отобразить информацию о монтировании для сервера NFS. Команда должна вывести экспортированную файловую систему на клиенте, как показано на снимке экрана.


9. Затем создайте локальную файловую систему/каталог для монтирования удаленной файловой системы NFS и смонтируйте ее как файловую систему ntf.

10. Затем убедитесь, что удаленная файловая система смонтирована, выполнив команду mount и отфильтруйте монтирование nfs.


11. Чтобы обеспечить постоянное монтирование даже после перезагрузки системы, выполните следующую команду, чтобы ввести соответствующую запись в/etc/fstab.


12. Наконец, проверьте, нормально ли работает настройка NFS, создав файл на сервере и проверьте, отображается ли файл на клиенте.


Затем сделайте обратное.


13. Отмонтировать удаленную файловую систему на стороне клиента.

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


Это оно! В этом руководстве мы показали, как установить и настроить сервер и клиент NFS в CentOS/RHEL 8. Если у вас есть какие-либо мысли или вопросы, используйте форму комментариев ниже, чтобы вернуться к нам.

How to Install and Configure an NFS Server on CentOS 8

В этой статье вы найдете руководство по настройке сервера NFSv4 в CentOS 8, а также узнаете, как смонтировать файловую систему NFS на клиенте.

Сетевая файловая система (NFS) - это протокол распределенной файловой системы, который позволяет вам совместно использовать удаленные каталоги по сети. С помощью NFS вы можете монтировать удаленные каталоги в вашей системе и работать с файлами на удаленном компьютере, как если бы они были локальными файлами.

Протокол NFS по умолчанию не шифруется и, в отличие от Samba, не обеспечивает аутентификацию пользователя. Доступ к серверу ограничен IP-адресами клиентов или именами хостов.

На сервере под управлением CentOS 8 мы настроим сервер NFS и другие машины, которые будут действовать как клиенты NFS. Сервер и клиенты должны иметь возможность общаться друг с другом через частную сеть. Если ваш хостинг-провайдер не предлагает частные IP-адреса, вы можете использовать общедоступные IP-адреса и настроить брандмауэр сервера так, чтобы трафик на порт 2049 передавался только из надежных источников.

Машины в этом примере имеют следующие IP-адреса:

Настройте сервер NFS

Теперь рассмотрим, как установить необходимые пакеты, создать и экспортировать каталоги NFS и настроить брандмауэр.

Установка сервера NFS

Пакет «nfs-utils» предоставляет утилиты и демоны NFS для сервера NFS. Для его установки выполните следующую команду:


После завершения установки включите и запустите службу NFS, введя:


По умолчанию в CentOS 8 NFS версии 3 и 4.x включены, версия 2 отключена. NFSv2 сейчас довольно старый, и нет никаких причин для его включения. Чтобы проверить это, выполните следующую cat команду:


Параметры конфигурации сервера NFS установлены в /etc/nfsmount.conf и /etc/nfs.conf файлы. На данном этапе подойдут настройки по умолчанию.


Создание файловых систем

При настройке сервера NFSv4 рекомендуется использовать глобальный корневой каталог NFS и привязать фактические каталоги к точке подключения общего ресурса. В этом примере мы будем использовать /srv/nfs4 директор в качестве корня NFS.

Чтобы лучше объяснить, как можно настроить монтирование NFS, мы собираемся использовать два каталога ( /var/www и /opt/backups ) с разными настройками конфигурации.

Это /var/www/ принадлежит пользователю и группе apache и /opt/backups принадлежит root .

Создайте файловую систему экспорта с помощью mkdir команды:

Смонтируйте фактические каталоги:

Чтобы сделать привязку монтируемой постоянной, добавьте в /etc/fstab файл следующие записи :

Экспорт файловых систем

Следующим шагом является определение файловых систем, которые будут экспортированы сервером NFS, параметров общего ресурса и клиентов, которым разрешен доступ к этим файловым системам. Для этого откройте /etc/exports файл:


Экспорт www и backups каталогов и разрешить доступ только от клиентов по 192.168.33.0/24 сети:

Первая строка содержит fsid=0 каталог, определяющий корневой каталог NFS /srv/nfs . Доступ к этому тому NFS разрешен только клиентам из 192.168.33.0/24 подсети. Этот crossmnt параметр необходим для совместного использования каталогов, которые являются подкаталогами экспортируемого каталога.

Во второй строке показано, как задать несколько правил экспорта для одной файловой системы. Он экспортирует /srv/nfs4/backups каталог и предоставляет доступ только для чтения ко всему 192.168.33.0/24 диапазону, а также для чтения и записи 192.168.33.3 . Опция sync сообщает NFS на изменения записи на диск , прежде чем ответить.

Последняя строка должна быть понятной. Для получения дополнительной информации обо всех доступных опциях введите man exports свой терминал.

Сохраните файл и экспортируйте общие ресурсы:


Вам нужно запускать команду выше каждый раз, когда вы изменяете /etc/exports файл. Если есть какие-либо ошибки или предупреждения, они будут показаны на терминале.

Чтобы просмотреть текущий активный экспорт и его состояние, используйте:


Вывод будет включать все действия с их опциями. Как вы можете видеть, есть также опции, которые мы не определили в /etc/exports файле. Это параметры по умолчанию, и если вы хотите изменить их, вам нужно явно установить эти параметры.


root_squash является одним из наиболее важных параметров безопасности NFS. Он не позволяет корневым пользователям, подключенным с клиентов, иметь права root на подключенных общих ресурсах. Он будет отображать корень UID и GID в nobody / nogroup UID / GID .

Чтобы пользователи на клиентских компьютерах имели доступ, NFS ожидает, что идентификаторы пользователя и группы клиента совпадают с идентификаторами на сервере. Другой вариант - использовать функцию отображения NFSv4, которая переводит идентификаторы пользователей и групп в имена и наоборот.

Вот и все. На этом этапе вы настроили сервер NFS на вашем сервере CentOS. Теперь вы можете перейти к следующему шагу, настроить клиенты и подключиться к серверу NFS.

Конфигурация брандмауэра

FirewallD является решением брандмауэра по умолчанию в Centos 8 .

Служба NFS включает в себя предопределенные правила для доступа к серверу NFS.

Следующие команды будут постоянно разрешать доступ из 192.168.33.0/24 подсети:


Настройка клиентов NFS

Теперь, когда сервер NFS настроен и общие ресурсы экспортированы, на следующем шаге настройте клиенты и подключите удаленные файловые системы.

Вы также можете смонтировать общий ресурс NFS на компьютерах MacOS и Windows, но мы сосредоточимся на системах Linux.

Установка клиента NFS

На клиентских компьютерах установите инструменты, необходимые для монтирования удаленных файловых систем NFS.

Установите клиент NFS в Debian и Ubuntu

Название пакета, включающего программы для монтирования файловых систем NFS в дистрибутивах на основе Debian, - nfs-common . Чтобы установить его, запустите:

Установите клиент NFS в CentOS и Fedora

На Red Hat и ее производных установите nfs-utils пакет:

Монтирование файловых систем

Мы будем работать на клиентском компьютере с IP-адресом 192.168.33.110 , который имеет доступ для чтения и записи к /srv/nfs4/www файловой системе и доступ только для чтения к /srv/nfs4/backups файловой системе.

Создайте две новые директории для точек монтирования. Вы можете создавать эти каталоги в любом месте, которое вы хотите.


Смонтируйте экспортированные файловые системы с помощью mount команды:


Где 192.168.33.148 находится IP-адрес сервера NFS. Вы также можете использовать имя хоста вместо IP-адреса, но оно должно быть разрешено клиентским компьютером. Обычно это делается путем сопоставления имени хоста с IP в /etc/hosts файле.

При монтировании файловой системы NFSv4 вам нужно пропустить корневой каталог NFS, поэтому вместо /srv/nfs4/backups него нужно использовать /backups .


Убедитесь, что удаленные файловые системы успешно смонтированы, используя команду mount или df :


Команда напечатает все смонтированные файловые системы. Последние две строки являются смонтированными долями:


Чтобы сделать монтирование постоянным при перезагрузке, откройте /etc/fstab файл:

и добавьте следующие строки:

Чтобы узнать больше информации о доступных опциях при монтировании файловой системы NFS, введите man nfs свой терминал.

Другой вариант для монтирования удаленных файловых систем - использовать autofs инструмент или создать системный модуль.

Тестирование NFS Access

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

Сначала попробуйте создать тестовый файл в /backups каталоге с помощью touch команды:


Далее попробуйте создать тестовый файл в /srv/www каталоге как корень, используя sudo команду:


/var/www каталог принадлежат к apache пользователю, и эта доля имеет root_squash вариант набор, который отображает привилегированный пользователь к nobody пользователю и nogroup группе , которая не имеет права записи на удаленный ресурс.

Предполагая, что пользователь apache существует на клиентском компьютере с тем же UID и GID на удаленном сервере (что должно быть в случае, если, например, вы установили apache на обоих компьютерах), вы можете протестировать создание файла как пользователя apache с:

Команда не будет отображать вывод, что означает, что файл был успешно создан.

Для проверки перечислите файлы в /srv/www каталоге:

Выходные данные должны показать вновь созданный файл:


Размонтирование файловой системы NFS

Если вам больше не нужен удаленный общий ресурс NFS, вы можете размонтировать его, как любую другую смонтированную файловую систему, с помощью команды umount. Например, чтобы размонтировать /backup ресурс, который вы запустите:


Вывод

В этой статье мы показали, как настроить сервер NFS и как монтировать удаленные файловые системы на клиентских компьютерах. Если вы внедряете NFS в производство и делитесь разумными данными, рекомендуется включить аутентификацию Kerberos.

В качестве альтернативы NFS вы можете использовать SSHFS для монтирования удаленных каталогов через SSH-соединение. SSHFS зашифрован по умолчанию и намного проще в настройке и использовании.


В CentOS/RHEL 8 поддерживаемыми версиями NFS являются NFSv3 и NFSv4, а версией NFS по умолчанию является 4.2, в которой предусмотрена поддержка списков контроля доступа (ACL), копирование на стороне сервера, распределенные файлы, резервирование пространства, маркировка NFS, улучшения макета и еще много чего.

В этой статье вы узнаете, как установить и настроить сервер NFS и клиент NFS в дистрибутивах CentOS/RHEL 8 Linux.

Предпосылки:

Наша среда тестирования:

Настройка сервера NFS в CentOS 8

1. Сначала начните с установки необходимых пакетов на сервере NFS. Пакеты представляют собой nfs-utils, который устанавливает демон для NFS-сервера ядра и связанные с ним инструменты, например, содержит программу showmount.


Выполните следующую команду, чтобы установить пакет на сервере NFS (используйте sudo, если вы управляете системой как пользователь без полномочий root):

nfs-utils

Как настроить NFS-сервер

2. После завершения установки запустите службу nfs-server, включите её автоматический запуск при загрузке системы, а затем проверьте её состояние с помощью команд systemctl:

NFS


Как настроить NFS-сервер

Обратите внимание, что автоматически запускаются и другие службы, необходимые для работы сервера NFS или монтирования общих ресурсов NFS, такие как nfsd, nfs-idmapd, rpcbind, rpc.mountd, lockd, rpc.statd, rpc.rquotad и rpc.idmapd.

Файлы конфигурации для NFS-сервера:

3. Затем создайте файловые системы для экспорта или обмена на сервере NFS. Для этой статьи мы создадим две файловые системы.

4. Затем экспортируйте указанные выше файловые системы в файл конфигурации сервера NFS — /etc/exports, чтобы определить локальные физические файловые системы, доступные для клиентов NFS:


Вот некоторые из параметров экспорта (для получения дополнительной информации о параметрах экспорта прочитайте man export):

5. Чтобы экспортировать файловую систему, указанную выше, введите команду exportfs с флагом -a, означающим экспортировать или отменить экспорт всех каталогов, -r означает повторный экспорт всех каталогов, синхронизируя /var/lib/nfs/etab с /etc/exports и файлами в /etc/exports.d, а флаг -v включает подробный вывод:


Как настроить NFS-сервер

Чтобы отобразить текущий список экспорта, выполните следующую команду. Обратите внимание, что в таблице экспорта также применяются некоторые параметры экспорта по умолчанию, которые не определены явно, как показано на следующем скриншоте:

7. Затем, если у вас запущена служба firewalld, вам нужно разрешить трафик к необходимым службам NFS (mountd, nfs, rpc-bind) через брандмауэр, затем перезагрузите правила брандмауэра, чтобы применить изменения, как показано ниже:


Как настроить NFS-сервер

Настройка клиента NFS в клиентских системах

8. Теперь на клиентском узле(ах) установите необходимые пакеты для доступа к общим ресурсам NFS в клиентских системах. Запустите соответствующую команду для вашего дистрибутива:

9. Затем выполните команду showmount, чтобы показать информацию о монтировании для NFS-сервера. Команда должна вывести экспортированную файловую систему на клиент, как показано на скриншоте:


9. Затем создайте локальную файловую систему/каталог для монтирования удаленной файловой системы NFS и смонтируйте её как файловую систему nfs:

10. Затем убедитесь, что удаленная файловая система была смонтирована, запустив команду mount и отфильтровав nfs mounts:


11. Чтобы сделать монтирование постоянным даже после перезагрузки системы, введите следующую команду, чтобы ввести соответствующую запись в /etc/fstab:

Как настроить NFS-сервер

12. Наконец, проверьте, работает ли установка NFS, создав файл на сервере, и проверьте, виден ли этот файл на клиенте:

Затем выполните обратное:

13. Размонтировать удаленную файловую систему на стороне клиента:

Обратите внимание, что вы не можете размонтировать удаленную файловую систему, если вы работаете в ней.

В этой статье мы показали, как установить, настроить сервер и клиент NFS в CentOS/RHEL 8. Если у вас есть какие-либо мысли или вопросы, используйте форму комментариев ниже, чтобы связаться с нами.

Спасибо за уделенное время на прочтение статьи о том, как настроить NFS-сервер и клиент на CentOS 8!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Favorite

Добавить в избранное

Главное меню » Операционная система CentOS » Как установить и настроить сервер NFS на CentOS 8

(1 оценок, среднее: 5,00 из 5)

Как настроить сервер NFS на Ubuntu

Протокол NFS по умолчанию не шифруется и, в отличие от Samba, не обеспечивает аутентификацию пользователя. Доступ к серверу ограничен IP-адресами клиентов или именами хостов.

В этой статье вы пройдете шаги, необходимые для настройки сервера NFSv4 в CentOS 8. Мы также покажем вам, как смонтировать файловую систему NFS на клиенте.

Предпосылки

Мы предполагаем, что у вас есть сервер под управлением CentOS 8, на котором мы настроим сервер NFS и другие машины, которые будут действовать как клиенты NFS. Сервер и клиенты должны иметь возможность общаться друг с другом через частную сеть. Если ваш хостинг-провайдер не предлагает частные IP-адреса, вы можете использовать общедоступные IP-адреса и настроить брандмауэр сервера, чтобы разрешать трафик на порт 2049 только из надежных источников.

Машины в этом примере имеют следующие IP-адреса:

Настройте сервер NFS

В этом разделе объясняется, как установить необходимые пакеты, создать и экспортировать каталоги NFS и настроить брандмауэр.

Установка сервера NFS

Пакет «nfs-utils» предоставляет утилиты и демоны NFS для сервера NFS. Для его установки выполните следующую команду:

После завершения установки включите и запустите службу NFS, введя:

По умолчанию в CentOS 8 NFS версии 3 и 4.x включены, версия 2 отключена. NFSv2 сейчас довольно старый, и нет никаких причин для его включения. Чтобы проверить это, выполните следующую команду cat:

Параметры конфигурации сервера NFS установлены в файлы /etc/nfsmount.conf и /etc/nfs.conf. Настройки по умолчанию достаточны для нашей статьи.

Создание файловых систем

При настройке сервера NFSv4 рекомендуется использовать глобальный корневой каталог NFS и привязать монтируемые фактические каталоги к точке монтирования общего ресурса. В этом примере мы будем использовать каталог /srv/nfs4 в качестве корня NFS.

Чтобы лучше объяснить, как можно настроить монтирование NFS, мы собираемся использовать два каталога ( /var/www и /opt/backups) с разными настройками конфигурации.

/var/www/ принадлежит пользователю и группе apache и /opt/backups принадлежит root.

Создайте файловую систему экспорта с помощью команды mkdir:

Смонтируйте фактические каталоги:

Чтобы сделать привязку монтируемой постоянной, добавьте в файл /etc/fstab следующие записи :

Экспорт файловых систем

Следующим шагом является определение файловых систем, которые будут экспортироваться сервером NFS, параметров общего ресурса и клиентов, которым разрешен доступ к этим файловым системам. Для этого откройте файл /etc/exports:

Экспорт каталогов www и backups и разрешить доступ только от клиентов по сети 192.168.26.0/24:
/etc/export

Первая строка содержит fsid=0 каталог, определяющий корневой каталог NFS /srv/nfs. Доступ к этому тому NFS разрешен только клиентам из подсети 192.168.26.0/24. Параметр crossmnt необходим для совместного использования каталогов, которые являются подкаталогами экспортируемого каталога.

Во второй строке показано, как задать несколько правил экспорта для одной файловой системы. Он экспортирует каталог /srv/nfs4/backups и предоставляет доступ только для чтения ко всему диапазону 192.168.26.0/24, а также для чтения и записи 192.168.26.3. Опция sync сообщает NFS, чтобы записать изменения на диск, прежде чем ответить.

Последняя строка должна быть понятной. Для получения дополнительной информации обо всех доступных опциях введите man exportsсвой терминал.

Сохраните файл и экспортируйте общие ресурсы:

Вам нужно запускать команду выше каждый раз, когда вы изменяете файл /etc/exports. Если есть какие-либо ошибки или предупреждения, они будут показаны на терминале.

Чтобы просмотреть текущий активный экспорт и его состояние, используйте:

Вывод будет включать все акции с их опциями. Как вы можете видеть, есть также опции, которые мы не определили в файле /etc/exports. Это параметры по умолчанию, и если вы хотите изменить их, вам нужно явно установить эти параметры.

root_squash является одним из наиболее важных параметров безопасности NFS. Он не позволяет корневым пользователям, подключенным с клиентов, иметь права root на подключенных общих ресурсах. Он будет отображать корень UID и GID в nobody/nogroup UID/GID.

Вот и все. На этом этапе вы настроили сервер NFS на вашем сервере CentOS. Теперь вы можете перейти к следующему шагу, настроить клиентов и подключиться к серверу NFS.

Конфигурация брандмауэра

FirewallD является решением брандмауэра по умолчанию в Centos 8.

Служба NFS включает в себя предопределенные правила для доступа к серверу NFS. Следующие команды будут постоянно разрешать доступ из подсети 192.168.26.0/24:

Настройка клиентов NFS

Теперь, когда сервер NFS настроен и общие ресурсы экспортированы, на следующем шаге настройте клиенты и подключите удаленные файловые системы.

Вы также можете смонтировать общий ресурс NFS на компьютерах MacOS и Windows, но мы сосредоточимся на системах Linux.

Установка клиента NFS

На клиентских компьютерах установите инструменты, необходимые для монтирования удаленных файловых систем NFS.

Монтирование файловых систем

Мы будем работать на клиентском компьютере с IP-адресом 192.168.26.110, который имеет доступ для чтения и записи к /srv/nfs4/www и доступ только для чтения к каталогу /srv/nfs4/backups в файловой системе.

Создайте две новые директории для точек монтирования. Вы можете создавать эти каталоги в любом месте, которое вы хотите.

Смонтируйте экспортированные файловые системы с помощью команды mount:

Где 192.168.26.148 находится IP-адрес сервера NFS. Вы также можете использовать имя хоста вместо IP-адреса, но оно должно быть разрешено клиентским компьютером. Обычно это делается путем сопоставления имени хоста с IP в файле /etc/hosts.

При монтировании файловой системы NFSv4 вам нужно пропустить корневой каталог NFS, поэтому вместо /srv/nfs4/backups нужно использовать /backups.

Убедитесь, что удаленные файловые системы успешно смонтированы, используя команду mount или df:

Команда напечатает все смонтированные файловые системы. Последние две строки являются смонтированными долями:

Чтобы сделать монтирование постоянным при перезагрузке, откройте файл /etc/fstab:

и добавьте следующие строки:

Чтобы узнать больше информации о доступных опциях при монтировании файловой системы NFS, введите man nfs в свой терминал.

Тестирование NFS Access

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

Сначала попробуйте создать тестовый файл в каталоге /backups с помощью команды touch:

Далее попробуйте создать тестовый файл в каталоге /srv/www как root, используя команду sudo:

Каталог /var/www принадлежат к пользователю apache, и имеет root_squash, который отображает привилегированный пользователь к пользователю nobody и группе nogroup, которая не имеет права на запись на удаленный ресурс.

Предполагая, что пользователь apache существует на клиентском компьютере с тем же UIDи GID на удаленном сервере (что должно быть в случае, если, например, вы установили apache на обоих компьютерах), вы можете протестировать создание файла как пользователя apache:

Команда не будет отображать вывод, что означает, что файл был успешно создан.

Для проверки перечислите файлы в каталоге /srv/www:

Выходные данные должны показать вновь созданный файл:

Размонтирование файловой системы NFS

Если вам больше не нужен удаленный общий ресурс NFS, вы можете размонтировать его, как любую другую смонтированную файловую систему, с помощью команды umount. Например, чтобы размонтировать ресурс /backup, который вы запустите:

Заключение

В этой статье мы показали, как настроить сервер NFS и как монтировать удаленные файловые системы на клиентских компьютерах. Если вы внедряете NFS в производство и делитесь разумными данными, рекомендуется включить аутентификацию Kerberos.

В качестве альтернативы NSF вы можете использовать SSHFS для монтирования удаленных каталогов через SSH-соединение. SSHFS зашифрован по умолчанию и намного проще в настройке и использовании.

Не стесняйтесь оставлять комментарии, если у вас есть какие-либо вопросы.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.


Примечание: в CentOS 8 или RHEL 8 поддерживаются NFSv3 и v4 . NFSv3 обеспечивает безопасную асинхронную запись и поддерживает 64-битные размеры и смещение файлов. В то время как NFSv4 работает через брандмауэр ОС и поддерживает ACL (список контроля доступа) и не требует службы rpcbind.

Настройка сервера / клиента NFS

Прежде чем мы начнем, мы собираемся использовать приведенную ниже настройку, чтобы смоделировать, как протокол NFS работает в настройке клиент / сервер.

  • IP-адрес серверной машины: адрес: 192.168.2.102 CentOS 8
  • IP-адрес клиентской машины: адрес: 192.168.2.103 CentOS 8

Имея под рукой нашу настройку, давайте начнем установку NFS на сервере.

Шаг 1) Установите и настройте NFS на сервере CentOS 8 / RHEL 8

Для начала мы установим пакет сервера NFS под названием nfs-utils, который действует как демон NFS. Чтобы установить пакет nfs-utils, запустите терминал и выполните команду:

В приведенном ниже примере nfs-utils уже установлен.

После завершения установки запустите и включите службу nfs-server, чтобы она работала автоматически при перезагрузках. Выполните следующие команды,

Как настроить сервер NFS на CentOS 8

После завершения установки запустите и включите службу nfs-server, чтобы она работала автоматически при перезагрузках. Выполните следующие команды,

Как настроить сервер NFS на CentOS 8

Вы можете проверить версию используемого протокола nfs, выполнив команду:

Версия указывается во втором столбце выходных данных, представленных ниже.

Как настроить сервер NFS на CentOS 8

Для дополнительной настройки сервера NFS вы можете найти файлы конфигурации в /etc/nfs.conf, который является файлом конфигурации демона NFS, и /etc/nfsmount.conf, который является файлом конфигурации для монтирования NFS.

Шаг 2) Создание и экспорт общего ресурса NFS

На этом этапе мы собираемся создать файловую систему, которая будет использоваться сервером для клиентских систем. В этом руководстве мы создадим каталог в / mnt / nfs_share / docs, как показано ниже.

$ sudo mkdir -p /mnt/nfs_shares/docs

Как настроить сервер NFS на CentOS 8

Чтобы избежать ограничений файлов в общем каталоге NFS, рекомендуется настроить владение каталогом, как показано. Это позволяет создавать файлы из клиентских систем без каких-либо проблем с разрешениями.

Кроме того, вы можете настроить права доступа к каталогу в соответствии с вашими предпочтениями. Например, в этом руководстве мы назначим все разрешения (чтение, запись и выполнение) общей папке NFS.

Как настроить сервер NFS на CentOS 8

Чтобы изменения вступили в силу, перезапустите демон NFS:

Чтобы экспортировать общий ресурс NFS, чтобы клиентские системы могли получить к нему доступ, нам нужно отредактировать файл / etc / exports . Вы можете разрешить доступ нескольким клиентам к общему ресурсу, указав подсеть, как показано

Также вы можете указать каждого клиента в отдельной строке:

Сохраните и выйдите из файла. Используйте команду cat, чтобы подтвердить ввод, как показано

Давайте посмотрим на значение используемых параметров:

Чтобы экспортировать созданную выше папку, используйте команду exportfs, как показано:

Как настроить сервер NFS на CentOS 8

Параметр -a означает, что все каталоги будут экспортированы, -r означает повторный экспорт всех каталогов и, наконец, флаг -v отображает подробный вывод.

Чтобы быть уверенным в списке экспорта, вы можете отобразить список экспорта с помощью команды:

Как настроить сервер NFS на CentOS 8

Идеально! Наш экспортный список существует. Все идет нормально. Единственная конфигурация, оставшаяся на сервере NFS, разрешает службы NFS на брандмауэре.

Шаг 3) Настройка правил брандмауэра для NFS-сервера

Затем перезагрузите брандмауэр, чтобы изменения вступили в силу.

Теперь давайте перейдем к клиентской системе и настроим ее для доступа к общим ресурсам NFS.

Настройка клиентской системы NFS

Чтобы настроить клиентскую систему для доступа к общим файловым ресурсам NFS, выполните следующую процедуру.

Шаг 1) Установите необходимые пакеты NFS

В клиентской системе CentOS 8 установите необходимые пакеты для доступа к общему ресурсу NFS, находящемуся на сервере NFS.

Для системы Debian или Ubuntu:

Как настроить сервер NFS на CentOS 8

Чтобы отобразить подключенные общие ресурсы NFS на сервере, используйте команду showmount :

Как настроить сервер NFS на CentOS 8

Шаг 2) Подключение удаленного общего ресурса NFS, расположенного на сервере

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

Как настроить сервер NFS на CentOS 8

Вы можете проверить, что удаленный общий ресурс NFS смонтирован, выполнив:

Как настроить сервер NFS на CentOS 8

Чтобы сделать общий ресурс монтирования постоянным после перезагрузки, вам необходимо отредактировать файл /etc/fstab и добавить запись ниже.

Как настроить сервер NFS на CentOS 8

Сохраните и закройте файл.

Тестирование сервера NFS и настройки клиента

На этом мы закончили со всеми настройками. Однако нам нужно протестировать нашу настройку и убедиться, что все работает. Итак, сначала мы собираемся создать тестовый файл в общем каталоге сервера NFS и проверить, присутствует ли он в смонтированном каталоге NFS клиента.

Как настроить сервер NFS на CentOS 8

Теперь перейдите в клиентскую систему и проверьте, существует ли файл на стороне клиента.

Как настроить сервер NFS на CentOS 8

Большой! Из вывода мы ясно видим, что файл существует. А теперь сделаем наоборот. Мы собираемся создать файл в клиентской системе NFS и проверить, можно ли получить к нему доступ с сервера NFS.

На клиенте создайте файл, как показано:

Как настроить сервер NFS на CentOS 8

Теперь вернитесь на сервер и проверьте, присутствует ли файл в общей директории NFS.

Потрясающие! Мы можем просмотреть файл и получить к нему доступ.

Как видите, вы можете легко создавать файлы как на сервере NFS, так и на клиенте и беспрепятственно обмениваться ими между двумя системами, а также другими клиентскими системами, которые были настроены для доступа к общим папкам. И на этом мы подошли к концу нашего сегодняшнего урока. В этом руководстве мы показали вам, как установить и настроить сервер NFS и настройку клиентской системы на CentOS 8 и RHEL 8.

Читайте также: