Совместное
использование каталогов в сети
Прежде чем
другие пользователи смогут получить доступ к вашим файлам/каталогам, вы должны
сделать эти каталоги доступными для совместного использования в сети. Экспорт
каталогов с 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 в режиме корневого пользователя.