Назад | Перейти на главную страницу

Смонтируйте несколько nfs4 на CentOS без совместного использования родительского каталога

Я хочу поделиться /share/foo и /share/bar и т.д. через NFS на CentOS.

Я столкнулся с эта общая проблема:

mount.nfs4: mounting 192.168.101.254:/share/foo failed, reason given by server: No such file or directory

Решение, похоже, состоит в том, чтобы экспортировать родительский каталог /share с участием fsid=0 а затем монтировать команды на клиенте, используя пути, относящиеся к /share, т.е.

файл экспорта сервера:

/share 192.160.0.0/16(rw,fsid=0)
/share/foo 192.160.0.0/16(ro)
/share/bar 192.160.0.0/16(ro)

клиент fstab:

192.168.101.254:/foo /share/foo nfs4 intr

Но если я хочу экспортировать это с сервера:

/share/private 192.168.101.123(ro)

тогда это не будет доступно на машинах, кроме 192.168.101.123 потому что многие адреса имеют доступ к /share и его подкаталоги?

Если да, то это неприемлемая дыра в безопасности. Если нет, то как я могу гарантировать, что ни один клиент не сможет получить доступ? /share/private несмотря на то, что они могут получить доступ /share?

Таким образом, мне нужен сервер для экспорта /share/foo, /share/bar, и /share/private к разные клиентские машины через nfs4.

Лучший способ справиться с этим - использовать привязку монтирования: создать папку только для экспорта NFS:

mkdir /srv/nfs

а затем добавьте это в свой / etc / fstab:

/share/foo  /srv/nfs/foo    none    defaults,bind    0  0
/share/foo  /srv/nfs/bar    none    defaults,bind    0  0

/ Etc / exports точно такой же, за исключением того, что / share заменен на / srv / nfs. Также убедитесь и назначьте уникальные идентификаторы файловых систем для записей foo и bar в / etc / exports.