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 02/02/2013, à 20:43

tiramiseb

Re : Mise a jour pour utilisateur sans droit root

Désolé, pour ma part je partais du principe que la problématique de la mise à jour automatique était résolue dans le message #6 de nesthib.

roolyo : pourquoi souhaites-tu que les mises à jour ne s'effectuent que lorsque ton amie est connectée ? De toute manière si tu automatises la mise à jour ça se fait en tâche de fond, que ce soit elle qui est connectée ou quelqu'un d'autre (voire même personne) ça ne change strictement rien.

En fait moi je répondais à :

il y a d autre chose que j aimerais qui ce lance en root , seulement sur sa session.

Qu'est-ce que tu voudrais lancer d'autre en root ?



j suis novice les gars ! peut être que plus de pédagogie serait plus profitable !

Pas de souci smile

Quand tu lances l'ordinateur, il y a de nombreux services qui se mettent en route, complètement décorrélés d'un compte quel qu'il soit.

Ensuite, un utilisateur se connecte (que cette connexion soit automatique ou manuelle) et cela lui ouvre une session. Tout ce qui s'exécute dans sa session lui appartient : c'est lui qui lance des programmes, les fichiers lui appartiennent à lui.
Cette session s'exécute pendant que le reste de l'ordinateur continue de tourner, avec des trucs décorrélés de la session qui tournent, qui remplissent leur office, tâches cron, programmes système, etc.

On peut aussi faire exécuter des tâches par cron. Ces tâches peuvent être lancées par root ou par un autre utilisateur. Ces tâches sont complètement décorrélées d'une quelconque session, même si elles ne sont pas exécutées par root.

Donc :
- quand tu écris "exécuter en root", cela sous-entend "décorrélé d'une quelconque session" ;
- quand tu écris "sur la session d'un utilisateur", cela sous-entend "lié aux programmes lancés par l'utilisateur, avec les fichiers appartenant à l'utilisateur" ;
- quand tu écris "tâche cron", cela sous-entend "exécution d'un programme décorrélé de toute session".

À partir de là, tu peux comprendre pourquoi "exécuter en root sur la session d'un utilisateur" ne veut rien dire, que ce soit avec ou sans cron smile

Dernière modification par tiramiseb (Le 02/02/2013, à 20:45)

Hors ligne

#27 Le 02/02/2013, à 20:52

nesthib

Re : Mise a jour pour utilisateur sans droit root

roolyo a écrit :

je suis aller a la recherche a droite et gauche une solution , est je suis tombé sur gnome-schedule.

gnome-schedule n'est qu'une interface à cron, que je t'ai déjà recommandé.

roolyo a écrit :

1- probleme il faut apparemment  "initié" cron sinon le message "no crontab for X" est renvoyer. (sa c est pour les suivant qui tomberais sur le post)
2- je souhaiterais comprendre et apprendre a le faire en ligne de commande et pas par l apparence graphique. ( sa c est pour ma connaissance personnel )

Pour créer un crontab root en ligne de commande :

sudo crontab -e

Ensuite ajoute seulement la ligne de mon précédent message.

roolyo a écrit :

3- Je souhaite vraiment que cela ne ce lance que sur la session de mon amie.
La raison de la 3 ieme est qu il y a d autre chose que j aimerais qui ce lance en root , seulement sur sa session.

Ça n'est pas possible
Je pense que tu ne confonds multi-utilisateur et multi-système. Sur un même système les mises à jour toucheront tous les utilisateurs. Si tu veux vraiment séparer, installe deux systèmes sur deux partitions différentes.

en particulier ce que tu dis ici :

roolyo a écrit :

comment un script avec les droit root peut ce lancer a des moments definis sur la session d une personne qui n a pas les droits root ?

n'as pas de sens. Tu peux lancer une commande ou un programme avec les droits d'un utilisateur particulier, mais la notion de « lancer sur la session d'une personne » ne veut rien dire.

roolyo a écrit :

je crois que je vais deplacer le post, je craint de mal me faire comprendre, mais merci de votre aide.

