Совместное использование каталогов в сети

Прежде чем другие пользователи смогут получить доступ к вашим файлам/каталогам, вы должны сделать эти каталоги доступными для совместного использования в сети. Экспорт каталогов с NfS предполагает использование двух демонов, /usr/sbin/rpc .nfsd и /usr/sbin/rpc .mountd, и одного файла конфигурации /etc/exports. Файлы rpc.mountd и rрс. nfsd устанавливаются на большинстве систем. Если эти файлы отсутствуют, установите их из RPm-файла nf s-utils-0.3.1-5.1386. rpm прилагаемого компакт-диска.

NfS и брандмауэры

Если в ходе установки Red Hat Linux 7.1 вы установили брандмауэр по умолчанию, он заблокирует совместное использование каталогов в NfS. Если ваш компьютер входит в локальную сеть и не имеет выходов в другие сети, можно отключить брандмауэр на нем. Брандмауэр действительно необходим только на компьютере, имеющем выход во внешние сети (например, на компьютере, играющем роль шлюза).

Большинство брандмауэров Linux отключается либо командой /etc/re, d/init.d/ipchains stop либо командой /etc/re .d/init. d/iptables stop. Но такое отключение действует только до следующей перезагрузки. Совсем отключить брандмауэр можно с помощью меню ntsysv. Выполните команду /usr/sbin/ntsysv. Как только возникнет меню Services (Сервисы), сбросьте флажки сервисов ipchains и iptables, как показано на следующей иллюстрации.

Если каталог, который вы хотите разрешить для совместного использования, расположен На компьютере-шлюзе, подключенном к вашему компьютеру и Интернету, то брандмауэр необходим. Даже работая с брандмауэром, лучше не использовать NfS из соображений безопасности. Но если вам все-таки необходимо использовать NfS для предоставления доступа к каталогам на компьютере-шлюзе, воспользуйтесь утилитой конфигурирования брандмауэра, описанной в гл. 31, чтобы открыть порты 111 и 2049. Таким образом будут открыты каналы, необходимые для Network file System.

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

/каталог хост (параметры)

Ниже приведен пример типичного файла /etc/exports.

# sample /etc/exports file

/ master(rw). trusty(rw,no_root_squash)

/projects proj* . local ..domain (rw)

/usr *.local.domain(ro)

/home/joe pcOOl(rw,all_squash,anonuid=150,anongid=100)

/pub (ro,insecure,all_sguash)

/pub/private (noaccess)

Рассмотрим этот файл построчно.

Строка 1. Строка комментариев, обозначенная знаком диеза (#), игнорируется. Строка 2. Двум компьютерам даны различные уровни доступа к каталогу /: master - с правом чтения и записи (опция rw), trusty - с правом чтения и записи и правом полного доступа ко всем файлам и подкаталогам для пользователя root (опция no_root_squash). Пользователь root компьютера trusty имеет те же права, что и пользователь root локальной системы.

Строка 3. Любому хост-компьютеру, имя которого начинается с символов proj и который является частью домена local. domain, предоставляются права чтения и записи в каталоге /projects.

Строка 4. Любому хост-компьютеру в домене local. domain предоставляется право на чтение (опция го) каталога /usr.

Строка 5. Хост-компьютер рс 0 01 получает права на чтение и запись в каталог / home / j oe. Все пользователи, использующие эту точку монтирования с компьютера pc001, считаются анонимными пользователями (опция all_squash) с iD пользователя 150 и iD группы 150 (опции anonuid=150 и anongid=150).

Строка 6. Всем хост-компьютерам предоставлено право доступа к каталогу /pub. Все пользователи считаются анонимными и получают право чтения. Опция insecure позволяет клиентам, которые не используют зарезервированный порт ТСР/iР для NfS, осуществлять доступ к этой точке монтирования.

Строка 7. Всем хост-компьютерам запрещен доступ к каталогу /pub/private (опция noaccess).

С другими опциями для файла /etc/exports можно ознакомиться в руководстве, используя команду

$ man exports

Если каталог для экспорта определен как /etc/exports, необходимо перезапустить процессы rpc. nf sd и rpc . mountd (обычно они выполняются во время начальной загрузки). Сначала используется команда ps для проверки iD каждого процесса.

$ ре aux | grep rpc.nfsd

root 15-03 0.2 0.8 872 508 ? S 22:25 0:00 /usr/sbin/rpc.nfsd

$ ps aux | grep rpc.mountd

root 1105 0 0.7 836 500 ? S 22:25 0:00 /usr/sbin/rpc.mountd

Затем следует уничтожить и перезапустить процессы.

$ kill 1103 1105; /usr/sbin/rpc.nfsd; /usr/sbin/rpc.mountd

Предупреждение

Выполните на вашем компьютере указанные выше команды ps aux. С учетом параметров вашего компьютера, числа, выдаваемые командами ps aux, должны отличаться от 1103 и 1105.

Теперь для доступа удаленных пользователей сети работают новые правила экспорта.

Совет

В некоторых дистрибутивах Linux для перезапуска rpc.nfsd и rpc. mountd необходимо перезапустить демон nfs. Например, в Red Hat Linux 7.1 следует выполнить команду /etc/re.d/init.d/nfs restart в режиме корневого пользователя.