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.

#1 Le 26/11/2010, à 21:58

leonfmsn

[Résolu] adduser avec effet immédiat

bonjour,
pour ajouter l'utilisateur existant lulu au groupe existant speculoos, j'utilise

adduser lulu speculoos

un petit

more /etc/group | grep speculoos

me montre que tout va bien.

MAIS pour que cet ajout de lulu à speculoos prenne effet (par exemple accès aux exécutables réservés aux seuls membres de speculoos), je n'ai pas trouvé d'autre moyen que de déloguer puis reloguer lulu...

y a-t -il un moyen un moyen de rendre immédiat l'ajout d'un utilisateur existant à un groupe existant  (via un script éventuellement) ?
même question pour la commande deluser ...

mon objectif est de permettre ou d'interdire à lulu (mon fils) d'accéder à certaines ressources de l'ordinateur, selon les heures de la journée

merci pour vos lumières

léon

Dernière modification par leonfmsn (Le 27/11/2010, à 20:19)

Hors ligne

#2 Le 26/11/2010, à 23:11

chopinhauer

Re : [Résolu] adduser avec effet immédiat

leonfmsn a écrit :

y a-t -il un moyen un moyen de rendre immédiat l'ajout d'un utilisateur existant à un groupe existant  (via un script éventuellement) ?
même question pour la commande deluser ...

Non, les logiciels gardent la liste de groupes qu'ils avaient lors du lancement (et la transmettent aux fils). Vu que seulement les processus tournants comme root peuvent changer cette liste[#], seulement les logiciels de connexion le font.

leonfmsn a écrit :

mon objectif est de permettre ou d'interdire à lulu (mon fils) d'accéder à certaines ressources de l'ordinateur, selon les heures de la journée

Si on ne peut pas changer les groupes des processus, on peut changer ceux des fichiers. Un petit crontab (cf. cron) fera l'affaire.

[#] Sous Linux il y a aussi des capacités qui peuvent être donnés à des processus, mais en tout cas seul le processus même peut changer la liste de groupes.

Dernière modification par chopinhauer (Le 26/11/2010, à 23:15)


Pensez à donner un bon titre à vos sujets : cela permettra d'aider d'autres utilisateurs dans votre même situation. Ce n'est pas qu'en donnant des solutions qu'on aide, mais aussi en posant des bonnes questions et… facilement trouvables.

Hors ligne

#3 Le 27/11/2010, à 01:55

leonfmsn

Re : [Résolu] adduser avec effet immédiat

merci pour l'info
je vais essayer de faire ce que je crois comprendre de la solution que tu proposes

Hors ligne

#4 Le 27/11/2010, à 02:04

chopinhauer

Re : [Résolu] adduser avec effet immédiat

Tu fais des chown ou chmod sur les fichiers.


Pensez à donner un bon titre à vos sujets : cela permettra d'aider d'autres utilisateurs dans votre même situation. Ce n'est pas qu'en donnant des solutions qu'on aide, mais aussi en posant des bonnes questions et… facilement trouvables.

Hors ligne

#5 Le 27/11/2010, à 02:19

leonfmsn

Re : [Résolu] adduser avec effet immédiat

oui, c'est ce que j'avais cru comprendre. mais il faut que je crée 2 groupes : "gentils" auquel appartiennent tous les utilisateurs et "devoirs" auquel appartiennent les utilisateurs que je veux restreindre.
donc lorsque lulu est supposé faire ses devoirs, le cron fait que tous les exécutables de /usr/games/ appartiennent au groupe "devoirs" (et avec o=r--)
lorsque lulul est supposé avoir fini ses devoir, on redonne ces exécutables au groupe "gentils"

c'est ce que tu avais en tête ?

Hors ligne

#6 Le 27/11/2010, à 02:28

chopinhauer

Re : [Résolu] adduser avec effet immédiat

Il y a plus simple :

chmod o-x /usr/games

et

chmod o+x /usr/games

Sauf, bien sur si vous voulez laisser d'autres personnes jouer au même temps, dans ce cas vous mettez ces personnes dans un groupe et vous allez changer le groupe propriétaire de /usr/games.

Remarque : les jeux dans /usr/games sont souvent setgid, ils s'exécutent avec les droits du groupe games sans que personne en fasse partie. Cela pour permettre de modifier les scores uniquement à travers le jeu et pas directement.

PS : Et bien sur si quelqu'un lance un jeu avant le couvre-feu, il pourra continuer à jouer même après.

Dernière modification par chopinhauer (Le 27/11/2010, à 02:29)


Pensez à donner un bon titre à vos sujets : cela permettra d'aider d'autres utilisateurs dans votre même situation. Ce n'est pas qu'en donnant des solutions qu'on aide, mais aussi en posant des bonnes questions et… facilement trouvables.

Hors ligne

#7 Le 27/11/2010, à 11:21

leonfmsn

Re : [Résolu] adduser avec effet immédiat

chopinhauer a écrit :

Sauf, bien sur si vous voulez laisser d'autres personnes jouer au même temps, dans ce cas vous mettez ces personnes dans un groupe et vous allez changer le groupe propriétaire de /usr/games.

oui, c'est précisément le cas (4 utilisateurs, dont 2 ont des restrictions)
donc j'ai un groupe "peut" auquel appartiennent tous les utilisateurs et un groupe "peutpas" auquel appartiennent les 2 utilisateurs (papa et maman) non-restreints
lorsque lulu et son frère doivent faire leurs devoirs, le groupe propriétaire des executables de /usr/games/ est "peutpas". sinon le groupe est "peut"

chopinhauer a écrit :

les jeux dans /usr/games sont souvent setgid

ben moi j'ai (d'origine) :

