NFS4 공유, Solaris 10 클라이언트, CentOS 7 서버에서 ACL을 읽을 수 없습니다.

NFS4 공유, Solaris 10 클라이언트, CentOS 7 서버에서 ACL을 읽을 수 없습니다.

우선, 제 질문이 제대로 구성되지 않은 경우 양해해 주시기 바랍니다. 이것은 serverfault에 대한 첫 번째 게시물입니다 :)

혼합된 Linux/Windows/Solaris 네트워크에 LDAP 및 Kerberos 인증을 성공적으로 배포했습니다. krb5 보안(개인 정보 보호/무결성 없음, 인증만 있음)으로 NFS4를 제공하는 CentOS 7 서버가 있습니다. 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이 클라이언트와 사용자 모두에 올바르게 설정되어 있으며 ID 매핑이 사용자에 대해 작동하는 것 같습니다.

$ 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를 "[이메일 보호됨]". 문제는 세 개의 ACE가 있는 reco_attr: ACL에 있는 것 같습니다.

ACE의 "Who" 필드는 "OWNER@", "GROUP@" 및 "EVERYONE@"이므로 "잘못된 인바운드 도메인 이름" 오류 메시지가 발생하는 것 같습니다.

OWNER@, GROUP@ 및 EVERYONE@(다른 여러 항목 중에서)은 NFSv4 ACL을 정의하는 RFC에서 특별한 의미로 지정되며 앞서 언급한 것처럼 NFS 공유에 액세스하는 다른 호스트에는 아무런 문제가 없습니다.

저는 Oracle 사이트를 검색했고 일부 NFSv4/ACL/ZFS 기사에서 이러한 주체를 "owner@", "group@" 및 "everyone@"으로 문서화했습니다.

Solaris NFS 서버에 대한 액세스 권한이 없지만 이러한 주체가 소문자로 포함된 ACE를 보내고 기본 Solaris 10 NFSv4 클라이언트는 RFC에 지정된 대로 이를 대문자로 처리할 수 없는 것 같습니다.

그래서 내 질문은 다른 사람이 비슷한 배포를 시도했고 동일한 결과를 얻었는지입니다. Solaris 10 NFSv4 클라이언트를 사용하는 사람이 ACL에서 주체를 확인한다면 좋을 것입니다. 사실 현 시점에서는 어떤 제안이라도 좋을 것 같습니다.

미리 감사드립니다!

관련 정보