Créer une session invité

Ubuntu a une applette pour changer d’utilisateur qui propose une session Invité dans laquelle l’utilisateur a des droits limités, ne peut accéder aux fichiers des utilisateurs enregistrés et dont les données sont effacées en fin de session.

C’est très pratique quand quelqu’un vous emprunte votre PC pour surfer quelques minutes.

Y a t-il moyen d’avoir cela sous Debian Squeeze ?

Une piste : dans ce thread forums.linuxmint.com/viewtopic.p … 24#p195103 ils mettent en évidence la différence entre une session invité et un compte Invité.

Quelqu’un sait-il comment faire ?

Merci d’avance

Une idée qui me vient comme ça : créer un compte classique (configuré avec les groupes qui vont bien) et dont le “/home/invite” se trouve dans un ramdisk, ce qui le détruira à l’extinction ou au redémarrage de la machine.

Ou sinon il suffit de rajouter une ligne qui nettoie le “/home/invite” dans le script de session.

1 J'aime

merci

Dans Administration→utilisateurs et groupes, j’ai créé un compte Invité avec mot de passe
J’ai précisé ses droits

Que dois-je ajouter ds mon fstab du coup pour placer le /home du guest sur un ramdisk ?
j’ai déjà tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
suffit-il d’ajouter la ligne

tmpfs /home/invite tmpfs defaults,noatime,mode=1777 0 0 ?
Ça n’a pas l’air de marcher ! Si je tape mount je ne vois pas la ligne correspondante !
apparemment mode=1777 définit les permissions mais je n’en sais pas plus ? (j’ai trouvé le détail des autres arguments ici)

Autre problème : comment empêcher l’utilisateur Invité de lire les fichiers des autres ?

J’ai trouvé ça aussi mais ça me dépasse… appliquer-umask-sur-un-repertoire-de-facon-permanente-t30911.html?sid=8776fd50033a7bd07e9d9a2c5e7b4a33#p311972

Salut,

Plus simplement, il n’y aurait pas moyen d’adapter (ou même d’installer) le paquet Ubuntu : gdm-guest-session.
Il est aussi dispo en tar.gz… Un petit make…

Parce qu’il n’y a pas beaucoup de paquets dans ce deb… ça ne doit pas être un gros problème.

Il faut que les fichiers/répertoires n’aient pas les droits de lecture et d’exécution pour les “autres”.

Le problème, c’est qu’en général le “umask” est défini pour permettre au moins la lecture des nouveaux fichiers créés. Donc si tu veux qu’un fichier n’ait automatiquement aucun droit en lecture et exécution pour les “autres”, il faut redéfinir le “umask” (car le “umask” défini les droits par défaut à appliquer à un nouveau fichier). Cependant, après avoir redéfini le “umask”, il faudra appliquer manuellement les nouveaux droits aux fichiers qui existent déjà sur ton système et que tu veux protéger de la lecture des utilisateurs “autres”.

merci

Cluxter : ça a pas l’air simple :-/

lol : je connaissais pas le nom du paquet (je pensais que ça dépendait du fast user switcher) je vais regarder.
AppArmor joue un rôle ? bugs.launchpad.net/ubuntu/+sour … bug/425793

Ca n’a rien de compliqué non plus. L’idée c’est de garder le contrôle à 100% de ce que tu fais, maintenant il y a surement des solutions clés en main pour ce genre de choses mais ce n’est pas comme ça que tu apprendras à maîtriser ton système. Toutefois ça peut dépanner dans un premier temps.

[quote=“antistress”]…lol : je connaissais pas le nom du paquet (je pensais que ça dépendait du fast user switcher) je vais regarder.
AppArmor joue un rôle ? bugs.launchpad.net/ubuntu/+sour … bug/425793[/quote]

Je ne peux pas te dire, c’était juste une idée. Pas forcément bonne (un paquet Ubuntu quand même…).
Mais dans ce paquet il y a 4 scripts qu’il doit suffire de lancer à l’ouverture d’une session invité, tu peux t’en inspirer ou les utiliser tels quels.

J’ai vaguement regardé, ça ne touche pas au système, ça ajoute juste des options à gdm.

Réponse (gentille, comme d’habitude) de Martin Pitt qui a développé le truc pour Canonical :

[quote]> I’ve downloaded gdm-guest-session-0.15 (Lucid) sources since it is GPL2

Do you think it can be used as it on Debian Squeeze ?

It doesn’t just work as it is, I’m afraid, it needs a patch in gdm:

bazaar.launchpad.net/~ubuntu-des … sion.patch

Upstream didn’t like that much, as they have a different idea about a guest session, so it’s only in Ubuntu so far. If Debian wants to adopt the patch, I’m happy to get gdm-guest-session into Debian of course, but I don’t have enough time to discuss that with them.

Unfortunately the entire thing is quite a hack… :-/[/quote]

Pas tant que ça, il faut modifier l’umask: par défaut, les nouveaux fichiers sont lisibles par tous. Si le groupe par défaut est celui de l’utilisateur (et pas un groupe partagé comme «user»), il suffit d’interdire la lecture aux autres:

~$ touch machintruc
~$ ls -l machintruc 
-rw-r--r-- 1 gv gv 0 jan 10 08:43 machintruc
~$ rm -f machintruc
~$ umask 006
~$ touch machintruc
~$ ls -l machintruc 
-rw------- 1 gv gv 0 jan 10 08:44 machintruc

Je pense que c’est dans .bashrc qu’il est le plus indiqué de spécifier cette commande umask.

Pour modifier en masse les droits des fichiers existants, il faut utiliser find, c’est très puissant. Il faut traiter différemment les répertoires et les fichiers, sinon, tu ne pourras plus te déplacer dans les répertoires:

$ find /home/louis -type f -exec chmod 660 {} \;
$ find /home/louis -type d -exec chmod 770 {} \;

Cordialement,

Si l’on souhaite modifier l’umask pour toutes les sessions proprement, il suffit de le modifier dans le fichier “/etc/profile”, qui affecte toutes les sessions en même temps.

Bonjour à tous,

Voilà je voudrais créer une compte “guest” sur Jessie, j’ai essayé de suivre vos instruction… j’aimerais mettre mon compte “inivite” sur la ramdisk pour que à chaque démarrage toute les données disparaissent. Quelqu’un pourrait m’aider?
Merci d’avance :smiley: