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 11/09/2008, à 11:02

m2nis

Comment autoriser la mise à jour sans mot de passe ?

Bonjour,

Malgré mes recherches, je n'ai pas (encore ? smile) trouvé la réponse. Je souhaite, sous Xubuntu et Ubuntu, donner à un utilisateur la possibilité d'installer les mises à jour détectées par le système sans avoir à taper le mot de passe (qu'il ne connaît pas) en passant par l'interface graphique (update-manager).

Une piste qui me semblait intéressante était d'ajouter la commande de mise à jour dans le fichier sudoers, mais il semble que je n'ai pas trouvé la bonne:

%admin ALL=NOPASSWD: /usr/bin/apt-get upgrade

En ligne de commande, cela fonctionne, mais pas à travers le manager graphique. Ce dernier utiliserait-il autre chose que apt-get ?

Enfin, si cela devait aboutir, ouvrir ce droit à la mise à jour peut-il poser des problèmes potentiels de sécurité, même s'il n'est que partiel ("apt-get upgrade" dans mon exemple et non "apt-get") ?

D'avance merci pour vos lumières.


Michaël.

Hors ligne

#2 Le 11/09/2008, à 11:07

®om

Re : Comment autoriser la mise à jour sans mot de passe ?

Pour ta question je ne sais pas, mais sinon tu peux activer les mises à jour automatiques sans confirmation...

Mais ça n'est pas toujours judicieux. Par exemple, je ne veux pas faire une mise à jour noyau le matin si je fais une présentation avec mon pc l'après-midi smile

Dernière modification par ®om (Le 11/09/2008, à 11:13)

Hors ligne

#3 Le 11/09/2008, à 11:21

Fred-Prague

Re : Comment autoriser la mise à jour sans mot de passe ?

Bonjour,

J'ai des gros doutes sur la faisabilité de ce que tu demandes: les outils graphiques d'administration ne peuvent être déverrouillés que par un utilisateur avec les droits pour administrer le système. Si ton utilisateur peut effectuer les mises à jour, alors il pourra aussi faire des choses bien plus embêtantes... Je me trompe peut-être.

En revanche, tu dis avoir trouvé quelque chose en ligne de commande et ça m'intéresse.
Exemple: imaginons une salle informatique de 15 postes sous Ubuntu avec connection automatique à un utilisateur simple (élèves). Le plus rapide pour maintenir le système à jour est de faire:
- Ctrl + Alt +F1
- Se connecter avec son login + mot de passe d'administrateur
- Taper

sudo apt-get update && sudo apt-get dist-upgrade -y

- redonner le mot de passe
- à la fin des mises à jour, se déconnecter par "exit"

Quand on multiplie par 15, ça devient lourd (surtout quand on n'est pas payé pour ça wink).
J'aimerais bien que le système puisse exécuter les commandes de mise à jour ci-dessus automatiquement.

Merci d'avance à toute âme charitable ayant une idée.

À +

Dernière modification par Fred-Prague (Le 11/09/2008, à 11:22)


Ubuntero depuis février 2007
01/2017: Poste principal+portable+mes gamins: Ubuntu 16.04 LTS avec Unity ou Gnome Classic

Hors ligne

#4 Le 11/09/2008, à 12:15

schaars

Re : Comment autoriser la mise à jour sans mot de passe ?

Bonjour

Fred-Prague a écrit :

J'aimerais bien que le système puisse exécuter les commandes de mise à jour ci-dessus automatiquement.

Le plus simple est d'ajouter une tâche dans cron. L'inconvénient est que ça sera périodiquement et pas lorsque l'admin décide de faire la mise à jour.

Sinon si tous les ordis sont accessibles en ssh tu peux lancer un script qui va se connecter sur chaque ordi et faire les mises à jour. Par exemple ça donnerait :

ssh admin@pc1 'sudo apt-get update && sudo apt-get dist-upgrade -y'
ssh admin@pc2 'sudo apt-get update && sudo apt-get dist-upgrade -y'
[...]
ssh admin@pc14 'sudo apt-get update && sudo apt-get dist-upgrade -y'

# on fait aussi la màj sur ce pc ;)
sudo apt-get update && sudo apt-get dist-upgrade -y

Le seul problème est que ça va demander le mot de passe de l'admin à chaque fois, mais pour palier à ça tu peux t'authentifier avec des clés sur chaque machine ce qui permet de ne plus avoir besoin d'entrer son mot de passe. Cf la doc.

J'oubliais : bien sûr il faut aussi mettre une règle NOPASSWD pour apt-get update et dist-upgrade dans /etc/sudoers sur chaque machine.

Dernière modification par schaars (Le 11/09/2008, à 12:19)


Le linux des uns est l'OS/2 des autres (Thom E. Gemcity)

Hors ligne

#5 Le 11/09/2008, à 13:01

m2nis

Re : Comment autoriser la mise à jour sans mot de passe ?

@ ®om
Je préfèrerais que les mises à jour ne se fassent pas toutes en même temps (quand tout le monde allume sa machine le matin) pour éviter:

-qu'une mise à jour qui poserait problème se répande trop vite (qui a dit ça n'existe pas ? smile)
-que notre (petit) serveur miroir local ait une meilleure répartition de la charge

@ Fred-Prague
Vous avez raté quelque chose dans mon message: l'utilisateur de la machine ne connaît pas son mot de passe et n'a donc pas accès aux taches d'administration. Et je ne veux pas changer cela.
Si c'est pour le faire en ligne de commande, la modification du fichier sudoers comme décrit dans mon premier message fonctionne parfaitement. Mais un utilisateur "de base" ne va pas en ligne de commande. En revanche, cliquer sur une icône le prévenant de nouvelles mises à jour et valider la mise à jour (sans mot de passe), il peut raisonnablement faire.

@schaars
L'inconvénient du cron est non négligeable pour différentes raisons. Quant à faire les mises à jour moi-même des différentes machines, je n'y tiens pas, que ce soit par ssh ou par tout autre méthode. Je recherche justement une méthode alternative. smile


Michaël.

Hors ligne

#6 Le 11/09/2008, à 13:35

Xarkam

Re : Comment autoriser la mise à jour sans mot de passe ?

dans le cron de root tu met les commandes.

Mais si tu à un paquet sensible c'est très dangereux de faire comme cela.

Tout bonne admin sait qu'autoriser des update automatiquement sans surveillance physique peut provoquer des gros soucis.

Le mieux c'est de ne fait qu'un apt-get update dans le cron root.

Dernière modification par Xarkam (Le 11/09/2008, à 13:38)


Osames Manager
---
Asus Rampage V Extrême | Intel i7 5820K | Corsair 16GB DDR4 | NVIDIA GeForce 770GTX
Utilisateur d'Ubuntu, Debian, et Windows

Hors ligne

#7 Le 11/09/2008, à 13:50

®om

Re : Comment autoriser la mise à jour sans mot de passe ?

m2nis a écrit :

l'utilisateur de la machine ne connaît pas son mot de passe et n'a donc pas accès aux taches d'administration.

S'ils ne sont pas administrateurs, pourquoi veux-tu que ça soient eux qui autorisent ou non l'installation de mises à jour?

Hors ligne

#8 Le 11/09/2008, à 13:51

m2nis

Re : Comment autoriser la mise à jour sans mot de passe ?

Je préférerais (mais j'ai peut-être tord) ne pas faire appel à cron. D'ailleurs, que se passe-t-il si l'utilisateur demande l'arrêt de la machine pendant une mise à jour ?

Par ailleurs, il est certain que je ne souhaite "libérer" que le minimum, à savoir l'installation de mises à jour déjà détectées par le système, soit l'équivalent de "apt-get upgrade", et même pas "apt-get update".

Enfin, je commence à me demander si l'update-manager ne fait pas appel à dpkg. Mais pas seulement car la "libération" de dpkg ne suffit pas à régler le problème.


Michaël.

Hors ligne

#9 Le 11/09/2008, à 13:58

m2nis

Re : Comment autoriser la mise à jour sans mot de passe ?

®om a écrit :

S'ils ne sont pas administrateurs, pourquoi veux-tu que ça soient eux qui autorisent ou non l'installation de mises à jour?

Une fois encore, je me trompe peut-être, mais il me semble qu'il y a plus de bénéfices à laisser appliquer des mises à jour officielles par un utilisateur que de laisser une machine pas très à jour, notamment en terme de correctifs de sécurité. Et le cron ne me paraît pas une meilleure solution que celle que je recherche.


Michaël.

Hors ligne

#10 Le 11/09/2008, à 14:01

®om

Re : Comment autoriser la mise à jour sans mot de passe ?

m2nis a écrit :
®om a écrit :

S'ils ne sont pas administrateurs, pourquoi veux-tu que ça soient eux qui autorisent ou non l'installation de mises à jour?

Une fois encore, je me trompe peut-être, mais il me semble qu'il y a plus de bénéfices à laisser appliquer des mises à jour officielles par un utilisateur que de laisser une machine pas très à jour, notamment en terme de correctifs de sécurité. Et le cron ne me paraît pas une meilleure solution que celle que je recherche.

Ce que je disais, ce n'est pas de faire un update automatiquement, mais qu'il soit validé, non pas par un utilisateur, mais par un administrateur.

Donc le mieux, c'est que ça soit toi (si tu es l'admin) qui fasse les mises à jour à distance, pas l'utilisateur de la machine.

Dernière modification par ®om (Le 11/09/2008, à 14:02)

Hors ligne

#11 Le 11/09/2008, à 14:04

Xarkam

Re : Comment autoriser la mise à jour sans mot de passe ?

Le cron est très utile pour les apt-get update.
Je l'utilise sur mes serveur pour tenir à jour la liste des paquets et je procède manuellement à l'apt-get upgrade.

Et comme j'ai dit, ça serait une hérésie de faire un apt-get upgrade automatique.

Ensuite il est simple d'interdire l'extinction des machines des comptes utilisateur et de programmer une extinction ou un redémarrage automatique dans le cron root


Osames Manager
---
Asus Rampage V Extrême | Intel i7 5820K | Corsair 16GB DDR4 | NVIDIA GeForce 770GTX
Utilisateur d'Ubuntu, Debian, et Windows

Hors ligne

#12 Le 11/09/2008, à 14:08

m2nis

Re : Comment autoriser la mise à jour sans mot de passe ?

®om a écrit :

Donc le mieux, c'est que ça soit toi (si tu es l'admin) qui fasse les mises à jour à distance, pas l'utilisateur de la machine.

