======OpenLDAP on CentOS 7======
=====Preparation=====
* Do a clean minimal installation
* Install chronyd and configure timeserver
* Install initial firewall rules
* Download my superscript {{:ldap-el7.tar.gz|}} or when using EL6: {{:ldap-el6.tar.gz|}}
=====Installation=====
====Base====
yum install openldap-servers openldap-clients
Install my created superscript, including LDIF files! Answer all the questions and you have an empty LDAP server.
cd /root
tar -xvzf ldap-el7.tar.gz
cd ldap
./generate_slapd.sh
firewall-cmd --permanent --zone=management --add-service=ldap
firewall-cmd --permanent --zone=management --add-service=ldaps
firewall-cmd --permanent --zone=local --add-service=ldap
firewall-cmd --permanent --zone=local --add-service=ldaps
====phpldapadmin====
yum install phpldapadmin mod_ssl
=====Configuration=====
vi /etc/phpldapadmin/config.php
Change line 397 en 398 in the following:
// $server->setValue('login','attr','uid');
$server->setValue('login','attr','dn');
vi /etc/httpd/conf.d/phpldapadmin.conf
Change
Require local
in
Require all granted
setsebool -P httpd_can_connect_ldap 1
firewall-cmd --permanent --zone=management --add-service=http
firewall-cmd --permanent --zone=management --add-service=https
firewall-cmd --permanent --zone=local --add-service=http
firewall-cmd --permanent --zone=local --add-service=https
systemctl enable httpd
systemctl enable slapd
systemctl start httpd
systemctl start slapd
firewall-cmd --reload
=====Apache configuration=====
NameVirtualHost 172.16.2.27:80
NameVirtualHost 172.16.2.27:443
NameVirtualHost [2a02:22a0:bbb7:402::27]:80
NameVirtualHost [2a02:22a0:bbb7:402::27]:443
ServerAdmin webmaster@ldap.mngt.bh.helux.nl
ServerName ldap.mngt.bh.helux.nl
RewriteEngine on
RewriteRule ^/(.*)$ https://ldap.mngt.bh.helux.nl/$1 [R,L]
ErrorLog /var/log/httpd/ldap-error.log
CustomLog /var/log/httpd/ldap-access.log common
ServerAdmin webmaster@ldap.mngt.bh.helux.nl
ServerName ldap.mngt.bh.helux.nl
DocumentRoot /usr/share/phpldapadmin/htdocs/
Require all granted
SSLEngine On
SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
ErrorLog /var/log/httpd/ldap-error.log
CustomLog /var/log/httpd/ldap-access.log common
=====Notes=====
* Problem: When creating a Samba user with phpldapadmin, you will get a user must change password on the first login.
* Solution: add attribute "sambaPwdLastSet" and set the value to 1.
{{tag>centos}}