ldap安装部署
一、关闭selinux和防火墙
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config setenforce 0
systemctl stop firewalld systemctl disable firewalld
二、yum安装ldap
部署安装包
yum -y install openldap compat-openldap openldap-clients \ openldap-servers openldap-servers-sql openldap-devel migrationtools
查看版本OpenLdap版本
slapd -VV
修改配置文件
配置管理员密码,将密码设置为Admin258258,执行加密后将密码保存下来,放在配置文件olcDatabase={2}hdb.ldif的olcRootPW值中(该值需要添加),修改对应的olcSuffix、olcRootDN。
slappasswd -s Admin258258 vi /etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif
修改olcDatabase={1}monitor.ldif文件中的olcAccess值
vi "/etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif"
验证配置文件是否正确,出现succeed表明文件正确。
slaptest -u
checksum error可忽略
启动查看服务
systemctl enable slapd systemctl start slapd systemctl status slapd
查看监听端口
netstat -anpl|grep 389
配置OpenLDAP数据库
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG chown ldap:ldap -R /var/lib/ldap chmod 700 -R /var/lib/ldap ll /var/lib/ldap/
导入基本Schema
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif
配置openldap基础的数据库
vim base.ldif
添加如下内容后导入
dn: dc=HADOOP,dc=NBGTEST,dc=LOCAL o: HADOOP NBGTEST LOCAL dc: HADOOP objectClass: top objectClass: dcObject objectclass: organization dn: cn=Manager,dc=HADOOP,dc=NBGTEST,dc=LOCAL cn: Manager objectClass: organizationalRole description: Directory Manager dn: ou=People,dc=HADOOP,dc=NBGTEST,dc=LOCAL ou: People objectClass: top objectClass: organizationalUnit dn: ou=Group,dc=HADOOP,dc=NBGTEST,dc=LOCAL ou: Group objectClass: top objectClass: organizationalUnit
ldapadd -x -w "Admin258258" -D "cn=Manager,dc=HADOOP,dc=NBGTEST,dc=LOCAL" -f /etc/openldap/base.ldif
开启OpenLDAP日志访问功能
默认情况下OpenLDAP是没有启用日志记录功能的,但是在实际使用过程中,我们为了定位问题需要使用到OpenLDAP日志。
新建日志配置ldif文件loglevel.ldif,如下:
vim loglevel.ldif
dn: cn=config changetype: modify replace: olcLogLevel olcLogLevel: -1
导入到OpenLDAP中,如下:
ldapmodify -Y EXTERNAL -H ldapi:/// -f /root/loglevel.ldif
重启OpenLDAP服务
systemctl restart slapd
修改rsyslog配置文件/etc/rsyslog.conf,末尾添加
local4.* /var/log/slapd.log
重启rsyslog服务
systemctl restart rsyslog
安装和配置LDAP管理工具PHPldapadmin
yum -y install httpd php php-ldap php-gd php-mbstring php-pear php-bcmath php-xml yum -y install epel-release yum --enablerepo=epel -y install phpldapadmin
修改配置文件
vim /etc/phpldapadmin/config.php
#397行取消注释,398行添加注释 $servers->setValue('login','attr','dn'); // $servers->setValue('login','attr','uid');
vi /etc/httpd/conf.d/phpldapadmin.conf
# # Web-based tool for managing LDAP servers # Alias /phpldapadmin /usr/share/phpldapadmin/htdocs Alias /ldapadmin /usr/share/phpldapadmin/htdocs <Directory /usr/share/phpldapadmin/htdocs> <IfModule mod_authz_core.c> # Apache 2.4 #Require local Require all granted </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from all Allow from 127.0.0.1 Allow from ::1 </IfModule> </Directory>
设置开机自启并启动httpd,如果之前有启动过,进行restart重启。
systemctl enable httpd systemctl start httpd
登录web页面
http://10.188.0.2/phpldapadmin/cmd.php
账号:cn=Manager,dc=HADOOP,dc=NBGTEST,dc=LOCAL
密码:Admin258258