View previous topic :: View next topic |
Author |
Message |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Tue Mar 07, 2006 6:06 pm Post subject: [Apache] Problème de droits [presque résolu en fait !] |
|
|
Salut a tous,
Voila, ayant plusieurs servers (plus ou moins loins) a gérer, j'ai fait une petite interface web en php pour rebooter le server...
Problème, l'utilisateur apache n'a pas les droits... j'ai vu que avec sudo ca pouvait le faire, mais j'arrive pas a le faire marché !
Ca me fait toujours
Code: | sudo(pam_unix)[5979]: authentification failure; logname= uid=0 euid=0 tty= ruser= rhost= user=apache |
Si vous pouvez m'aider... Merci _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs
Last edited by MaKKrO on Thu Mar 09, 2006 11:22 am; edited 2 times in total |
|
Back to top |
|
 |
netfab Veteran

Joined: 03 Mar 2005 Posts: 1985 Location: 127.0.0.1
|
Posted: Tue Mar 07, 2006 8:37 pm Post subject: |
|
|
Salut,
Un peu plus de détails ne serait pas de refus
Fais voir ta configuration de sudo.
Pour apprendre à le configurer, çà se passe ici. |
|
Back to top |
|
 |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Wed Mar 08, 2006 7:15 am Post subject: |
|
|
Ouai je veux bien... mais quoi ???
Je peux mettre le pti script php Code: |
if ($_POST[choice]=="yes")
{
$cmd='sudo /sbin/halt';
system($cmd);
//echo "yes";
}
else
include "adminTail.php";
?>
|
Ca fait rien de bien mechant, je suis en train d essayer de me depatouiller avec sudo.
Merci pour le lien  _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
 |
arnouf n00b


Joined: 07 Mar 2006 Posts: 67 Location: Mougins-France
|
Posted: Wed Mar 08, 2006 8:17 am Post subject: |
|
|
As tu ajouter l'utilisateur apache dans le groupe "wheel", qui permet d'utiliser sudo ? |
|
Back to top |
|
 |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Wed Mar 08, 2006 8:36 am Post subject: |
|
|
Je n'ai pas le groupe WHEEL, j'ai juste mis ca :
Code: |
~ # cat /etc/sudoers
User_Alias USER = apache, flo
Cmnd_Alias CMD = /sbin/halt
USER localhost = CMD
Cmnd_Alias HALT = /sbin/halt
root ALL=(ALL) ALL
|
Maintenant si je test avec le user 'flo', je peux stopper le serveur, il me demande son password et ca marche... mais toujours pas moyen avec apache !
J'ai suivi cette doc la aussi _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
 |
_droop_ l33t

Joined: 30 May 2004 Posts: 957
|
Posted: Wed Mar 08, 2006 8:44 am Post subject: |
|
|
MaKKrO wrote: | il me demande son password et ca marche... mais toujours pas moyen avec apache !
|
Bonjour,
Apache risque d'être embété pour mettre son password...
Peut être que "USER localhost = NOPASSWD: CMD" serait mieu.
Sinon, il faut que tu testes la commande en étant apache (avec su - apache dans un shell (en passant par root si nécéssaire)).
Bonne journée. |
|
Back to top |
|
 |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Wed Mar 08, 2006 9:12 am Post subject: |
|
|
_droop_ wrote: | il faut que tu testes la commande en étant apache (avec su - apache dans un shell (en passant par root si nécéssaire)). |
LoL !
C'est bizarre, si je passe du user 'flo' a apache ca me donne ca :
Code: |
LW2000 ~ # su flo
flo@LW2000 /root $
|
Code: | flo@LW2000 /root $ su apache
Password:
su: Permission denied
Sorry.
|
Y'a peut etre un pb autre part alors...
Pourquoi le user 'flo' ne peut pas passer a un autre user, en specifiant son password ? il faut des droits pour ca ?
merci _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
 |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Wed Mar 08, 2006 3:04 pm Post subject: |
|
|
Personne ne pourrait m'aider ???
je galère ! _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
 |
boozo Advocate


Joined: 01 Jul 2004 Posts: 3193
|
|
Back to top |
|
 |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Wed Mar 08, 2006 3:40 pm Post subject: |
