Rechercher : dans
Par :

Démarrage ldap automatique

Dernière réponse le 26 mai 2007 à 00:05:42 audrey, le 24 mai 2007 à 11:32:27 
 Signaler ce message aux modérateurs

Bonjour.

Je souhaite que ldap se lance automatiquement au démarrage.
Pour cela j'ai fait
chkconfig -level 345 ldap on

Au démarrage, la machine essaye de lancer ldap mais affiche un message comme quoi elle n'a pas les droits pour démarrer le service.

Je souhaitais savoir où doit-on configurer ces droits?

Merci.

Audrey

Configuration: Windows XP
Internet Explorer 6.0

Meilleures réponses pour « démarrage ldap automatique » dans :
Automatiser des tâches avec init et cron VoirSous Linux, il est facile d'automatiser des tâches, avec init pour lancer une tâche au démarrage, ou bien avec cron pour lancer une tâche à un moment précis. Il y a plusieurs logiciels gérant les crons, ici le logiciel crontab est...
Interdire ou autoriser le démarrage automatique d'un CD VoirInterdire ou autoriser le démarrage automatique d'un CD Souvent les virus se transmettent par un CD via son exécution automatique. Pour empêcher cela, il faut interdire le démarrage automatique d'un CD pour pouvoir l'analyser avec son...
Télécharger Caledos Automatic Wallpaper Changer VoirCaledos Automatic Wallpaper Changer est comme son nom l'indique, un gestionnaire de fond d'écran. Les principales caractéristiques de Caledos : - il supporte les formats d'images BMP, GIF, JPG, TIF, - la sélection facile de dossiers ou fichiers à...

1

audrey, le 24 mai 2007 à 14:38:46

J'ai rendu exécutables :
/etc/init.d/ldap
/usr/sbin/slapd
dans mon grand désespoir je suis même allée jusqu'à rendre exécutable (même si je crois que ça ne sert à rien) :
/etc/openldap/slapd.conf

Ca ne fonctionne toujours pas !

Au démarrage de la machine, j'ai le message :
démarrage de slapd : /etc/openldap/slapd.conf permission denied

Je n'ai plus d'idées.
Je suis sous RedHat entreprise 3.
Si quelqu'un pouvait m'aider...
merci d'avance.

audrey

Répondre à audrey

2

audrey, le 25 mai 2007 à 09:03:29

J'ai regardé dans le fichier /var/log/boot.log
J'ai juste deux lignes :

slapd:/etc/openldap/slapd.conf : Permission denied
ldap: Démarrage de slapd failed

Ca ne m'avance pas vraiment.
Quelqu'un a-t-il déjà eu ce genre d'erreur?
D'avance merci.

Audrey

Répondre à audrey

3

bob031, le 25 mai 2007 à 09:12:09

Salut,

regarde ici :
http://jfgiraud.free.fr/programmation/ldap/

si ça peut t'aider !

Répondre à bob031

4

bob031, le 25 mai 2007 à 09:21:20

Re-

lu sur le lien donné ci-dessus :

Fichier /etc/openldap/slapd.conf
Attention, ce fichier contient le mot de passe de l'administrateur du serveur LDAP. Il faut donc lui mettre les droits 600.
chmod 600 /etc/openldap/slapd.conf



et ici :
http://julp.developpez.com/freebsd/authentification-ldap/#L3­.2

L'ultime étape avant le démarrage du serveur LDAP afin d'assurer son bon fonctionnement est de modifier le propriétaire des fichiers où sont stockées les données



peut-être que ça règlera ton problème ...

:-))

Répondre à bob031

5

audrey, le 25 mai 2007 à 09:50:05

Très sincérement merci pour ta réponse.
Hélas, ça n'a pas fonctionné.
J'avais déjà fait le chmod 600 pour le fichier slapd.conf
En revanche, je n'avais pas modifié le propriétaire des fichiers.
J'ai donc fait un
chown -R root /var/lib/ldap

sans plus de succès...
Je suis preneuse de toute autre idée.
En tous cas, encore merci de t'être penché sur mon problème.

Audrey

Répondre à audrey

6

bob031, le 25 mai 2007 à 10:05:13

Re-