inutile, il serait fermé, les doublons sont interdits.


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#28 Le 02/02/2013, à 21:11

roolyo

Re : Mise a jour pour utilisateur sans droit root

Merci a tous les deux!

je retrouve là la pedagogie et l entraide que j eu connus quand j etais equipé 100% linux
encore merci a vous !

je suis entrain de tester quelque choses je vous en reparle si sa marche ou pas , dans tout les cas grace a ce genre d echange j apprend et c est ce qui est le plus important

Hors ligne

#29 Le 03/02/2013, à 16:31

roolyo

Re : Mise a jour pour utilisateur sans droit root

Bonjour a tous,

au vus des forums que j ai visitée hier soir j ai essaye de comprendre et je suis partie dans cette direction .
ne soyez pas trop mechant avec moi, j apprend

j ai essaié de bien comprendre ce que vous m avez dit hier, et j ai un peu chercher a me debrouiller tous seul mais je suis partie un peu loin...
tous ce que j ai entrepris na pas fonctionner , je pense que j y etais presque mais non !
corriger moi si je fais des fautes dans mon language smile
(ci dessous ,USER est l utilisateur sans droit d administration )

je crée le script suivant

sudo vim maj.sh

a l interieur j y place la commande de nesthib (l "échappe" vers le tty n est là que pour le test de fonctionnement)( si je me trompe pas )

/usr/bin/apt-get update && /usr/bin/apt-get upgrade 2&>> /dev/tty3

je le place dans le /home/USER/ (de l utilisateur a qui je veut que celui ci ce lance )

Pensant que apt-get a besoin "des droit administrateur" pour s executer mais que USER ne les as pas je modifie la fin du fichier sudoers en lui ajoutant :

USER ALL=(ALL) NOPASSWD: /home/USER/maj.sh

j edite le fichier crontab de USER

*/10 * * * * /home/USER/maj.sh

Certains crierons a l hérésie.... smile , mais au moins j aurais essayé de trouvé une solution!!
Bref sa fonctionne , sauf que la commande retournee dans mon tty , s arrete.
je lis l aide de apt get et modifie le script comme suis

sudo /usr/bin/apt-get update && sudo /usr/bin/apt-get upgrade -yV 2&>> /home/USER/fichier.txt

et la j ai message d erreur m indiquant que je ne donne pas le mot de passe

j suis completement a l ouest ou j ai juste manqué un petit truc ?

Hors ligne

#30 Le 03/02/2013, à 17:05

tiramiseb

Re : Mise a jour pour utilisateur sans droit root

Je tiens à porter une chose à ton attention ...

j edite le fichier crontab de USER

*/10 * * * * /home/USER/maj.sh

Là, la commande va s'exécuter toutes les 10 minutes. Que l'utilisateur soit connecté ou non. Donc autant mettre dans le cron de root directement. Et même, autant configurer la mise à jour automatique dans l'interface de configuration d'Ubuntu...

Dernière modification par tiramiseb (Le 03/02/2013, à 17:05)

Hors ligne

#31 Le 03/02/2013, à 17:37

roolyo

Re : Mise a jour pour utilisateur sans droit root

bonjour tiramiseb

tu dis:
Là, la commande va s'exécuter toutes les 10 minutes. Que l'utilisateur soit connecté ou non

les 10 minutes c est juste pour le test, apres j augmenterais le temps.
je ne comprend pas, si j ai mis le lancement dans le crontab de USER, celui ci ne devrait ce lancer que lorsque USER est connecter non?

Hors ligne

#32 Le 03/02/2013, à 17:41

tiramiseb

Re : Mise a jour pour utilisateur sans droit root

je ne comprend pas, si j ai mis le lancement dans le crontab de USER, celui ci ne devrait ce lancer que lorsque USER est connecter non?

Non. C'est ce que j'ai expliqué dans le message #26.
Cron est fait pour lancer des commandes, indépendamment de toute session en cours ou non.

