Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#26 Le 23/07/2008, à 22:49

Wolf

Re : [contourné] interdire l'écriture sur toute la machine ?

oui oui; on veux savoir la solution ! En tout cas, cool que tu es réussi. Tu vas pouvoir dormir sur tes deux oreilles big_smile


"On a pas besoin de leurs dollars. Juste des rêves et sa guitare".

Hors ligne

#27 Le 24/07/2008, à 02:00

pouchat

Re : [contourné] interdire l'écriture sur toute la machine ?

globalsi a écrit :
pouchat a écrit :

quel est le problème ?
par défault un utilisateur normal n'a les droits d'écriture que dans son dossier personnel. Alors pourquoi vouloir forcer puisque c'est déjà en place ??

Sachant qu'en plus un user "normal" à les droits d'écriture sur les périph USB qu'il monte. Tu te compliques vraiment la vie.

Bonjour,

un user normal peut écrire dans le /tmp par exemple.

ça ne représente aucun risque en soi. Donc je ne comprends toujours pas le problème. Tel quel, le système est viable pour de multi-utilisateurs. De plus supprimer /tmp en écriture pourrait pénaliser certaines applications qui placent les fichiers temporairement .

Cas typique : n'importe quel fichier que tu ouvres directement depuis firefox (un pdf téléchargé..) s'enregistre dans /tmp.

Hors ligne

#28 Le 24/07/2008, à 09:00

globalsi

Re : [contourné] interdire l'écriture sur toute la machine ?

pouchat a écrit :
globalsi a écrit :
pouchat a écrit :

quel est le problème ?
par défault un utilisateur normal n'a les droits d'écriture que dans son dossier personnel. Alors pourquoi vouloir forcer puisque c'est déjà en place ??

Sachant qu'en plus un user "normal" à les droits d'écriture sur les périph USB qu'il monte. Tu te compliques vraiment la vie.

Bonjour,

un user normal peut écrire dans le /tmp par exemple.

ça ne représente aucun risque en soi. Donc je ne comprends toujours pas le problème. Tel quel, le système est viable pour de multi-utilisateurs. De plus supprimer /tmp en écriture pourrait pénaliser certaines applications qui placent les fichiers temporairement .

Cas typique : n'importe quel fichier que tu ouvres directement depuis firefox (un pdf téléchargé..) s'enregistre dans /tmp.

et bien du coup, l'utilisateur peut se servir de ce répertoire comme espace de stockage (ce que je ne veux pas hmm ).
effectivement, j'ai vu la problématique de l'interdiction du /tmp en écriture ; c'est pour ça que je passe par la solution que j'ai donné un peu plus haut.:)

Dernière modification par globalsi (Le 24/07/2008, à 09:00)

Hors ligne

#29 Le 24/07/2008, à 09:58

globalsi

Re : [contourné] interdire l'écriture sur toute la machine ?

globalsi a écrit :
Wolf a écrit :

alors, si j'ai bien compris, tu veux (démonstration par l'exemple) :
- Toto se connecte. Il met un fichier dans ses documents
- Il mets son icône Firefox du bureau à droite.
- 1 1heure après : il se déconnecte de sa session.

- 2 jours après, il revient :
- son fichier qui se trouver dans ses documents à été supprimer
- son icône Firefox est toujours placé à droite.

Si c'est cela, je pense qu'il faudra supprimer tous les fichiers / dossiers du /home/User SAUF les dossiers commençant par un point qui sont des dossiers de profils (dont le bureau ect...).
Si tu veux y jeter un oeil, tu peux les afficher/cacher via un ctrl+H.

Si c'est bien cela que tu désires, reste plus qu'a trouvé/réaliser le script adéquate smile

c'est presque ça mais pas tout à fait.
- toto se connecte : il trouve son bureau configuré (par moi même smile)
- il déplace son icône firefox
- il pose ses fichiers partout où il peut car toto est pas un utilisateur sympa sad
- toto s'en va en éteignant l'ordinateur

le lendemain qd il rallume l'ordi
-la configuration du bureau est revenu telle que je l'avais faite.
- tous les fichiers qu'il a posé sont supprimés (pas content le toto mais c'est comme ça !  Il doit stocker sur clé USB)


donc l'idée pour faire ça était de :
1/ Restreindre au maximum les endroits où toto peut écrire. Je ne crois pas qu'on puisse mieux faire que son /home/user et le /tmp (j'ai essayé de le mettre en lecture seule avec les acl mais du coup gnome ne veut plus se lancer car il ne peut plus créer ses fichiers temporaires)
2/ Faire un script qui, au démarrage de la machine (ou à la fermeture de la session), supprime les fichiers dont toto est propriétaire dans le /tmp
3/ faire un script qui,  au démarrage de la machine (ou à la fermeture de la session), reconstruit le /home/user tel qu'il était avant toto y foute le bazar ...sacré toto va !

