보조 그룹에 대한 NFS 권한 문제

보조 그룹에 대한 NFS 권한 문제

Debian 7을 실행하고 NFSv3 공유를 내보내는 서버와 Centos 5를 실행하고 이에 액세스하는 클라이언트가 있습니다. 이는 기본이 아닌 그룹을 기반으로 한 권한과 관련된 한 가지 문제를 제외하고는 훌륭하게 작동합니다.

서버에 770 권한이 있는 디렉터리를 생성할 때 디렉터리 소유자와 동일한 그룹에 속한 클라이언트 사용자는 해당 그룹이 사용자의 기본 그룹이 아닌 경우 여전히 디렉터리에 액세스할 수 없습니다.

여기서 무엇이 잘못될 수 있는지 아시나요? 디렉터리가 사용자의 기본 그룹에 속하면 제대로 작동하지만 보조 그룹에 속하면 제대로 작동하지 않습니다.

답변1

문제는 --manage-gids데비안에서 기본적으로 활성화된 옵션과 관련이 있을 수 있습니다(참고자료 참조).rpc.mountd/etc/default/nfs-kernel-server

매뉴얼 페이지에서:

-g 또는 --manage-gids

커널의 요청을 수락하고 액세스 제어를 위해 사용자 ID 번호를 그룹 ID 번호 목록에 매핑합니다. NFS 요청에는 일반적으로(Kerberos 또는 기타 암호화된 인증을 사용하지 않는 한) 사용자 ID 및 그룹 ID 목록이 포함됩니다. NFS 프로토콜의 제한으로 인해 최대 16개의 그룹 ID가 나열될 수 있습니다.-g 플래그가 사용되는 경우 클라이언트로부터 수신된 그룹 ID 목록은 서버에서 적절한 조회를 통해 결정된 그룹 ID 목록으로 대체됩니다.. "기본" 그룹 ID는 영향을 받지 않으므로 클라이언트의 newgroup 명령은 계속 작동합니다. 이 기능을 사용하려면 Linux 커널 버전 2.6.21 이상이 필요합니다.

따라서 "16개 그룹" 제한에 도달하지 않은 경우 서버에서 이 옵션을 비활성화해 볼 수 있습니다.

답변2

내 문제는 NFS 서버에 그룹("www-data")이 없지만 파일이 user:www-data로 표시된다는 것입니다. 그래서 클라이언트와 동일한 ID로 그룹을 만들어서 다시 게시했습니다.

chown -R user:www-data

그러면 문제가 사라집니다.

관련 정보