Kerberos화된 nfs 홈 디렉토리 마운트를위한 설정-gssd가 유효한 Kerberos 티켓을 찾을 수 없음


17

우리의 홈 디렉토리는 kerberized nfs를 통해 익스포트되므로 사용자는 홈을 마운트 할 수있는 유효한 kerberos 티켓이 필요합니다. 이 설정은 기존 클라이언트 및 서버에서 잘 작동합니다.

이제 11.10 클라이언트를 추가하여 pam_mount와 함께 ldap & kerberos를 설정하려고합니다. LDAP 인증이 작동하고 사용자는 ssh를 통해 로그인 할 수 있지만 집을 마운트 할 수는 없습니다.

pam_mount가 루트로 마운트되도록 구성되면 gssd가 유효한 kerberos 티켓을 찾지 못해 마운트에 실패합니다.

Nov 22 17:34:26 zelda rpc.gssd[929]: handle_gssd_upcall: 'mech=krb5 uid=0 enctypes=18,17,16,23,3,1,2 '
Nov 22 17:34:26 zelda rpc.gssd[929]: handling krb5 upcall (/var/lib/nfs/rpc_pipefs/nfs/clnt2)
Nov 22 17:34:26 zelda rpc.gssd[929]: process_krb5_upcall: service is '<null>'
Nov 22 17:34:26 zelda rpc.gssd[929]: getting credentials for client with uid 0 for server purple.physcip.uni-stuttgart.de
Nov 22 17:34:26 zelda rpc.gssd[929]: CC file '/tmp/krb5cc_65678_Ku2226' being considered, with preferred realm 'PURPLE.PHYSCIP.UNI-STUTTGART.DE'
Nov 22 17:34:26 zelda rpc.gssd[929]: CC file '/tmp/krb5cc_65678_Ku2226' owned by 65678, not 0
Nov 22 17:34:26 zelda rpc.gssd[929]: WARNING: Failed to create krb5 context for user with uid 0 for server purple.physcip.uni-stuttgart.de
Nov 22 17:34:26 zelda rpc.gssd[929]: doing error downfall

반면에 pam_mount가 noroot = 1 옵션으로 구성된 경우 볼륨을 전혀 마운트 할 수 없습니다.

Nov 22 17:33:58 zelda sshd[2226]: pam_krb5(sshd:auth): user phy65678 authenticated as phy65678@PURPLE.PHYSCIP.UNI-STUTTGART.DE
Nov 22 17:33:58 zelda sshd[2226]: Accepted password for phy65678 from 129.69.74.20 port 51875 ssh2
Nov 22 17:33:58 zelda sshd[2226]: pam_unix(sshd:session): session opened for user phy65678 by (uid=0)
Nov 22 17:33:58 zelda sshd[2226]: pam_mount(mount.c:69): Messages from underlying mount program:
Nov 22 17:33:58 zelda sshd[2226]: pam_mount(mount.c:73): mount: only root can do that
Nov 22 17:33:58 zelda sshd[2226]: pam_mount(pam_mount.c:521): mount of /Volumes/home/phy65678 failed

그렇다면 특정 그룹의 사용자가 nfs 마운트를 수행 할 수있게하려면 어떻게해야합니까? 이것이 작동하지 않으면 pam_mount가 root를 사용하도록하지만 올바른 uid를 전달할 수 있습니까?


동일한 문제가 다음과 같은 CIFS 공유 마운트에 적용됩니다-osec=krb5
AdmiralNemo

실제로이 문제는 아직 해결되지 않았습니다. 제목과 내용이 같은 다른 질문을 작성하거나 "재 게시"란 무엇을 의미합니까?
jan bernlöhr

나는 kerberized nfs를 사용하여 루트로 마운트했지만 (시스템 키 탭으로) 파일 액세스는 각 사용자의 티켓으로 수행됩니다.
Jayen

삭제 된 쿼리
댓글

당신은 마운트 /home /home/user/home/user/mountpoint? 내가 생각하는 첫 번째는 로그인하기 전에 수행해야합니다. 두 번째로 sshfs와 관련을 시도했지만 GDM 및 lightdm 로그인에서 계속 실패했으며 sshfs의 결함이라고 생각하지 않습니다. 세 번째는 작동합니다. nfs 마운트를 수행 할 수있는 그룹에 사용자를 추가하면됩니다. 두 번째 일을하게되면 알려주십시오. 관심이 있습니다.
d_inevitable

답변:


2

이 스레드를 참조하십시오 :

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=190267

fstab에 "user"옵션이 없으면 root 만 볼륨을 마운트 할 수 있습니다. mount.c에는 모든 사용자가 mount 명령을 실행 가능하게하는 것에 대한 설명이 있지만 관리자가이를 거부했습니다 (주석은 보안 관련 사항에 대해 언급하지만 더 구체적이지는 않습니다).

원래 업스트림과 달리 데비안 버전의 libpam-mount 는 root가 아닌 사용자 uid를 사용하여 mount 명령을 실행 합니다. 루트로 사용자 지정 마운트를 수행하는 것은 보안상의 허점입니다. 그런 다음 모든 사용자는 로그인시 볼륨을 / usr 또는 / tmp에 마운트하거나 로그 아웃시 다른 볼륨을 마운트 해제 할 수 있습니다.

즉, libpam-mount는 사용자가 할 수있는 일만 할 수 있습니다.

그래서 어떤 제안?

fstab에 사용자 항목을 넣으면됩니다. 이것이 어떻게 작동하는지 알려주세요. 다른 파일 시스템 (ncp, smb)에는 smbmount 또는 ncpmount와 같은 사용자 호출 가능 마운트 바이너리가 있습니다. 루프백 마운트에는 다음과 같은 것이 없습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.