maintenant que j'ai un cahier des charges clair, me reste plus qu'à faire mes petits scripts....

Donc voici ma petite config qui marche plutôt bien...
pour le 1/, en fait, c'est configuré naturellement ainsi => rien à faire cool

pour le 2/, je recherche dans /tmp tous les éléments dont toto est le propriétaire et je les supprime

find /tmp/ -user toto -delete

pour le 3/ Cela se passe en 2 étapes :
- Une première fois, je fais une copie du /home/toto tel que je veux qu'il soit dans un répertoire /bak par exemple

 rsync -var --delete --ignore-errors /home/toto /bak/

Un petit

 sudo chmod 750 /bak

permet de le protéger contre toute modification de la part de toto.

- Après à chaque fois que je veux réinitialiser le /home/toto selon cette sauvegarde, je lance cette commande

 rsync -var --delete --ignore-errors /bak/toto /home/

(cf le post très intéressant de Koon http://forum.ubuntu-fr.org/viewtopic.php?id=151931)



Après je choisis de lancer ces 2 scripts de manière automatisée à la fermeture de chaque session gnome. J'ajoute donc mes 2 lignes

find /tmp/ -user toto -delete
rsync -var --delete --ignore-errors /bak/toto /home/

dans fichier /etc/gdm/PostSession/Default avant le "exit 0"

Enfin, pour parer à des petits malins qui voudraient éteindre la machine sans fermer la session pour tenter d'éviter mon script, je le lance aussi au démarrage de la machine en faisant un petit lien

 ln -s /etc/gdm/PostSession/Default /etc/rc2.d/S10ReinitilisationSession

On se retrouve ainsi avec toutes les traces de toto supprimées à chaque lancement de machine et à chaque fermeture de session => la machine restera donc propre (enfin du moins je l'espère tongue)

Hors ligne

#30 Le 24/07/2008, à 10:12

Wolf

Re : [contourné] interdire l'écriture sur toute la machine ?

Et bien voila big_smile
Cool, je crois que je vais mettre sa dans un coin et me faire un ptit test en virtual machine juste histoire de voir ce que sa donne big_smile
Reste plus qu'a l'appliquer à tous les users? ou alors tu as juste un user unique?


"On a pas besoin de leurs dollars. Juste des rêves et sa guitare".

Hors ligne

#31 Le 24/07/2008, à 10:19

globalsi

Re : [contourné] interdire l'écriture sur toute la machine ?

J'ai un user unique
En fait plus précisément, j'ai un user unique sur qui je veux faire cette contrainte.
Mais le script se lance pour toutes les fermetures de sessions. Donc en fait, pour étendre à plusieurs profils, faut juste ajouter des lignes au /etc/gdm/PostSession/Default du genre :

find /tmp/ -user toto -delete
find /tmp/ -user toto2 -delete
rsync -var --delete --ignore-errors /bak/toto /home/
rsync -var --delete --ignore-errors /bak/toto2 /home/

Hors ligne

#32 Le 24/07/2008, à 11:30

pouchat

Re : [contourné] interdire l'écriture sur toute la machine ?

/tmp est vidé à chaque démarrage. De plus, qu'est ce qui t'empêche de le mettre sur une partition dédié de 1Go pour être tranquille (pas besoin de te préoccuper de la place qu'il prendra ni du quota).
En quoi l'écriture dans /tmp est génante ?

Bref après tout, fait comme tu le sens.

Hors ligne

#33 Le 24/07/2008, à 12:03

globalsi

Re : [contourné] interdire l'écriture sur toute la machine ?

pouchat a écrit :

/tmp est vidé à chaque démarrage. De plus, qu'est ce qui t'empêche de le mettre sur une partition dédié de 1Go pour être tranquille (pas besoin de te préoccuper de la place qu'il prendra ni du quota).
En quoi l'écriture dans /tmp est génante ?

Bref après tout, fait comme tu le sens.

C'est un poste qui va être utilisé par beaucoup de personnes sous le même profil.
Du coup, il ne faut pas que les gens posent leur fichiers sur la machine car le profil doit être "anonyme".

Ceci dit, je ne savais pas que le /tmp était vidé à chaque démarrage. Ça pourrait suffire si j'étais sur que la machine soit rebootée après chaque session.
De cela je ne peux en être sur et, en plus, le reboot est plus long que le petit script pour effacer.

mais merci quand même pour l'info.

Dernière modification par globalsi (Le 24/07/2008, à 12:05)

Hors ligne