-rwxr-xr--  1 root games

pour tous les jeux...

Hors ligne

#8 Le 27/11/2010, à 11:37

Pacifick_FR42

Re : [Résolu] adduser avec effet immédiat

Encore plus simple ré-ouvre une console en faisant su <USER> même si c'est le même, les droits seront à jour ensuite tu peux lancer n'importe quelle appli avec les nouveau droit, ça évite de ce deconnecter (pas besoin de reboot non plus... ok ?)

Hors ligne

#9 Le 27/11/2010, à 13:20

leonfmsn

Re : [Résolu] adduser avec effet immédiat

Pacifik_FR42 a écrit :

Encore plus simple ré-ouvre une console en faisant su <USER> même si c'est le même

c'est ce que j'ai essayé en premier et le log/délog su lulu ne m'a pas rendu effectif le changement de groupe de lulu

et puis je voudrais mettre ça dans un cron. si je fais su lulu il faudrait que je fournisse le mot de passe de lulu, non ?

Hors ligne

#10 Le 27/11/2010, à 13:27

chopinhauer

Re : [Résolu] adduser avec effet immédiat

leonfmsn a écrit :

donc j'ai un groupe "peut" auquel appartiennent tous les utilisateurs et un groupe "peutpas" auquel appartiennent les 2 utilisateurs (papa et maman) non-restreints
lorsque lulu et son frère doivent faire leurs devoirs, le groupe propriétaire des executables de /usr/games/ est "peutpas". sinon le groupe est "peut"

Vous changez les droits juste sur le répertoire /usr/games (pas les fichiers dedans) comme cela :

drwxr-xr-x 2 root peut 4096 2010-11-12 02:50 /usr/games

Quand vous enlevez la permission 'x' pour les autres utilisateurs :

drwxr-xr-- 2 root peut 4096 2010-11-12 02:50 /usr/games

seulement root et le groupe peut pourra accéder aux fichiers de /usr/games

Les jeux qui on une liste des meilleurs résultats pour le système entier, sont setgid :

$ ls -l /usr/games/mahjongg
-r-xr-sr-x 1 root games 123768 2010-09-27 17:35 /usr/games/mahjongg
      ^

sauf que quand vous changez le groupe d'appartenance d'un fichier la permission setgid est automatiquement enlevée.


Pensez à donner un bon titre à vos sujets : cela permettra d'aider d'autres utilisateurs dans votre même situation. Ce n'est pas qu'en donnant des solutions qu'on aide, mais aussi en posant des bonnes questions et… facilement trouvables.

Hors ligne

#11 Le 27/11/2010, à 14:31

leonfmsn

Re : [Résolu] adduser avec effet immédiat

je n'ai pas été assez explicite. donc j'indique les commandes utilisées :

