Во-первых, прошу меня извинить, если мой вопрос неправильно сформулирован, это мой первый пост о 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 .
Я проверил код, который генерирует сообщение: «имя входящего домена» относится к удаленному (то есть серверу) домену nfs4. Я прослушал трафик и увидел, что сервер правильно отправляет fattr4_owner как «testuser@example.com». Проблема, похоже, связана с reco_attr: ACL, где у меня есть три ACE.
Поля «Кто» в ACE: «OWNER @», «GROUP @» и «EVERYONE @», поэтому я предполагаю, что они вызывают сообщение об ошибке «недопустимое имя входящего домена».
OWNER @, GROUP @ и EVERYONE @ (среди прочих) указаны со специальным значением в RFC, который определяет ACL NFSv4, и, как я упоминал ранее, другие хосты, обращающиеся к общим ресурсам NFS, не имеют проблем с ними.
Я выполнил поиск на сайте Oracle и указал этих принципалов как «owner @», «group @» и «every @» в некоторых из их статей о NFSv4 / ACL / ZFS.
У меня нет доступа к серверу NFS Solaris, но я предполагаю, что он отправляет ACE с этими участниками в нижнем регистре, а собственный клиент NFSv4 Solaris 10 не может обрабатывать их в верхнем регистре (как указано в RFC).
Итак, мой вопрос: пробовал ли кто-нибудь подобное развертывание и получил ли он те же результаты. Было бы замечательно, если бы кто-нибудь, у кого есть работающий клиент Solaris 10 NFSv4, проверил бы участников в ACL. На самом деле, здесь было бы здорово любое предложение.
Заранее спасибо!