Creazione di una replica Ldap per zimbra
Installazione su un server CentOS
La replica verrà installata su un server CentOS.
Prima di tutto assicurarsi che il server ldap1.unimore.it sia raggiungibile alla porta 389 tcp e a quella 636 tcp (c'è anche un firewall sulla macchina stessa). Poi bisogna aver già generato un account "cn=adminzimbra,dc=unimore,dc=it" con una password e permessi di lettura sull'albero people di ldap1.
- Installare ex novo dai sorgenti ldap e berkeley db:
Scaricare il file db-4.8.24.tar.gz e scompattarlo. Andare sotto la directory ed eseguire
cd build_unix ../dist/configure –libdir=/usr/local/BerkeleyDB.4.8/lib/ make make install
a questo punto scomprimere il file openldap-stable-20090411.tgz, andare nella directory ed eseguire
export LDFLAGS="-L/usr/local/BerkeleyDB.4.8/lib" export CPPFLAGS="-I/usr/local/BerkeleyDB.4.8/include" export LD_LIBRARY_PATH=/usr/local/BerkeleyDB.4.8/lib/ ./configure make depend make make install
- Il file /usr/local/etc/openldap/slapd.conf è
Dove:
La password criptata per l'utente adminlocal deve essere creata con il comando
/usr/local/sbin/slappasswd -s <password>
e il risultato copiato e incollato nella riga
rootpw {SSHA}....
- Il certificato va generato con il seguente comando:
Va a questo punto scaricato il file di chiave
wget http://apps.lettere.unimo.it/samba-ldap/certs/europki-ca-chain.pem
e copiato nella directory /etc/pki/tls/certs con i permessi giusti:
cp europki-ca-chain.pem /etc/pki/tls/certs chown ldap:ldap /etc/pki/tls/certs/europki-ca-chain.pem
Per sproteggere il file di chiave, bisogna eseguire:
cd /etc/pki/tls/certs openssl rsa -in ldap-posta-key.pem -out ldap-posta-key-sprotetta.pem
- Devono esistere le directory
/var/lib/ldap /var/lib/ldap-people
con i permessi
chown -R ldap:ldap /var/lib/ldap*
e i files DB_CONFIG al loro interno devono essere
set_cachesize 0 536870912 1 set_lg_regionmax 1048576 set_lg_bsize 2097152 set_lg_max 10485760 set_flags DB_LOG_AUTOREMOVE
- Il file /usr/local/etc/openldap/ldap.conf deve essere:
# # LDAP Defaults # # See ldap.conf(5) for details # This file should be world readable but not world writable. #BASE dc=example, dc=com #URI ldap://ldap.example.com ldap://ldap-master.example.com:666 #SIZELIMIT 12 #TIMELIMIT 15 #DEREF never host ldap1.unimore.it base dc=unimore,dc=it pagesize 100000 ldap_version 3 bind_policy soft ssl start_tls tls_cacert /etc/pki/tls/certs/europki-ca-chain.pem
- Eseguire, (a ldap spento) il comando:
slapadd -v -l Wiki-ldap.ldif
dove Wiki-ldap.ldif è quello scaricato dal sito con il comando:
wget http://wiki.unimore.it/mediawiki/upload/7/78/Wiki-ldap.ldif
- A questo punto, basta far partire ldap:
/etc/init.d/ldap start
anche al boot
chkconfig --level 2345 ldap on
e per testarlo basta eseguire una query
ldapsearch -x -h localhost -b "dc=unimore,dc=it"