sudo addgroup peutpas
sudo addgroup peut
sudo adduser lulu peut
sudo adduser pilou peut
sudo adduser papa peut
sudo adduser maman peut
sudo adduser papa peutpas
sudo adduser maman peutpas
sudo chrgp peut /usr/games/*
sudo chmod o=r-- /usr/games/*

lorsque je veux interdire les executables de /usr/games à lulu et pilou :

sudo chgrp peutpas /usr/games/*

je n'ai pas encore écrit le cron qui permet de basculer le groupe propriétaire de /usr/games/*

si l'héritage de permissions setgid ne permet que de garder les meileurs scores, alors ce n'est pas très important que le changement de groupe retire cet héritage

Hors ligne

#12 Le 27/11/2010, à 15:08

chopinhauer

Re : [Résolu] adduser avec effet immédiat

Oui, votre solution marchera certainement, mais je m'aperçois aussi avoir mal expliqué ma solution.

Vous pouvez laisser les droits sur les fichiers de /usr/games comme ils sont et vous travaillez sur le répertoire même. Si une catégorie d'utilisateurs n'a pas le droit x sur le répertoire /usr/games, elle ne peut ni lire, ni modifier, ni exécuter les fichiers, même si les droits sur les fichiers mêmes le permettent. En fait pour faire ce qu'il soit avec un fichier il faut avoir la permission x sur toute l'arborescence, dans notre cas /, /usr, /usr/games. C'est une exception à la règle de non héritage des permissions Unix.

Donc si /usr/games appartient à root et peut, il suffit de basculer les permissions de 0755 à 0750 sur le répertoire pour couper l'accès aux autres utilisateurs. Au même temps, vu que vous modifiez pas les fichiers des jeux, la permission setgid reste. Le deux lignes suivantes devraient remettre les jeux dans leur état d'origine :

sudo chown root:games /usr/games/*
sudo chmod 2755 /usr/games/*

Ensuite il suffit de changer le propriétaires du répertoire :

sudo chown root:peut /usr/games

et jouer sur la permission x du répertoire.


Pensez à donner un bon titre à vos sujets : cela permettra d'aider d'autres utilisateurs dans votre même situation. Ce n'est pas qu'en donnant des solutions qu'on aide, mais aussi en posant des bonnes questions et… facilement trouvables.

Hors ligne

#13 Le 27/11/2010, à 20:17

leonfmsn

Re : [Résolu] adduser avec effet immédiat

oui. je comprends mieux. c'est nettement plus élégant comme solution. j'ai toujours été un peu largué avec les permissions sur le répertoire courant ./. et leur lien avec les permissions sur les fichiers et sous-répertoires qu'il contient (je me suis fait avoir à pas mal de reprises)

merci bcp pour cette suggestion. ça m'aide à mieux comprendre le système des permissions.

par souci de cohérence avec le reste de la discussion, la dernière commande de votre message devrait être

sudo chown root:peutpas /usr/games

(c'est pas évident, mais dans mon exemple peutpas est le groupe des utilisateurs non-restreints)

En résumé :
1. les modifications adduser/deluser ne sont effectives qu'après le prochain log de l'utilisateur concerné
2. votre solution me permet de dé/ré-activer à la volée les droits sur certains répertoires pour certains utilisateurs de l'ordi

je vais donc mettre [Résolu] à ce fil

Hors ligne

#14 Le 27/11/2010, à 20:48

chopinhauer

Re : [Résolu] adduser avec effet immédiat

Les permissions sur les répertoires sont toujours un peut difficiles à saisir. Unix les considère comme un fichier normal avec une liste de noms dedans. Ainsi :

  • w permet de modifier la liste, cela signifie créer, renommer et effacer les fichiers.

  • r permet de lire la liste, donc faire un ls dessus.

  • x c'est celui différent et permet de traverser le répertoire. Si vous êtes dans un répertoire et vous voulez accéder à un fichier, vous pouvez le faire sans problèmes pour le répertoire courant. Pour les autres vous partez du répertoire courant (ou / si le nom de fichier commence par /) et vous devez traverser uniquement des répertoires avec permission x.

Évidemment les restrictions que vous avez mis en place ne sont pas incontournables : on peut copier le fichier du jeux pendant les heures permises par exemple. Cependant ce genre de restrictions devraient toujours être comprise comme aide pour se rappeler de faire les devoir au lieu de les voir comme imposition.


Pensez à donner un bon titre à vos sujets : cela permettra d'aider d'autres utilisateurs dans votre même situation. Ce n'est pas qu'en donnant des solutions qu'on aide, mais aussi en posant des bonnes questions et… facilement trouvables.

Hors ligne

#15 Le 27/11/2010, à 20:58

leonfmsn

Re : [Résolu] adduser avec effet immédiat

chopinhauer a écrit :

Évidemment les restrictions que vous avez mis en place ne sont pas incontournables : on peut copier le fichier du jeux pendant les heures permises par exemple. Cependant ce genre de restrictions devraient toujours être comprise comme aide pour se rappeler de faire les devoir au lieu de les voir comme imposition.

Là on va sortir un peu de la question que je posais mais
1. vous avez parfaitement compris l'objet de ce que je veux mettre en place : c'est plus une incitation à faire les devoirs (qui peuvent nécessiter d'utiliser l'ordinateur) qu'une interdiction incontournable
2. sachant cela, lulu et pilou ne vont pas chercher à contourner l'obstacle (du moins c'est ce que je crois...)
3. si jamais ils cherchaient à la faire, cela leur prendrait pas mal de temps avant d'y arriver (pour l'instant)

merci encore pour votre aide

Hors ligne