|
|
boozo wrote: | 'alute
je bien m'y coller si je peux |
Merci d'essayer au moins !
boozo wrote: |
tu as qui dans le goupe wheel stp ? |
Code: | ~ # cat /etc/group |grep wheel
wheel:x:10:root,apache |
J'ai rajouter le user apache dans ce groupe... je ne sais pas si j'ai bien fait !
C'est obligatoirement le groupe wheel ??? Ou alors c'est celui que je specifie dans le /etc/sudoers ?
ou ptetre les 2...  _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
 |
boozo Advocate


Joined: 01 Jul 2004 Posts: 3193
|
|
Back to top |
|
 |
letoff Apprentice


Joined: 04 Mar 2004 Posts: 163 Location: root in Paris, windsurfer in Brest
|
Posted: Wed Mar 08, 2006 4:12 pm Post subject: |
|
|
Hello tout le monde, je viens mettre mon petit grain de sel.
Premièrement mettre le user Apache dans le groupe wheel c'est comme cacher la clé de son coffre-fort sous le paillasson. Bonjour la sécurité...
Alors comme les developpeurs d'Apache ont tout prévu, ils ont justement créé un module pour exécuter des scripts avec des droits autres que ceux de l'utilisateur Apache (qui devrait en avoir le minimum). Le module s'appelle mod_suexec. Vérifies qu'il est bien chargé dans ta config.
Ensuite il te suffit de mettre un simple script bash comme celui-là:
Code: | #!/bin/bash
shutdown -r 0 |
dans un répertoire approprié (attention à ce qu'il soit protégé par une authentification forte hein!) en rajoutant dans la config d'Apache ce qu'il faut pour que ce script s'exécute sous root:
Code: | SuexecUserGroup root root |
Ca ne me semble pas plus compliqué que celà mais si tu veux + d'infos n'hésites pas.  _________________ Gentoo won't be suitable for server's use until GLEP 19 is alive. |
|
Back to top |
|
 |
boozo Advocate


Joined: 01 Jul 2004 Posts: 3193
|
|
Back to top |
|
 |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Wed Mar 08, 2006 4:32 pm Post subject: |
|
|
Sache que ton grain de sel est le bienvenu, surtout que grace a et ca marche !!!!!
Que faire pour te remercier ? un bisous ?
letoff wrote: |
Code: | SuexecUserGroup root root |
Ca ne me semble pas plus compliqué que celà mais si tu veux + d'infos n'hésites pas.  |
En fait je connaissai le module, mais c'est tout, je ne connaissai pas ca.
En tout cas merci beaucoup, je peux maintenant enlever la clé de sous le paillasson !
Merci a toi aussi boozo !  _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs
Last edited by MaKKrO on Wed Mar 08, 2006 4:46 pm; edited 1 time in total |
|
Back to top |
|
 |
letoff Apprentice


Joined: 04 Mar 2004 Posts: 163 Location: root in Paris, windsurfer in Brest
|
Posted: Wed Mar 08, 2006 4:38 pm Post subject: |
|
|
MaKKrO wrote: | Sache que ton grain de sel est le bienvenu, surtout que grace a toi ca marche !!!!! |
Et bien tu m'en vois ravi.
MaKKrO wrote: | Que faire pour te remercier ? un bisous ? |
Si ça ne t'ennuies pas je préfèrerait que nous envoies un peu de soleil parce que pour les bisous j'ai une bande de gremlins à la maison qui s'en chargent très bien. Par contre il fait un temps pourri ici.
[edit] tiens c'est mon 100ème message en pile-poil 2 ans.  _________________ Gentoo won't be suitable for server's use until GLEP 19 is alive. |
|
Back to top |
|
 |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Wed Mar 08, 2006 4:50 pm Post subject: |
|
|
letoff wrote: |
Si ça ne t'ennuies pas je préfèrerait que nous envoies un peu de soleil [...]
|
Ba du soleil, je pourrai je le ferai... y'en a revendre ici !
Je suis même pas a Dubai comme c'est marqué, mais a Djeddah, la ou notre bon président est depuis 2 jours !!!
Mais je repars a Dubai dans 4 jours...
voila, apres un post mouvementé sur Apache, ca part en sucette !!!  _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
 |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Thu Mar 09, 2006 11:32 am Post subject: |
|
|
Bon ba c'est pas encore ca !!!!
En fait, j'ai chillispot (redirection) qui tourne et la page de redirection est un .cgi et la catastrophe !!!
Dans le httpd.conf, il y a écrit :
Quote: |
This 'suexec' modules provides the ability to execute CGI scripts under a different user than apache is run |
Un petit log... et voila ! :
Code: | cat /var/log/apache2/suexec_log
[2006-03-09 02:39:29]: uid: (0/root) gid: (0/0) cmd: hotspotlogin.cgi
[2006-03-09 02:39:29]: cannot run as forbidden uid (0/hotspotlogin.cgi)
|
Donc je ne sais pas trop quoi faire, parce que ca doit changer les permissions, du coup je me tape un beau "Internal Server Error" !
Si je vire le SuexecUserGroup root root, ca marche nikel !
Est ce que quelqu'un aurait une idée ? je dois laissé tomber le module suexec ?
Merci _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
 |
letoff Apprentice


Joined: 04 Mar 2004 Posts: 163 Location: root in Paris, windsurfer in Brest
|
Posted: Thu Mar 09, 2006 1:34 pm Post subject: |
|
|
[edit] Au temps pour moi. suexec ne permet pas à root d'exécuter des cgi, c'est dans la doc officielle. Je te conseillerai donc de regarder comment fait webmin pour redémarrer le serveur. Je pense que leur solution doit être éprouvée. <g>
MaKKrO wrote: | Bon ba c'est pas encore ca !!!!
En fait, j'ai chillispot (redirection) qui tourne et la page de redirection est un .cgi et la catastrophe !!! |
Je commence à être paumé dans ta config! Chillispot c'est pas une émulation des scripts asp de Ms? Sinon je croyais que tes pages étaient en php?
Et que te donne un et un Code: | ls -la `which suexec2` |
Autrement tu trouveras toute la doc de suexec ici. _________________ Gentoo won't be suitable for server's use until GLEP 19 is alive. |
|
Back to top |
|
 |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Thu Mar 09, 2006 2:25 pm Post subject: |
|
|
letoff wrote: | Je commence à être paumé dans ta config! Chillispot c'est pas une émulation des scripts asp de Ms? Sinon je croyais que tes pages étaient en php?
|
Je te comprend bien, c'est pas simple sur du "papier" !
En fait, en gros, j'ai un srv radius sur lequel les clients que se connecte sont rediriger grace a chilli !
Ou ca :
Quote: | ChilliSpot is an open source captive portal or wireless LAN access point controller. It is used for authenticating users of a wireless LAN. |
Les clients son donc rediriger sur le hotspotlogin.cgi.
Apres ca, j ai toute l'interface php pour adminitrer la BDD mysql ou sont stocker tous les clients. (username - Password et tt le blabla)
Le php marche nikel, mais le cgi part en steak si j'ajoute cette ligne !
letoff wrote: |
Et que te donne un et un Code: | ls -la `which suexec2` |
|
Code: | suexec2 -V
-D AP_DOC_ROOT="/var/www"
-D AP_GID_MIN=100
-D AP_HTTPD_USER="apache"
-D AP_LOG_EXEC="/var/log/apache2/suexec_log"
-D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
-D AP_SUEXEC_UMASK=077
-D AP_UID_MIN=1000
-D AP_USERDIR_SUFFIX="public_html"
|
le ls -la 'whichi suexec2' ne fonctionne pas, par contre j'ai ca...
Code: | which suexec
which: no suexec in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/3.4.5)
|
Merci ! _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
 |