C'est aussi ce que nesthib t'a expliqué plus haut : si tu veux qu'un programme se lance uniquement quand un utilisateur est connecté, il faut faire un test au début du programme pour voir qui est connecté, cela peut se faire avec la commande "who".
Du coup tu peux mettre ton script dans le cron de root, ne pas t'embêter avec sudo et tout ça, et tester (en tant que root) si l'utilisateur est connecté.



Mais j'ai toujours la même interrogation : quel est l'intérêt d'empêcher les mises à jour si un utilisateur précis n'est pas connecté ?

Hors ligne

#33 Le 03/02/2013, à 18:13

NooP

Re : Mise a jour pour utilisateur sans droit root

Attention !!!

Ce que tu es entrain de faire est extrêmement dangereux !!!
Tu places dans le répertoire UTILISATEUR un script qui s'exécutera avec les droits ROOT grâce à Sudo !!!
Il suffit alors à ton utilisateur d'éditer ce script, et de mettre dedans les commandes qu'il veut, il aura alors tout pouvoir sur la machine puisque ce script tournera en temps que root !!!

En supposant que sur ce système, ce soit l'utilisateur 'roolyo' qui seul, ait les droits d'administration.
Que se passe-t-il d'après toi si ton utilisateur édite le script et place dedans la commande suivante :

usedel -r roolyo

Ensuite, je rejoins l'avis de tout le monde : Quel est l’intérêt de faire les mises à jour seulement si un utilisateur défini est connecté ?
Quand à faire les mises à jour via un script cron, là encore c'est une mauvaise idée. Que se passe-t-il si ton utilisateur éteint son PC alors que celui ci est entrain de faire ses mises à jour ?


Votez Macron, vous l'aurez dans le fion !

Hors ligne

#34 Le 03/02/2013, à 18:41

compte supprimé

Re : Mise a jour pour utilisateur sans droit root