Le mieux en terme de "sécurité", c'est assurément cette option. Le mieux en terme de charge de travail, c'est de ne conserver que ce qui est hors de portée des utilisateurs, que ce soit pour des raisons de sécurité ou de compétences. Et l'application de mises à jour officielles ne me parait pas entrer de façon évidente dans ce cas de figure...


Michaël.

Hors ligne

#13 Le 11/09/2008, à 14:11

®om

Re : Comment autoriser la mise à jour sans mot de passe ?

m2nis a écrit :
®om a écrit :

Donc le mieux, c'est que ça soit toi (si tu es l'admin) qui fasse les mises à jour à distance, pas l'utilisateur de la machine.

Le mieux en terme de "sécurité", c'est assurément cette option. Le mieux en terme de charge de travail, c'est de ne conserver que ce qui est hors de portée des utilisateurs, que ce soit pour des raisons de sécurité ou de compétences. Et l'application de mises à jour officielles ne me parait pas entrer de façon évidente dans ce cas de figure...

Une fois que tu as fait un script qui met à jour toutes les machines de ton réseau (éventuellement un petit nombre d'abord, pour tester, les autres ensuite, après c'est à toi de voir), t'as plus qu'à double cliquer sur ton raccourci. La charge de travail n'est pas si énorme smile

