Je souhaite activer le partage de fichiers entre les serveurs et les clients, tous deux sous Linux. Je ne veux pas compter sur la confiance des machines comme dans NFSv4 car les utilisateurs clients auront des privilèges root. Quelles sont mes options en plus de SMB (SAMBA)? OpenAFS prend-il en charge l'authentification et l'accès au niveau utilisateur? L'utilisation de WebDAV / ftp / sshfs monté semble idiot pour le LAN.
8
Réponses:
Je ne suis pas sûr de bien comprendre:
Si vous voulez dire que les utilisateurs clients auront des privilèges root sur le client et que vous ne voulez pas qu'ils aient root sur l'hôte, alors vous n'utilisez simplement pas l'option "no_root_squash". Vous pouvez également faire des choses comme désactiver setuid pour aider à réduire le risque pour le client du serveur.
Vous avez également la possibilité d'utiliser des kerberos avec NFSv4, voir ce lien .
En d'autres termes, NFSv4 pourrait vous donner la sécurité dont vous avez besoin tout en étant un peu plus ... (évolutif?) .. en utilisant sshfs partout. Ce n'est peut-être pas encore ce que vous voulez, mais je n'y renoncerais pas trop tôt.
la source
Avec Kerberos, seul le serveur kdc accorde des jetons d'authentification. Une machine cliente seule ne peut s'authentifier qu'en tant qu'hôte (et c'est si vous lui donnez le keytab à un nfs / client-hostname @ REALM correspondant), et cela ne lui donne que le droit de parler au serveur nfs. Ce sont les utilisateurs qui ont la possibilité de s'authentifier, et le serveur nfs ne les autorise qu'à accéder à leurs propres fichiers. Avec sec = krb5p, le serveur empêche également l'espionnage et l'altération.
Être root ne donnera pas à vos utilisateurs des privilèges inappropriés. La seule façon pour eux d'accéder à plus de fichiers est de se pirater mutuellement les machines, de pirater le serveur nfs ou le kdc. NFSv4 avec Kerberos répond bien à vos exigences de sécurité.
En savoir plus sur le modèle de sécurité:
Si vous envisagez un déploiement, voici quelques tutoriels centrés sur Debian / Ubuntu. J'ai choisi des configurations simples sans LDAP. Ces distributions ont une configuration basée sur debconf qui vous aide à y arriver.
Mes ajouts: vous n'avez pas besoin de spécifier un enctype des-cbc-crc, mais vous devez autoriser_weak_crypto dans krb5.conf afin que le protocole de communication puisse utiliser des-cbc-crc pour le chiffrement de flux. Cela deviendra inutile dans les noyaux 2.6.35.
Si vous cherchez quelque chose qui ressemble à un appareil, il y a FreeIPA .
la source
sshfs est la voie à suivre. Sur le client:
Autorisations identiques à ssh ... car vous utilisez ssh! Une bonne chose est que vous n'avez rien à toucher sur le serveur, en supposant que sshd est installé et fonctionne correctement. Pourrait ne pas avoir les performances comme les autres suggestions, mais c'est très simple.
la source
la samba ressemble vraiment à votre meilleur pari. samba a des extensions unix donc quand il est monté en utilisant comme cifs sur linux il devrait montrer les permissions unix appropriées et ainsi de suite. Je pense que ce sera la meilleure option pour vos contraintes. si cela ne fonctionne pas, sshfs pourrait être utilisé à la rigueur mais il n'aura pas de bonnes performances ou intégration dans le système d'exploitation comme samba.
la source
Oui, il semble qu'OpenAFS satisferait vos exigences ici, mais il en serait de même pour Kerberized NFSv4. Dans ces deux environnements, vous n'avez pas besoin de «faire confiance» aux clients; le contrôle d'accès est appliqué par les serveurs. Les versions précédentes de NFS vous obligeaient à «faire confiance» aux clients, mais Kerberized NFSv4 ne le faisait pas. OpenAFS n'a jamais exigé de clients "de confiance" et s'appuie également sur Kerberos pour l'authentification et la sécurité.
la source