d'un autre côté c'est sa copine(qu'il dit ...)  et il veut pas lui filer les droits roots ... et vu la gueule de ses trois derniers postes :

poste d'avant

poste juste avant

et celui encore davant

je crois qu'il y a baleine sous gravillon lol

Surtout qu'il refuse de nous dire ce qu'il veut faire (car la solution pour la mise à jour est donnée depuis longtemps ...)

enfin bon je peux me tromper !!

NB: mais je peux comprendre pourquoi il ne veut pas que ça se lance quand lui même est connecté ...

Dernière modification par sogyam (Le 03/02/2013, à 18:44)

#35 Le 03/02/2013, à 19:02

nesthib

Re : Mise a jour pour utilisateur sans droit root

roolyo a écrit :

je le place dans le /home/USER/ (de l utilisateur a qui je veut que celui ci ce lance )

Ça ne veut rien dire autant en français (:p) que d'un point de vue technique. 1- l'emplacement du script ne détermine aucun droit. 2- il est peu recommandé de mettre un script à lancer en root dans un home utilisateur.

roolyo a écrit :

Pensant que apt-get a besoin "des droit administrateur" pour s executer mais que USER ne les as pas je modifie la fin du fichier sudoers en lui ajoutant :

USER ALL=(ALL) NOPASSWD: /home/USER/maj.sh

j edite le fichier crontab de USER

*/10 * * * * /home/USER/maj.sh

Certains crierons a l hérésie.... smile , mais au moins j aurais essayé de trouvé une solution!!
Bref sa fonctionne , sauf que la commande retournee dans mon tty , s arrete.
je lis l aide de apt get et modifie le script comme suis

sudo /usr/bin/apt-get update && sudo /usr/bin/apt-get upgrade -yV 2&>> /home/USER/fichier.txt

et la j ai message d erreur m indiquant que je ne donne pas le mot de passe

j suis completement a l ouest ou j ai juste manqué un petit truc ?

Utilise le cron root. Ça ne change absolument rien d'essayer de faire passer la commande par ton utilisateur (je sais que tu es têtu, mais ça ne changera pas la façon dont fonctionne ton système wink). N'utilise pas sudo.


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#36 Le 03/02/2013, à 20:00

roolyo

Re : Mise a jour pour utilisateur sans droit root

Bonjour NooP, sogyam

Merci de votre contribution ,
Merci NooP, effectivement c est vrai que niveau securite c est pas top, et effectivement c est pas tres propre pour le system ci celui ci coupe pendant une mise a jour.
je vais donc laisser tombé la voie dans laquelle je me suis engagée .

sogyam, pour repondre , oui j ai d autre idee pour la suite , mais je ne voulais pas poluée ce post avec  d autre question, j en aurait ouvert un plus tard,
et oui je voulais trouver une solution a ma question principal :
comment est il possible que la commande si dessous se lance seulement quand USER est "connecter"

sudo apt-get update && sudo apt-get install

je ne voulais pas la mettre dans le crontab de root , car elle ce serait lancée , meme si personne n est connecter , ou si moi je le suis . ( c est sa ? j ai bien compris tiramiseb ? wink ).

tiramiseb, j ai loupé sa la derniere fois , peut tu m en dire plus sur l utilisation de who?

Pour terminer , oui je suis tetu, je suis debutant et mon language n est peut etre pas tout a fait "precis",  je suis comme certain ( peut etre comme vous ? ), quand j ai un probleme que je n arrive pas a resoudre ,je ne passe pas a autre chose, j insiste pour COMPRENDRE pourquoi je n y arrive pas! et essaye de trouver une solution.
que celui qui n a jamais fait preuve d entêtement me jette la premier pierre.
depuis le debut de ce post chacun se permet de me faire la moral sur le fait que je n ai pas mis des droit d administration a mon USER , il me semblé que chacun avait le droit d utiliser le systeme comme bon lui semble, qu il y avait un brin de liberté a utiliser ubuntu? les chose on changer depuis tout ce temps ou je suis partie ? est on passé a des forums digne de ceux des fans d apple ou chaque nouveaux arrivé ce prend des lecon de moral? ou , le transfert de savoir sur ce forum existe toujours,  sans que l on soit souspconné de mauvaise fois ?
Allé fouiller dans mes ancien poste , est une tres bonne chose, mais de la a en tirée des conclusion foireuse.....? c est limite.
alors pour couper cour a tout sa :

1 - oui j ai un reel besoin que la ligne de commande sitée plus haut ne ce lance que quand USER et seulemt lui est connecter sur sa session ,je ne veut pas que sa soit lancer si moi je suis sur ma session (et que USER ne soit pas connecter) donc je presume que le crontab de root n est pas la solution ?
2 - pour ceux qu y sous entende quelque chose, je suis passionné, debutant , mais passioné de securité , et je souhaiter faire un script avec l aide de la communaute , qui permettrais si un ordinateur etait voler , de prendre des photos , capture d ecran, et de les envoyer sur un mail, dropbox, serveur....etc.
OUI, je sais il y a deja des programme tout fait qui existe, OUI je sais il y a deja des script qui existe, mais je voulais le faire par moi meme , sans faire de copier/coller de quelque chose d existant.
et donc avec mes ancien post ou j ai appris a faire certaine chose , j aurai essaye de me debrouiller , pour y parvenir, voila pourquoi j insitte sur le fait que je voulais que USER n est pas de droit d administration( sur l ordi qui serait derobé je souhaite mettre un utilisateur "honeypot" (si c est comme sa que l on dit ) qui na pas besoin de mot de passe a la connexion , le voleur se serait logger dessus et le script se lancerait a ce moment la.

j espere que j aurai ete assez clair dans mes intentions , ceux qui veulent bien m aider je les remercies beaucoup , mais basta les sous entendu.

Desoler, pour ceux qui tombe sur le post, je l ai moi meme bien salie , mais il y avait besoin de clarrification.

Hors ligne

#37 Le 03/02/2013, à 21:08

mloupiot

Re : Mise a jour pour utilisateur sans droit root

Bonjour,
À mon avis, ça craint !

roolyo a écrit :

3- Je souhaite vraiment que cela ne ce lance que sur la session de mon amie.
La raison de la 3 ieme est qu il y a d autre chose que j aimerais qui ce lance en root , seulement sur sa session.

Si on ajoute les liens donnés par sogyam :
poste d'avant

poste juste avant

et celui encore davant

on peut effectivement penser qu'il y a "baleine sous gravillon" ou, en d'autres termes, que le dénommé roolyo aimerait bien espionner ce que fait sa copine -ou quelqu'un d'autre d'ailleurs- dans sa session …

Enfin je dis ça mais bon.

Hors ligne

#38 Le 03/02/2013, à 21:31

roolyo

Re : Mise a jour pour utilisateur sans droit root

superbe intervention j te remercie sa fait progresser

Hors ligne

#39 Le 03/02/2013, à 22:31

nesthib

Re : Mise a jour pour utilisateur sans droit root

@roolyo : sans aucun jugement de valeur, si tu avais été clair dès le départ sur ce que tu voulais faire on t'aurait proposé la bonne solution wink
Pour faire la mise à jour, passer par le cron root est une bonne solution, il n'y a pas de notion de compte utilisateur, la mise à jour a besoin des droits root et est appliquée à tous les utilisateurs, un point c'est tout.

Lancer un script à la connexion d'un utilisateur n'est pas du tout la même question et requiert d'être posée indépendamment. Ouvre un autre fil et explique clairement ce que tu cherches à faire.

Si tu as résolu ton problème de mise à jour, modifie ton premier message pour passer le fil en [résolu].


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#40 Le 03/02/2013, à 22:55

roolyo

Re : Mise a jour pour utilisateur sans droit root

Merci nesthib, ton dernier message me remonte un peu le moral.
je crois que je vais me dirigé vers la solution du cron root , car je ne suis pas arriver a trouver l aide necessaire pour realiser ce que je voulais.
oui la reponse a ce poste m aurait fait en plus rebondir sur mes envie securitaire, mes je voulais faires les chose les une apres les autres. peut etre n aurais je pas du!
je ne passe pas le fil en resolu car si je trouve la solution , ou un autre, elle sera mit a la suite .

je partais reelement sur une demarche sincere , mais j ai du certainement mal me faire comprendre , et le post a perdu un peu de son sens premier.
si je voulais faire de l espionnage je serais passé directement par un keylogger , ou des outils "forensic" , je ne serais pas rester presque 48h sur internet pour essayer de trouver une reponse a ma question

Bref encore merci de ton aide , je continue a cherché et ne m avous pas vaincu!

Dernière modification par roolyo (Le 03/02/2013, à 22:57)

Hors ligne

#41 Le 04/02/2013, à 09:23

tiramiseb

Re : Mise a jour pour utilisateur sans droit root

roolyo a écrit :

je ne voulais pas la mettre dans le crontab de root , car elle ce serait lancée , meme si personne n est connecter , ou si moi je le suis . ( c est sa ? j ai bien compris tiramiseb ? wink ).

C'est le cas avec la crontab de n'importe quel utilisateur.

tiramiseb, j ai loupé sa la derniere fois , peut tu m en dire plus sur l utilisation de who?

Quand tu exécutes la commande "who" (manuellement ou à partir d'un script) ça montre qui est connecté.
Du coup tu peux vérifier le retour de cette commande pour voir si l'utilisateur concerné est connecté.

1 - oui j ai un reel besoin que la ligne de commande sitée plus haut ne ce lance que quand USER et seulemt lui est connecter sur sa session ,je ne veut pas que sa soit lancer si moi je suis sur ma session (et que USER ne soit pas connecter) donc je presume que le crontab de root n est pas la solution ?

Je ne comprend toujours pas pourquoi tu as ce besoin que les mises à jour ne se fassent que quand un utilisateur précis est connecté.
C'est mieux que le système se mette à jour même si personne n'est connecté, non ?


je souhaiter faire un script avec l aide de la communaute , qui permettrais si un ordinateur etait voler , de prendre des photos , capture d ecran, et de les envoyer sur un mail, dropbox, serveur....etc.

Et si le voleur se connecte avec un autre utilisateur que celui que tu "surveilles" ?
S'il crée un nouveau compte ?
S'il se connecte en "invité" ?
S'il réinstalle complètement l'ordinateur ?

Hors ligne

#42 Le 04/02/2013, à 18:53

NooP

Re : Mise a jour pour utilisateur sans droit root

Si tu souhaites exécuter un script à l'ouverture de session, il y a deux possibilités :

1) /home/USER/.profile
2) /home/USER/.bash_profile

Ces scripts sont exécutés à chaque ouverture, tant de session graphique que de session en mode console. Pour effectuer une mise à jour par ce moyen, il faut procéder en trois temps :

1) Créer un script genre :

