Я экспортировал общий ресурс со своего сервера и установил anonuid и anongid равными 0 (root). Однако, когда я монтирую общий ресурс на клиенте, похоже, что мои настройки не работают, поскольку я получаю отказ в доступе к папкам в общей папке, принадлежащей пользователю root.
Сервер CentOS 5.7
/ Клиент CentOS 6.4
с помощью NFS version 3.2.29.
Вот мой / etc / exports на СЕРВЕРЕ:
/STORAGE 10.0.5.10(rw,sync,no_subtree_check,no_root_squash,anonuid=0,anongid=0)
В основном, когда клиент (10.0.5.10)
подключается к серверу, мне нужно, чтобы он вел себя так, как если бы он был root на сервере. Заранее благодарю за помощь !!
Если вы хотите, чтобы любой пользователь 10.0.5.10 отображался как root, вы хотите сделать это:
/STORAGE 10.0.5.10(rw,sync,no_subtree_check,all_squash,anonuid=0,anongid=0)
all_squash
сообщает NFS, что для любого пользователя, подключающегося из 10.0.5.10, игнорируйте их фактический UID / GID и вместо этого обрабатывайте их так, как если бы UID = anonuid и GID = anongid. Поскольку вы устанавливаете anonuid=0,anongid=0
что дает всем пользователям 10.0.5.10
привилегии корневого доступа на /STORAGE
, эффективно обходя все меры безопасности на /STORAGE
и оставляя его широко открытым для злоупотреблений со стороны любого, кто приходит с IP-адреса 10.0.5.10.
FWIW, это ужасная идея с точки зрения безопасности.
Если вы можете использовать NFSv4 на сервере, вы можете включить отображение UID / GID и добавить статическую карту в /etc/idmapd.conf
на сервере, сообщая ему, что конкретному пользователю 10.0.5.10 должен быть предоставлен root-доступ на сервере NFSv4. man idmapd.conf
для получения подробной информации о настройке файла конфигурации. После настройки файла конфигурации на сервере NFSv4 обновите экспорт:
/STORAGE 10.0.5.10(rw,sync,no_subtree_check,no_root_squash)
Затем вы просто хотите включить отображение, очистить кеш idmap и перезапустить картографический сервис:
echo N > /sys/module/nfs/parameters/nfs4_disable_idmapping
nfsidmap -c
service rpcidmapd restart
Если вы сделаете это, вы дадите root-доступ только одному пользователю, а не всем пользователям.
Прежде всего, вам следует перейти на NFS4, так как в каждой версии все немного отличается.
Вместо того no_root_squash
вам нужно будет использовать root_squash
или all_squash
- это единственный актуальный параметр по этому вопросу.
all_squash
заставляет любого клиента, подключенного к этому общему ресурсу, использовать идентификатор, указанный в anonuid
/anongid
параметры.