letoff Apprentice


Joined: 04 Mar 2004 Posts: 163 Location: root in Paris, windsurfer in Brest
|
Posted: Thu Mar 09, 2006 3:09 pm Post subject: |
|
|
MaKKrO wrote: | En fait, en gros, j'ai un srv radius sur lequel les clients que se connecte sont rediriger grace a chilli ! |
Honte sur moi j'avais confondu avec Chiliasp...
MaKKrO wrote: | Les clients son donc rediriger sur le hotspotlogin.cgi.
Apres ca, j ai toute l'interface php pour adminitrer la BDD mysql ou sont stocker tous les clients. (username - Password et tt le blabla)
Le php marche nikel, mais le cgi part en steak si j'ajoute cette ligne ! |
Ok je comprend mieux maintenant. En fait comme je l'ai indiqué en éditant mon post précédent, suexec ne peut fonctionner avec root. Il est donc normal que tes cgi partent en live avec la directive Apache que je t'avais donné auparavant. Notes bien que dans mon esprit cette directive ne devait s'appliquer qu'à un et un seul script que tu aurais placé dans un répertoire approprié avec la directive placée dans un <Directory>. Bon de toutes façon nous avons fait fausse route puisque root ne peut exécuter de cgi via suexec.
Code: | suexec2 -V
-D AP_DOC_ROOT="/var/www"
-D AP_GID_MIN=100
-D AP_HTTPD_USER="apache"
-D AP_LOG_EXEC="/var/log/apache2/suexec_log"
-D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
-D AP_SUEXEC_UMASK=077
-D AP_UID_MIN=1000
-D AP_USERDIR_SUFFIX="public_html"
|
Ok, tout celà me semble bon. Mais il va falloir passer à une autre technique.
MaKKrO wrote: | le ls -la 'whichi suexec2' ne fonctionne pas, par contre j'ai ca... |
Attention, il s'agit d'un which entouré de ` et non de '. Si tu préfère tu peux vérifier les droits setuid et guid de suexexc2 comme ceci:
Code: | ls -la $(which suexec2) |
Je suis de la vieille école...
Bon reprenons nos moutons. Tout ce que tu cherches à faire c'est un shutdown de ton serveur n'est-ce pas? Tu peux donc rajouter un user spécial dans /etc/shutdown.allow et faire ton script en bash avec un:
Code: | /sbin/shutdown -ar 0 |
Ensuite il faudra bien sur que ce script soit exécuté par le user indiqué dans ton fichier d'autorisation en utilisant le mod_suexec. Une autre possibilité serait de modifier ton inittab de façon à ce que les touches ctrl-alt-del fassent un reboot et créer un script qui envoie ces touches vers la console.
Hth. _________________ Gentoo won't be suitable for server's use until GLEP 19 is alive. |
|
Back to top |
|
 |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Thu Mar 09, 2006 3:39 pm Post subject: |
|
|
letoff wrote: | Tu peux donc rajouter un user spécial dans /etc/shutdown.allow et faire ton script en bash avec un:
Code: | /sbin/shutdown -ar 0 |
Ensuite il faudra bien sur que ce script soit exécuté par le user indiqué dans ton fichier d'autorisation en utilisant le mod_suexec... |
LoL... chui perdu la... désolé mais je sature !!!
Je met quoi dans le shutdown.allow ??? le script ?
Et le fichier d'autorisation, c'est lequel ? httpd.conf ??
Et le user, je le met ou ???
lol, ca me fait rire mais c'est absolument pas drole !!!
Je suis navré, mais j'ai les neurones qui se bousculent la ! _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
 |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Tue Mar 14, 2006 6:37 am Post subject: |
|
|
Adiez moi siou plait... c la misère la !
Merci _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
 |
_droop_ l33t

Joined: 30 May 2004 Posts: 957
|
Posted: Tue Mar 14, 2006 10:47 am Post subject: |
|
|
MaKKrO wrote: |
Je met quoi dans le shutdown.allow ??? le script ?
Et le fichier d'autorisation, c'est lequel ? httpd.conf ?? |
Salut,
A priori, le fichier d'autorisation dont tu parles c'est shutdown.allow et ce fichier doit contenir le nom des utilisateurs autorisés à arreter la machine. man shutdown te donnera plus de détails.
Bon courage. |
|
Back to top |
|
 |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Tue Mar 14, 2006 11:42 am Post subject: |
|
|
Ok je check ca dès que possible, merci ! _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
 |
MaKKrO Apprentice


Joined: 04 Oct 2005 Posts: 265 Location: Paris - FRANCE
|
Posted: Mon Mar 20, 2006 11:11 am Post subject: |
|
|
letoff wrote: | Une autre possibilité serait de modifier ton inittab de façon à ce que les touches ctrl-alt-del fassent un reboot et créer un script qui envoie ces touches vers la console. |
Bon alors je m'y suis enfin mis... Mais maintenant, c'est cette partie la qui me manque...
Comment créer un script qui renvoi ctrl+alt+suppr dans une console...
J'ai checké le /etc/inittab pour le reboot, c'est pas dur... mais ce script me pose quelques problèmes...
Si quelqu'un sait comment faire ca !
Merci _________________ Loisirs = Gentoo / Taff = Gentoo / Pourtant Taff != Loisirs |
|
Back to top |
|
 |
|