#!/bin/bash
apt-get clean && apt-get update && apt-get upgrade -y

Que tu placeras dans un coin non accessible en écriture par ton utilisateur, par exemple /root/system_update, et que tu rendras exécutable (chmod 700 /root; chmod 700 /root/system_update).

2) Ensuite, dans le ~/.bash_profile de l'utilisateur désiré, tu places à la fin ta commande :

sudo /root/system_update

3) Enfin, tu édites (à l'aide de sudo visudo) ton sudoers, pour y autoriser le lancement de ton script sans mot de passe :

le_user ALL=NOPASSWD: /root/system_update

Voila, ça devrait fonctionner comme ça.

Dernière modification par NooP (Le 04/02/2013, à 19:09)


Votez Macron, vous l'aurez dans le fion !

Hors ligne

#43 Le 04/02/2013, à 19:01

navtex

Re : Mise a jour pour utilisateur sans droit root

regarder a sudoers de la doc, mais peut-etre ,j'ai rien compris ,pauvre standard!


Xubuntu sur CLEVO PA7 i5 32ram Jammy Jellyfish
ABientot sur le Libre

Hors ligne

#44 Le 06/02/2013, à 19:47

roolyo

Re : Mise a jour pour utilisateur sans droit root

merci de continué a alimenter de vos solution ce post
NooP, c est exactement le style que je recherché, je n ai pas le temps de tester en semaine , mais des que je peut j mis met et je passerai ce fil en resolu,
Je suis un peu inquiet depuis ce que tu ma dit dans ton message (en #33), j ai peur de faire des erreurs avec la gestion des droit.
tu dis
"Que tu placeras dans un coin non accessible en écriture par ton utilisateur, par exemple /root/system_update, et que tu rendras exécutable (chmod 700 /root; chmod 700 /root/system_update)."
mais je ne devrais pas mettre 500 plutot que 700? pour eviter que USER puisse le modifier ?

merci a bientot

Hors ligne

#45 Le 06/02/2013, à 20:03

roolyo

Re : Mise a jour pour utilisateur sans droit root

rapidement une autre chose , j ai un peu regarder la commande "who" et la solution quel pourrait apporté a mes question , j ai compris son principe mais ne sait pas du tout ecrire un script dans lequel il pourrais agir, j ai quelque idee , mais comme c est un autre sujet je vais ouvrir un autre poste.

nesthib ,tyramiseb merci , j vais essayer d en faire quelque chose (sur le meme principe de ce post , c est juste pour ma connaissance personnel , je serais tres heureux si vous avez des conseille a me donner)
(Dr) who ?

Hors ligne

#46 Le 06/02/2013, à 20:19

NooP

Re : Mise a jour pour utilisateur sans droit root

roolyo a écrit :

mais je ne devrais pas mettre 500 plutot que 700? pour eviter que USER puisse le modifier ?

Non. En fait, ton fichier sera protégé par les droits sur le répertoire /root (que je te fais mettre à RWX------ par le premier 'chmod'). Avec ces droits, seul le propriétaire du répertoire peut accéder à son contenu (dans notre cas, le répertoire /root appartient a l'utilisateur root). Ton utilisateur ne pourra y accéder, et du coups, ne pourra modifier ton script. Cette solution est sécurisée.


Votez Macron, vous l'aurez dans le fion !

Hors ligne

#47 Le 06/02/2013, à 20:35

roolyo

Re : Mise a jour pour utilisateur sans droit root

Noop t est au top merci
je reviendrais dans la semaine pour te donner mes resultat

Hors ligne