tu dis avoir fait : chown -R root /var/lib/ldap

or la commande indiquée dans le second lien que je t'ai donné est :
chown -R ldap:ldap /var/db/openldap-data

:-))

Répondre à bob031

7

audrey, le 25 mai 2007 à 10:19:54

Le second lien dit que les fichiers se trouvent dans le répertoire indiqué dans le fichier slapd.conf après "directory".
Pour moi, il s'agit du répertoire /var/lib/ldap.
/var/db/openldap-data n'existe pas dans ma distribution.
J'ai essayé donc de donner les droits à root. Sans succès.
J'ai également donné les droits à ldap en faisant :
chown -R ldap:ldap /var/lib/ldap
Sans plus de succès...

Audrey

Répondre à audrey

8

audrey, le 25 mai 2007 à 10:53:19

Le script de démarrage de ldap se trouve dans
/etc/init.d/ldap

Je me suis dit que c'était peut-être là qu'il y avait un problème.
En revanche je ne comprends rien à ce fichier.
Je vous le copie ci dessous.
Si quelqu'un peut me dire si l'erreur vient de là...
Merci.

#!/bin/bash
#
# ldap This shell script takes care of starting and stopping
# ldap servers (slapd and slurpd).
#
# chkconfig: - 39 61
# description: LDAP stands for Lightweight Directory Access Protocol, used \
# for implementing the industry standard directory services.
# processname: slapd
# config: /etc/openldap/slapd.conf
# pidfile: /var/run/slapd.pid

# Source function library.
. /etc/init.d/functions

# Source networking configuration and check that networking is up.
if [ -r /etc/sysconfig/network ] ; then
. /etc/sysconfig/network
[ ${NETWORKING} = "no" ] && exit 0
fi

# Source an auxiliary options file if we have one, and pick up OPTIONS,
# SLAPD_OPTIONS, and SLURPD_OPTIONS.
if [ -r /etc/sysconfig/ldap ] ; then
. /etc/sysconfig/ldap
fi

slapd=/usr/sbin/slapd
slurpd=/usr/sbin/slurpd
[ -x ${slapd} ] || exit 0
[ -x ${slurpd} ] || exit 0

RETVAL=0

function start() {
# Start daemons.
prog=`basename ${slapd}`
echo -n $"Starting $prog: "
if grep -q ^TLS /etc/openldap/slapd.conf ; then
daemon ${slapd} -u ldap -h '"ldap:/// ldaps:///"' $OPTIONS $SLAPD_OPTIONS
RETVAL=$?
else
daemon ${slapd} -u ldap $OPTIONS $SLAPD_OPTIONS
RETVAL=$?
fi
echo
if [ $RETVAL -eq 0 ]; then
if grep -q "^replogfile" /etc/openldap/slapd.conf; then
prog=`basename ${slurpd}`
echo -n $"Starting $prog: "
daemon ${slurpd} $OPTIONS $SLURPD_OPTIONS
RETVAL=$?
echo
fi
fi
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/ldap
return $RETVAL
}

function stop() {
# Stop daemons.
prog=`basename ${slapd}`
echo -n $"Stopping $prog: "
killproc ${slapd}
RETVAL=$?
echo
if [ $RETVAL -eq 0 ]; then
if grep -q "^replogfile" /etc/openldap/slapd.conf; then
prog=`basename ${slurpd}`
echo -n $"Stopping $prog: "
killproc ${slurpd}
RETVAL=$?
echo
fi
fi
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/ldap /var/run/slapd.args
return $RETVAL
}

# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status ${slapd}
if grep -q "^replogfile" /etc/openldap/slapd.conf ; then
status ${slurpd}
fi
;;
restart)
stop
start
;;
reload)
killproc ${slapd} -HUP
RETVAL=$?
if [ $RETVAL -eq 0 ]; then
if grep -q "^replogfile" /etc/openldap/slapd.conf; then
killproc ${slurpd} -HUP
RETVAL=$?
fi
fi
;;
condrestart)
if [ -f /var/lock/subsys/ldap ] ; then
stop
start
fi
;;
*)
echo $"Usage: $0 {start|stop|restart|status|condrestart}"
RETVAL=1
esac

exit $RETVAL


