Troisième partie

  1. Créez un utilisateur Linus sur la machine client, et donnez lui l'UID 1100. Créez un utilisateur Larry sur le serveur (UID 1100).

  2. Réalisez un partage de /tmp sur le serveur, que le client montera dans /mnt.

  3. Sur le client, Linus crée un fichier dans /mnt. Vérifiez son propriétaire

  4. Sur le serveur, vérifiez le contenu du répertoire /tmp. A qui appartient le fichier crée ?

  5. De façon théorique, pour quel utilisateur cela est il encore plus dangereux ? Quels sont les UIDs que vous connaissez tous à l'avance ?

    Consultez la page de man de exports (c'est un fichier de configuration, donc dans le chapitre 5 : man 5 exports, et plus largement man man).

  6. Dans un environnement de grande confiance, vous voulez donner le droit à un root distant d'être reconnu comme root sur le partage. Comment faire ? Testez.

  7. Interdisez ensuite seulement à root d'être confondu avec le root local, mais laissez les autres utilisateurs être eux mêmes. Testezxi. (Ceci est le comportement par défaut).

  8. Sachant que l'UID de l'utilisateur nobody, qui existe certainement sur votre machine, est certainement 65534, trouvez une solution pour donner à toute personne se connectant l'identité de nobody. Créez un nouvel utilisateur BillG sur votre client, en vérifiant bien que son UID n'existe pas dans la sécurité locale du serveur.

  9. Montez le répertoire partagé à partir du client, et testez la création et l'accès aux fichiers avec les utilisateurs BillG,Linus, et root. Que remarquez vous ?

  10. Comment faire pour que tous les utilisateurs soient transformés en nobody ? Testez.

  11. Vous devez maintenant offrir un partage de /tmp, mais chaque machine qui se connectera sur ce partage doit être différenciée (peu importe l'utilisateur de cette machine). On vous propose de créer sur le serveur des utilisateurs client1, client2 et client3. Chaque machine qui se connectera se verra affublée de chacun de ces comptes (tout utilisateur de la machine client PC1 sera l'utilisateur client1 sur le serveur, tout utilisateur du pc client PC2 sera reconnu comme utilisateur client2 sur le serveur, et ainsi de suite. Créez le fichier /etc/exports correspondant à ces contraintes. Testez, et validez votre solution.