
Во-первых, извините, если мой вопрос сформулирован не совсем корректно, это мой первый пост на serverfault :)
Я успешно развернул аутентификацию LDAP и Kerberos в смешанной сети Linux/Windows/Solaris. У меня есть сервер CentOS 7, обслуживающий NFS4 с безопасностью krb5 (без конфиденциальности/целостности, только аутентификация). Я могу успешно монтировать общие ресурсы на CentOS 6. Однако, когда я монтирую общий ресурс на Solaris 10 (Oracle Solaris 10 9/10 s10s_u9wos_14a SPARC), я получаю какую-то странную ошибку, связанную с ACL.
Вывод из монтирования:
/mnt/exporthome on nfsserver.example.com:/export/home remote/read/write/setuid/devices/sec=krb5/xattr/dev=5ec0004
У меня есть доступ, я могу прочитать файлы:
$ ls /mnt/exporthome/testuser/
testfile1.txt textfile2.txt
Однако я не могу прочитать разрешения/ACL, вместо этого я получаю:
$ ls -la /mnt/exporthome/testuser/
ls: can't read ACL on /mnt/exporthome/testuser/: Permission denied
nfs4_domain правильно настроен как на клиенте, так и на пользователе, и сопоставление идентификаторов, похоже, работает для пользователя:
$ getfacl /mnt/exporthome/testuser/
# file: /mnt/exporthome/testuser/
# owner: testuser
# group: testgroup
user::rwx
group::--- #effective:---
mask:rwx
other:---
я вижу
в журналах появляется следующее сообщение:
/usr/lib/nfs/nfsmapid[349]: [ID 300081 daemon.error] valid_domain: Invalid inbound domain name .
Я проверил код, который генерирует сообщение, "inbound domain name" относится к удаленному (т.е. серверному) домену nfs4. Я прослушал трафик и вижу, что сервер правильно отправляет fattr4_owner как "[email protected]". Проблема, по-видимому, связана с reco_attr: ACL, где у меня три ACE.
Поля «Кто» в ACE: «OWNER@», «GROUP@» и «EVERYONE@», поэтому я предполагаю, что они вызывают сообщение об ошибке «недопустимое входящее доменное имя».
OWNER@, GROUP@ и EVERYONE@ (наряду с несколькими другими) имеют особое значение в RFC, определяющем списки контроля доступа NFSv4, и, как я упоминал ранее, другие хосты, получающие доступ к общим ресурсам NFS, не испытывают с ними никаких проблем.
Я поискал на сайте Oracle и в некоторых статьях NFSv4/ACL/ZFS задокументировал эти принципалы как «owner@», «group@» и «everyone@».
У меня нет доступа к серверу Solaris NFS, но я предполагаю, что он отправляет записи ACE с этими принципалами в нижнем регистре, а собственный клиент Solaris 10 NFSv4 не может обрабатывать их в верхнем регистре (как указано в RFC).
Итак, мой вопрос: пробовал ли кто-нибудь подобное развертывание и были ли у них такие же результаты? Было бы здорово, если бы кто-то с работающим клиентом Solaris 10 NFSv4 проверил принципалов в ACL. На самом деле, на этом этапе любое предложение было бы здорово.
Заранее спасибо!