Audrey

Répondre à audrey

9

bob031, le 25 mai 2007 à 11:56:53

Re-,

Si dans le lien indiqué la commande est :

chown -R ldap:ldap /var/db/openldap-data


tu devrais chercher ou est ce fichu répertoire db et surtout le fichier (ou sous-répertoire) openldap-data !

si on en parle c'est qu'il doit être fichtrement nécessaire, non ?

fait par exemple, en root, un :
find / -name openldap*


pour voir s'il existe quelque part !

Sinon pitêtre qu'il te manque quelque chose !

Enfin, j'y connais rien à LDAP .....mais c'est comme ça que j'aurai raisonné ... :-)

:-))

Répondre à bob031

10

mathilde, le 25 mai 2007 à 12:25:49

Je n'ai pas ce openldap-data.
J'ai fait la commande find que tu m'as donnée.
Je pense que c'est le nom qui change à cause de la distribution.

Dans le site :

http://www.free-4ever.net/index.php/Openldap:configuration_s­lapd_standard

il est dit :

"les données se trouvent dans /var/lib/slapd sur Debian alors que cela se trouve dans /var/db/openldap-data sur FreeBSD."

Je suis sous RedHat mais apparemment j'ai les mêmes répertoire que sous debian.

Audrey

Répondre à mathilde

11

bob031, le 25 mai 2007 à 12:40:11

Ok ! comme je sais pas à quoi ressemble openldap-data ... je te fais confiance !
sinon une dernière trouvaille ici :
http://www.developpez.net/forums/showthread.php?t=295789

Bonjour,
Je viens d’installer Openldap 2.3.34 sur ma machine (Red Hat) ......


tu devrais lire car apparemment ça a marché pour lui !

:-))

Répondre à bob031

12

bob031, le 25 mai 2007 à 12:45:53

Re-,

je te synthétise :

Zozo
Je viens d’installer Openldap 2.3.34 sur ma machine (Red Hat) je pense que l’installe c’est bien passé mais je ne sais pas comment le démarrer.
Logiquement d’après ce que j’ai lu on devrait faire /etc/init.d/slapd start mais j’ai pas slapd dans mon init.d


Toto
i Openldap est installé à partir des sources, en toute logique tu as du spécifier un --prefix=DIR, où DIR est le répertoire d'installation d'Openldap (et non de compilation).
Dans ce cas, tu te rends dans le répertoire définit par DIR, et tu fais un :

./libexec/slapd

ou si tu veux des logs :
./libexec/slapd -d 255

Si c'est à partir des RPMs, tu recherches simplement le binaire "slapd" dans ton arborescence.

Zozo
ça marrrccchhhheeeeeee !



j'espère que pour toi c'est ça !

:-))

Répondre à bob031

13

audrey, le 25 mai 2007 à 13:58:07

Le site permet de démarrer slapd.
Je savais déjà le faire.
Lorsque je tape slapd, le service démarre.
Je n'ai pas dû être assez précise.
Désolée..
Ce que je voudrais c'est que le service démarre automatiquement au démarrage du serveur...
Il se lance au démarrage mais ne démarre pas (échec : permission denied)

Audrey

Répondre à audrey

14

bob031, le 25 mai 2007 à 15:25:53

Au temps pour moi ! :-)
Si si ta question était précise et bien stipulée dans ton premier post !
Désolé, je me suis perdu !

Bon comme j'y connais rien mais que j'ai cherché un peu (just pour le fun !) voici un lien ou il faut installer un script ..... Pour lancer slapd au démarrage de la machine, voici une variante slapd.sh à adapter à votre site.
http://www.quesaco.org/Script-de-demarrage-OpenLDAP

sinon ici (sur RedHat 6.0):
2- Démarrage du serveur LDAP
Pour le lancer automatiquement au démarrage de la machine, exécuter setup. Dans System services, cocher ldap
.
http://jfgiraud.free.fr/programmation/ldapauth/vinitial/


Après je sais plus ! (déjà que je sais pas grand chose ..... :-)

:-))

Répondre à bob031

15

audrey, le 25 mai 2007 à 16:09:20

