NFS: делиться со всеми клиентами, кроме одного

Я хочу поделиться папкой со всеми клиентами сети, кроме одного. Это мой текущий файл /etc/exports :

 /opt/resources *(rw,async) 

Что следует добавить для предотвращения использования клиента 192.168.1.24 без необходимости упоминания всех других адресов авторизованных клиентов?

3 Solutions collect form web for “NFS: делиться со всеми клиентами, кроме одного”

Я не знаю ни одного сервера NFS, который принимает отрицательные шаблоны в файле exports .

Вы можете использовать сетевые маски для покрытия нескольких клиентов одновременно, если вы указываете IP-адреса (вы не можете использовать шаблоны подстановок для IP-адресов). Например, следующая строка соответствует 192.168.1. * Кроме 192.168.1.24. Да, это утомительно.

 /opt/resources 192.168.1.0/28(rw,async) 192.168.1.16/29(rw,async) 192.168.1.25(rw,async) 192.168.1.26/31(rw,async) 192.168.1.28/30(rw,async) 192.168.1.32/27(rw,async) 192.168.1.64/26(rw,async) 192.168.1.128/25(rw,async) 

Вы можете избежать загромождения файла exports и, возможно, дублирования, используя сетевую группу NIS . Однако в файле netgroup вам нужно будет перечислить все хосты во всех списках.

Если вы не можете найти удовлетворительный способ описания списков доступа для каждого экспортированного дерева, вы можете автоматически генерировать файлы hosts или netgroup .

AFAIK, NFS не имеет возможности отклонить указанный клиент (поскольку, если клиент не указан в записи exports , он не может получить доступ к общему ресурсу).

В вашем случае, я думаю, вы можете использовать host.deny чтобы лишить клиента доступа к общей host.deny NFS . Добавьте строку в /etc/host.deny :

 portmap:192.168.1.24 

Это, конечно, не идеальное решение, потому что клиент, который указан в /etc/host.deny не может получить доступ к другим ресурсам на сервере NFS .

Другой способ – использовать ipset с iptables. ipset доступен в большинстве базовых репозиториев linux.

Вы можете сделать ipset IP-адресов, используя, например,

 ipset create serverblacklist hash:net ipset -A serverblacklist 192.168.1.24 

… и добавьте такое правило, чтобы заблокировать IPs-таблицу «serverblacklist» таблицы ipset-

 iptables -A INPUT -p tcp -m set --match-set serverblacklist src -j DROP 

Аналогичным образом, вы также можете сделать белый список IP-адресов, чтобы разрешить, и запись IPtables, чтобы явно разрешить их, в зависимости от того, что наиболее целесообразно.

  • YUM UPDATE застрял навсегда
  • Служба Systemd запускает только один из двух процессов, но только при перезагрузке ОС
  • yum-builddep создает зависимости от источника
  • Использование образа диска DD на Red Hat
  • Автоматический вход в систему по-прежнему не работает после редактирования custom.conf
  • Как указать конкретный продукт в файле udev hwdb?
  • Какова цель avahi на сервере RHEL 7?
  • Iptables -F постоянно удаляет все правила iptables?
  • Могу ли я уведомить об отправке сообщения на другой монитор?
  • позволяя пользователям получать доступ к определенным портам на сервере
  • Совместное использование файлов между RedHat и Mac
  • Linux и Unix - лучшая ОС в мире.