This repository has been archived on 2023-02-21. You can view files and clone it, but cannot push or open issues or pull requests.
slapd-supann/lib/reset

74 lines
2.0 KiB
Bash
Executable File

#!/bin/sh
# initial configuration of slapd
set -e
LDIFDIR=/usr/share/slapd-supann/
SERVICE="/usr/sbin/service slapd"
echo ""
echo " *************"
echo " * * La configuration et toutes les données"
echo " * ATTENTION * de l'annuaire LDAP vont être définitivement"
echo " * * effacées. Avez-vous fait un backup ?"
echo " *************"
echo ""
echo "Confirmez la MISE A ZÉRO COMPLÈTE de l'annuaire LDAP."
echo ""
echo -n "Tapez oui en toutes lettres : "
read ok
if [ "x$ok" != "xoui" ]; then
exit 3
fi
${SERVICE} stop || true
echo -n "Effacement de la configuration"
rm -rf /etc/ldap/slapd.d/*
echo -n " et des données .."
rm -rf /var/lib/ldap/*
echo "ok"
mkdir -p /etc/ldap/slapd.d
mkdir /var/lib/ldap/config-accesslog/ /var/lib/ldap/meta/
if [ ! -f /var/lib/ldap/ssl.pem -a ! -f /var/lib/ssl.key ]; then
echo -n "Installation des certificats SSL par défaut .."
cp ${LDIFDIR}/ssl.pem ${LDIFDIR}/ssl.key /var/lib/ldap
echo "ok"
fi
echo -n "Installation de la nouvelle configuration .. "
slapadd -n0 -F/etc/ldap/slapd.d -l${LDIFDIR}/config.ldif
echo "ok"
echo -n "Installation des schémas .. "
slapadd -n0 -F/etc/ldap/slapd.d -l/etc/ldap/schema/core.ldif
slapadd -n0 -F/etc/ldap/slapd.d -l/etc/ldap/schema/cosine.ldif
slapadd -n0 -F/etc/ldap/slapd.d -l/etc/ldap/schema/inetorgperson.ldif
slapadd -n0 -F/etc/ldap/slapd.d -l${LDIFDIR}/supann-2009.ldif
slapadd -n0 -F/etc/ldap/slapd.d -l${LDIFDIR}/eduperson.ldif
slapadd -n0 -F/etc/ldap/slapd.d -l${LDIFDIR}/eduorg-200210-openldap.ldif
echo "ok"
echo "Installation de la racine du méta-annuaire .. "
slapadd -n0 -F/etc/ldap/slapd.d -l${LDIFDIR}/config-meta.ldif
slapadd -n2 -F/etc/ldap/slapd.d -l${LDIFDIR}/meta.ldif
echo "ok"
chown -R openldap:openldap /etc/ldap/slapd.d /var/lib/ldap
${SERVICE} start
if ! grep "^\s*profile\s\+config\s*$" /etc/ldapvi.conf > /dev/null 2>&1; then
echo "(ajout du 'profile config' dans /etc/ldapvi.conf)"
cat << EOLDAPVI >> /etc/ldapvi.conf
profile config
host: ldapi://
sasl-mech: EXTERNAL
base: cn=config
EOLDAPVI
fi