Je vais regarder les sites que tu m'as donnés mais je viens de découvrir une info intéressante.
Après avoir fait :
/sbin/service ldap stop

Si je fais :
slapd
le service se lance
en revanche si au lieu de "slapd" je tape :
/sbin/service/ldap start
j'ai le même message qu'au démarrage de la machine, c'est à dire :
"Démarrage de slapd : /etc/openldap/slapd.conf : Permission denied [ECHOUE]"

Je ne sais pas si c'est parlant, mais je pense que le problème peut venir de là.

Audrey

Répondre à audrey

16

audrey, le 25 mai 2007 à 16:20:52

J'ai été trop vite.
Ne pas tenir compte du message précédent, il est inexact.
J'ai une question : quel "utilisateur" démarre le service au lancement de la machine?
Ce' n'est pas root puisqu'on se log après le lancement de l'ensemble des services.
Je pense qu'en fait, le problème est que dans mon fichier de configuration : slapd.conf
tous les utilisateurs ont le droit en lecture mais seul root à tous les droits.
Comment donc définir dans slapd.conf que le service peut être lancé au démarrage par "une autre personne que root"?
Merci.

Audrey

Répondre à audrey

17

NET6a, le 25 mai 2007 à 16:25:50

Bonjour Audrey,

pour connaitre l'utilisateur/groupe, le plus simple est de consulter la liste des utilisateurs/groupes:
tapes 'cat /etc/passwd', tu auras la liste des utilisateurs, tu devrais y trouver un utilisateur 'ldap quelquechose'
tapes 'cat /etc/group' pour trouver le groupe.

A partir de la, il faut que tu attribue la paternité des fichiers de configuration en fonction de l'utilisateur/groupe trouvé. 'chown...'

Si cela ne marche toujours pas, cherche l'endroit où est stockée ta base ldap (dans slapd.conf) ou encore avec une recherche de type : 'find /var -name "*ldap*" -print', et donne la paternité à ce répertoire...

Tiens moi au courant.

Serge

Répondre à NET6a

18

audrey, le 25 mai 2007 à 16:39:29

Bonjour Serge.

Tout d'abord : merci pour ton aide.

Dans /etc/group, j'ai
ldap:x:55:

Cela veut-il dire que 55 est l'utilisateur?
Dois-je faire un chown -R 55:ldap /var/lib/ldap ?

Audrey

Répondre à audrey

19

NET6a, le 25 mai 2007 à 17:02:10

Re-

55 n'est pas un nom d'utilisateur, mais l' id du groupe (identifiant numérique) , il faut que tu fasse aussi une recherche dans /etc/passwd.

Je parie que l'utilisateur s'appelle ldap, donc, il faudra taper:

chown -R ldap:ldap /var/lib/ldap

Serge

Répondre à NET6a

20

audrey, le 25 mai 2007 à 17:08:17

Dans /etc/passwd, j'ai
ldap:x:55:55: LDAP User /var/lib/ldap :/bin/false

J'ai donc fait un
chown -R ldap:ldap /var/lib/ldap

Sans plus de succès hélas (j'ai toujours le même message d'erreur au démarrage.

Audrey

Répondre à audrey

21

audrey, le 25 mai 2007 à 17:15:41

J'avais oublié le chown -R ldap:ldap /etc/openldap/slapd.conf
En fait je crois que depuis le début c'était soit ma base, soit mes fichiers de config qui avaient comme utilisateur ldap mais jamais les deux en même temps.
Maintenant ça fonctionne !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Après des jours de galère c'est vraiment agréable.
Merci à tous les deux de vous être penchés sur mon problème.
Je vais partir heureuse en week end !!!

Audrey

Répondre à audrey

22

bob031, le 25 mai 2007 à 18:24:33

Re-,
J'avais oublié le chown -R ldap:ldap /etc/openldap/slapd.conf
En fait je crois que depuis le début c'était soit ma base, soit mes fichiers de config qui avaient comme utilisateur ldap mais jamais les deux en même temps.


ben oui !

Heureux que tu y sois arrivée !

Et bon week-end !

:-))

Répondre à bob031

23

 mari, le 26 mai 2007 à 00:05:42

Savez vous comment télécharger un certificat de l'annuaire ldap

Répondre à mari