Dernière modification par ®om (Le 11/09/2008, à 14:22)

Hors ligne

#14 Le 11/09/2008, à 14:15

m2nis

Re : Comment autoriser la mise à jour sans mot de passe ?

Xarkam a écrit :

Je l'utilise sur mes serveur pour tenir à jour la liste des paquets et je procède manuellement à l'apt-get upgrade.

Pour un serveur, je ne peux qu'approuver. Mais il s'agit ici d'un poste bureautique. L'apt-get update est déjà fait automatiquement. Il donne comme résultat une icône en zone de notification prévenant l'utilisateur que des mises à jour sont disponibles. Il faut ensuite une intervention de l'utilisateur pour valider l'installation de ces mises à jour. Sauf que l'utilisateur doit entrer un mot de passe, et que dans notre cas, il ne le connaît pas. Je voudrais ouvrir cette possibilité d'intervention à l'utilisateur, mais pas toute l'administration de la machine.

Je sais, je suis pénible... wink


Michaël.

Hors ligne

#15 Le 11/09/2008, à 14:20

m2nis

Re : Comment autoriser la mise à jour sans mot de passe ?

®om a écrit :

Une fois que tu as fait un script qui met à jour toutes les machines de ton réseau (éventuellement un petit nombre d'abord, pour tester, les autres ensuite, après c'est à toi de voir), t'as plus qu'à double cliquer son ton raccourci. La charge de travail n'est pas si énorme smile

