Configuration pour le montage du répertoire de base nfs kerberized - gssd ne trouve pas de ticket kerberos valide

17

Nos répertoires personnels sont exportés via nfs kerberisés, donc l'utilisateur a besoin d'un ticket kerberos valide pour pouvoir monter sa maison. Cette configuration fonctionne bien avec nos clients et serveurs existants.

Maintenant, nous voulons ajouter un client 11.10 et ainsi configurer ldap & kerberos avec pam_mount. L'authentification LDAP fonctionne et les utilisateurs peuvent se connecter via ssh, mais leurs maisons ne peuvent pas être montées.

Lorsque pam_mount est configuré pour monter en tant que root, gssd ne trouve pas de ticket kerberos valide et le montage échoue.

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

Lorsque pam_mount est en revanche configuré avec l'option noroot = 1, il ne peut pas du tout monter le volume.

Nov 22 17:33:58 zelda sshd[2226]: pam_krb5(sshd:auth): user phy65678 authenticated as [email protected]
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

Alors, comment pouvons-nous permettre aux utilisateurs d'un groupe spécifique d'effectuer des montages nfs? Si cela ne fonctionne pas, pouvons-nous faire en sorte que pam_mount utilise root mais passe le bon uid?

jan bernlöhr
la source
Ce même problème s'applique au montage de partages CIFS avec-osec=krb5
AdmiralNemo
En effet, ce problème n'est pas encore résolu. Dois-je créer une autre question avec le même titre et contenu ou qu'entendez-vous par «republier»?
jan bernlöhr
Je pensais qu'avec nfs kerberized, vous montez en tant que root (avec le keytab système), mais l'accès aux fichiers se fait avec le ticket de chaque utilisateur.
Jayen
suppression du commentaire de la requête
Ringtail
Montez-vous /home /home/userou /home/user/mountpoint? Je pense que le premier doit être fait avant la connexion. La seconde, j'ai essayé de le faire avec sshfs, mais il échouait toujours sur GDM et la connexion à lightdm et je ne pense pas que ce soit la faute de sshfs. Le troisième devrait fonctionner, il vous suffit d'ajouter l'utilisateur à un groupe autorisé à effectuer des montages nfs. S'il vous plaît laissez-moi savoir si vous obtenez le 2ème au travail. Je serais intéressé.
d_inevitable

Réponses:

2

Voir ce fil:

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

S'il n'y a pas d'option "utilisateur" dans fstab, seul root peut monter des volumes. Il y a un commentaire dans mount.c sur la possibilité de rendre la commande mount exécutable par n'importe quel utilisateur, mais cela a été rejeté par le responsable (le commentaire dit quelque chose sur les implications de sécurité, mais n'est pas plus spécifique).

Contrairement à l'amont d'origine, la version Debian de libpam-mount exécute les commandes de montage avec l' utilisateur uid, pas en tant que root. Faire des montages spécifiés par l'utilisateur en tant que root est un trou de sécurité. Tout utilisateur peut alors monter un volume sur / usr ou / tmp lors de la connexion, ou démonter tout autre volume lors de la déconnexion.

Ou en d'autres termes, libpam-mount ne peut faire que ce que l'utilisateur peut faire, rien de plus.

Alors, des suggestions?

Mettre une entrée utilisateur dans fstab devrait le faire. Veuillez me dire comment cela fonctionne. Notez que d'autres systèmes de fichiers (ncp, smb) ont des binaires de montage appelables par l'utilisateur comme smbmount ou ncpmount. Il n'y a rien de tel pour les montages en boucle: /

Aleksander Adamowski
la source