|
|
|
|
||||||
| linux.debian.user.french Forum sur Linux Debian. Debian-user-french@lists.debian.org |
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 |
|
Messages: n/a
Hébergeur: |
Salut la liste,
J'ai un souci pour lancer un script sous Nagios (non non ça n'est pas HS, Nagios fonctionne bien). Je m'explique : Je souhaite en cas de pépin sur un service, pouvoir le redémarrer. Je me doute qu'il faut les droits de root pour lancer une telle commande (Ex: /etc/init.d/apache2 restart). J'ai donc modifié mes règles sudoers: # Host alias specification Host_Alias SERVEUR = localhost # User alias specification User_Alias NAGIOS = %nagios,moi_pour_faire_les_tests # Cmnd alias specification Cmnd_Alias SERVICES = /usr/lib/nagios/plugins/eventhandlers/restart-apache,/etc/init.d/apache # User privilege specification root ALL=(ALL) ALL NAGIOS SERVEUR = NOPASSWD: SERVICES Quand je teste : moi@serveur:~$ /etc/init.d/apache2 restart Forcing reload of web server: Apache2grep: /etc/apache2/ssl/apache.pem: Permission non accordée grep: /etc/apache2/ssl/fa1f44e6.0: Permission non accordée grep: /etc/apache2/ssl/115406b0.0: Permission non accordée /etc/init.d/apache2: line 97: kill: (16929) - Opération non permise moi@serveur:~$ sudo /etc/init.d/apache2 restart Forcing reload of web server: Apache2. moi@serveur:~$ /usr/lib/nagios/plugins/eventhandlers/restart-apache CRITICAL SOFT 3 Redemarrage démon Apache (3ème état critique SOFT)...Forcing reload of web server: Apache2grep: /etc/apache2/ssl/apache.pem: Permission non accordée grep: /etc/apache2/ssl/fa1f44e6.0: Permission non accordée grep: /etc/apache2/ssl/115406b0.0: Permission non accordée /etc/init.d/apache2: line 97: kill: (341) - Opération non permise moi@serveur:~$ sudo /usr/lib/nagios/plugins/eventhandlers/restart-apache CRITICAL SOFT 3 Redemarrage démon Apache (3ème état critique SOFT)...Forcing reload of web server: Apache2. ça marche comme prévu, par contre si je teste sur Nagios rien ne marche. La grosse différence entre nagios et moi c'est le Shell : moi /bin/bash nagios /bin/false Ce paramètre de Shell m'empêche de me connecter pour tester les scripts. Est-il possible de faire exécuter des scripts sudo à un user /bin/false? Merci d'avance. @+ Sil |
|
|
|
#2 |
|
Messages: n/a
Hébergeur: |
Bonjour,
Je n'ai pas eu de succès avec mon premier message. Mais j'ai continué mes investigations. ;-) Voici le résultat de deux commandes identiques lancées de deux manières différentes, la première en ligne de commande, logué sous nagios et la deuxième lancé par le script nagios. (visudo autorise nagios pour /etc/init.d/mysql * et mon script restart-mysql lance "/usr/bin/sudo /etc/init.d/mysql restart") (pour une lecture plus facile, j'ai enlevé le retour à la ligne automatique) nagios@serveur$ /usr/lib/nagios/plugins/eventhadlers/restart-mysql CRTICAL SOFT 3 Donne dans /var/log/auth.log Mar 26 15:05:34 localhost sudo: nagios : TTY=pts/1 ; PWD=/var/log/nagios ; USER=root ; COMMAND=/etc/init.d/mysql restart MySQL redémarre Par contre si je stoppe mysql et nagios se débrouille tout seul au troisième test la commande suivante est lancée et loguée dans auth.log : Mar 26 15:04:40 localhost sudo: nagios : TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/etc/init.d/mysql restart MySQL ne redemarre pas :-( Les différences sont qu'il n'y a pas de tty affecté (normal je suppose,vu que c'est un démon) mais pourquoi PWD est sur la racine ? Nagios n'y a aucuns droits. Voyez vous quelque chose de bizarre ? Merci d'avance, @+ Sil |
|
|
|
#3 |
|
Messages: n/a
Hébergeur: |
Bonjour,
Je n'ai pas eu de succès avec mon premier message. Mais j'ai continué mes investigations. ;-) Voici le résultat de deux commandes identiques lancées de deux manières différentes, la première en ligne de commande, logué sous nagios et la deuxième lancé par le script nagios. (visudo autorise nagios pour /etc/init.d/mysql * et mon script restart-mysql lance "/usr/bin/sudo /etc/init.d/mysql restart") (pour une lecture plus facile, j'ai enlevé le retour à la ligne automatique) nagios@serveur$ /usr/lib/nagios/plugins/eventhadlers/restart-mysql CRTICAL SOFT 3 Donne dans /var/log/auth.log Mar 26 15:05:34 localhost sudo: nagios : TTY=pts/1 ; PWD=/var/log/nagios ; USER=root ; COMMAND=/etc/init.d/mysql restart MySQL redémarre Par contre si je stoppe mysql et nagios se débrouille tout seul au troisième test la commande suivante est lancée et loguée dans auth.log : Mar 26 15:04:40 localhost sudo: nagios : TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/etc/init.d/mysql restart MySQL ne redemarre pas :-( Les différences sont qu'il n'y a pas de tty affecté (normal je suppose,vu que c'est un démon) mais pourquoi PWD est sur la racine ? Nagios n'y a aucuns droits. Voyez vous quelque chose de bizarre ? Merci d'avance, @+ Sil |
|
|
|
#4 |
|
Messages: n/a
Hébergeur: |
Je revient à la charge,
Voici mes derniers tests : - le problème ne vient pas du paramètre requiretty de sudo. - Une tache cron de l'utilisateur nagios fonctionne parfaitement, mysql redemarre. - une tâche exécutée par le démon nagios sous l'utilisateur nagios ne fonctionne pas et ne génère aucune erreur. Les logs pour cron : Mar 27 19:23:01 localhost CRON[3769]: (pam_unix) session opened for user nagios by (uid=0) Mar 27 19:23:01 localhost sudo: nagios : TTY=unknown ; PWD=/var/log/nagios ; USER=root ; COMMAND=/etc/init.d/mysql restart Mar 27 19:23:08 localhost CRON[3769]: (pam_unix) session closed for user nagios Les logs pour le démon nagios : Mar 27 19:34:20 localhost sudo: nagios : TTY=unknown ; PWD=/var/log/nagios ; USER=root ; COMMAND=/etc/init.d/mysql restart Le fait que cron ouvre une session doit changer quelque chose, non ? Merci d'avance pour votre aide, @+ Sil |
|
|
|
#5 |
|
Messages: n/a
Hébergeur: |
Je revient à la charge,
Voici mes derniers tests : - le problème ne vient pas du paramètre requiretty de sudo. - Une tache cron de l'utilisateur nagios fonctionne parfaitement, mysql redemarre. - une tâche exécutée par le démon nagios sous l'utilisateur nagios ne fonctionne pas et ne génère aucune erreur. Les logs pour cron : Mar 27 19:23:01 localhost CRON[3769]: (pam_unix) session opened for user nagios by (uid=0) Mar 27 19:23:01 localhost sudo: nagios : TTY=unknown ; PWD=/var/log/nagios ; USER=root ; COMMAND=/etc/init.d/mysql restart Mar 27 19:23:08 localhost CRON[3769]: (pam_unix) session closed for user nagios Les logs pour le démon nagios : Mar 27 19:34:20 localhost sudo: nagios : TTY=unknown ; PWD=/var/log/nagios ; USER=root ; COMMAND=/etc/init.d/mysql restart Le fait que cron ouvre une session doit changer quelque chose, non ? Merci d'avance pour votre aide, @+ Sil |
|
|
|
#6 |
|
Messages: n/a
Hébergeur: |
Le problème semble résolu,
Sur la liste nagios user, on m'a conseillé de loguer la sortie de ma commande de redémarrage du service : /usr/bin/sudo /etc/init.d/mysql restart > /tmp/debug.log 2>&1 J'ai fait un test et le service à redémarré ! Je ne m'y attendait pas du tout. J'ai donc modifié la ligne pour ne pas écrire de fichier : /usr/bin/sudo /etc/init.d/mysql restart > /dev/null 2>&1 Et depuis ça marche. Si quelqu'un y comprend quelque chose... @+ Sil -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.net/?DebianFrench Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et "Reply-To:" To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org |
|
|
|
#7 |
|
Messages: n/a
Hébergeur: |
Le problème semble résolu,
Sur la liste nagios user, on m'a conseillé de loguer la sortie de ma commande de redémarrage du service : /usr/bin/sudo /etc/init.d/mysql restart > /tmp/debug.log 2>&1 J'ai fait un test et le service à redémarré ! Je ne m'y attendait pas du tout. J'ai donc modifié la ligne pour ne pas écrire de fichier : /usr/bin/sudo /etc/init.d/mysql restart > /dev/null 2>&1 Et depuis ça marche. Si quelqu'un y comprend quelque chose... @+ Sil -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.net/?DebianFrench Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et "Reply-To:" To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org |
|
![]() |
| Outils de la discussion | |
|
|