A défaut de trouver une solution telle que je la cherche, c'est une voie qui pourrait être explorée. En terme de charge de travail, il n'y a effectivement que peu de contraintes.


Michaël.

Hors ligne

#16 Le 11/09/2008, à 15:35

Xarkam

Re : Comment autoriser la mise à jour sans mot de passe ?

Si tu a les ip des machines qui se suivent, alors une boucle for et dans la boucle le ssh $ip_machine $commande_upgrade $p $port_ssh
Regarde aussi du côté du programme expect .


Osames Manager
---
Asus Rampage V Extrême | Intel i7 5820K | Corsair 16GB DDR4 | NVIDIA GeForce 770GTX
Utilisateur d'Ubuntu, Debian, et Windows

Hors ligne

#17 Le 12/09/2008, à 18:35

syj

Re : Comment autoriser la mise à jour sans mot de passe ?

Je pense que le mieux serait de lancer la mise à jour à l'arrêt de la machine.

Reste à trouver où implanter le script de mise à jour.

Hors ligne

#18 Le 16/09/2008, à 06:04

m2nis

Re : Comment autoriser la mise à jour sans mot de passe ?

syj a écrit :

Je pense que le mieux serait de lancer la mise à jour à l'arrêt de la machine.

Voila une idée qui me plaît plutôt plus et qui ne semble pas poser de problèmes particuliers à première vue. Je vais creuser de ce côté.


Michaël.

Hors ligne

#19 Le 16/09/2008, à 06:44

Hermes le Messager

Re : Comment autoriser la mise à jour sans mot de passe ?

m2nis a écrit :
syj a écrit :

Je pense que le mieux serait de lancer la mise à jour à l'arrêt de la machine.

Voila une idée qui me plaît plutôt plus et qui ne semble pas poser de problèmes particuliers à première vue. Je vais creuser de ce côté.

puis
C'est à l'admin de s'occuper des mises à jour de ses postes et puis c'est tout. Ya pas vraiment à discuter, c'est comme ça, ça fait partie du travail de l'admin et les systèmes sont conçus pour ça.
roll

Hors ligne