ldap 安装
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ldap 安装相关的知识,希望对你有一定的参考价值。
一、安装步骤1:配置yum源
挂着盘镜像时用到: 这里不做解释;(yum clean all && yum makecache)
2:安装OpenLDAP组件
1)安装OpenLDAP组件命令如下:
[[email protected] ~]# yum install openldap openldap-servers openldap-clients openldap-devel compat-openldap -y
compat-openldap-2.3.43-2.el6.x86_64
openldap-clients-2.4.40-16.el6.x86_64
openldap-2.4.40-16.el6.x86_64
openldap-devel-2.4.40-16.el6.x86_64
openldap-servers-2.4.40-16.el6.x86_64
2)初始化OpenLDAP配置
[[email protected] ~]# cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
[[email protected] ~]# cp /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf
[[email protected] ~]# chown -R ldap.ldap /etc/openldap/
[[email protected] ~]# chown -R ldap.ldap /var/lib/ldap
3)启动LDAP进程slapd(调试程序)
[[email protected] ~]# service slapd restart
Stopping slapd: [FAILED]
Starting slapd: [ OK ]
4) 查看OpenLDAP默认监督
[[email protected] ~]# netstat -ntplu|grep -i :389
tcp 0 0 0.0.0.0:389 0.0.0.0:* LISTEN 28137/slapd
tcp 0 0 :::389 :::* LISTEN 28137/slapd
5) 查看OpenLDAP进程状态
[[email protected] ~]# ps aux|grep slapd |grep -v grep
ldap 28137 0.0 1.5 536828 62924 ? Ssl 11:33 0:00 /usr/sbin/slapd -h ldap:/// ldapi:/// -u ldap
二、OpenLDAP配置
1.配置文件关键路径:
/etc/openldap/slapd.conf(OpenLDAP住配置文件、记录根域名名称、管理员名称、密码、日志、权限等相关信息)
/var/lib/ldap/* (OpenLDAP 数据文件存储位置,可以根据需求进行调整)
/usr/share/openldap-servers/slapd.conf.obsolete (模板配置文件)
/usr/share/openldap-servers/DB_CONFIG.example (模板数据配置文件schema路径)
/etc/openldap/schema/* (OpenLDAP schema规范存放位置)
OpenLDAP监听的端口有以下两个.
默认监听端口:389 (明文数据传输)
加密监听端口:636 (密文数据传输)
2.slapd.conf配置文件
OpendLDAP 主配置文件为/etc/openldap/slapd.conf.此文件默认不存在,需要负责安装OpenLDAP软件包安装所产生的配置文件模板并重命名为slapd.conf文件;
1)获取openldap-servers软件包生产的文件
[[email protected] ~]# rpm -ql openldap-servers |egrep -i '(slapd\.conf\.*|DB_CONFIG.example)'
/etc/openldap/slapd.conf
/etc/openldap/slapd.conf.bak
/usr/share/man/man5/slapd.conf.5.gz
/usr/share/openldap-servers/DB_CONFIG.example
/usr/share/openldap-servers/slapd.conf.obsolete
2)软件包所产生的文件的用途
/usr/share/openldap-servers/slapd.conf.obsolete 为OpenLDAP配置文件模板
/usr/share/openldap-servers/DB_CONFIG.example 为OpenLDAP数据库配置文件模板
要配置OpendLDAP服务端,需要将如上配置文件模板负责到/etc/openldap/目录下并命名为slapd.conf,同时将数据库配置文件模板复制到/var/lib/ldap/目录中并将其命名为DB_CONFIG,且/var/lib/ldap/目录权限所有主(owner),所属组(group)必须为ladp用户可读写,否则会在加载slapd进程时显示权限警告
3) slapd.conf配置文件参数
/etc/openldap/slapd.conf 为OpenLDAP主配置文件,以#号开头的为注释说明
include /etc/openldap/schema/corba.schema
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/duaconf.schema
include /etc/openldap/schema/dyngroup.schema
OpenLDAP服务允许连接的客户端版本。
allow bind_v2
OpenLDAP进程启动时,pid文件存放路径
pidfile /var/run/openldap/slapd.pid
OpenLDAP 参数文件存放的路径
argsfile /var/run/openldap/slapd.args
OpenLDAP 指定需要加载额外的模块
moduleload ppolicy.la
OpenLDAP模块文件存放的路径
modulepath /usr/lib/openldap //32bit的模块文件路径
modulepath /usr/lib64/openldap //64bit的模块文件路径
指定OpenLDAP数据库类型
OpendLDAP服务后端存储数据库引擎支持的数据库类型有mysql db2 oracle等关系数据库,默认为bdb数据库。
database dbd
指定OpenLDAP服务器域名(DN)
指定要搜索或查询OpenLDAP目录树的后缀名称等同于AD域名
suffix "dc=example,dc=com"
指定OpenLDAP服务器管理信息
rootdn "cn=Manager,dc=example,dc=com"
指定OpenLDAP服务管理员密码
root [email protected] #文明添加,不建议使用
rootpw {crypt}ijFYNcSNctBYg
指定OpenLDAP数据库文件的存放目录
directory /var/lib/ldap
创建OpendLDAP索引
index objectClass eq,pres
index ou,cn,mail,surname,givename eq,pres,sub
index uidNumber,gidNumber,loginShell eq,pres
三、修改OpenLDAP配置
1:备份默认数据库文件
[[email protected] openldap]# \cp /etc/openldap/slapd.d /tmp/slapd.d.bak/ -fr
2: 查看OpendLDAP是否开启SSL加密功能
[[email protected] openldap]# cat /etc/sysconfig/ldap |grep -v -E "^$|^#"
SLAPD_LDAP=yes
SLAPD_LDAPI=yes
SLAPD_LDAPS=no
此处未开启SSL,如果开启SSL功能,可以再使用SLAPD_LDAPS=yes,或者使用SLAPD_URLS进行指导即可
例如:SLAPD_URLS=ldaps://ldap.deppon.com
3: OpenLDAP主配置文件配置
1) schema文件的引入
include /etc/openldap/schema/samba.schema
2) 创建OpenLDAP的管理员密码
通过slappasswd命令创建密码串,然后将密码串负责到rootpw即可
4: slaptest 检测、生成数据库
[[email protected] openldap]# slaptest -f /etc/openldap/slapd.conf
如果配置文件存在语法错误,通过slaptest -u 命令有相应的提示,根据提示对slapd.conf配置文件进行调整即可;
通过slapd.conf配置文件生成数据库
[[email protected] openldap]# slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d
5:OpenLDAP日志配置
1)查看日志级别
slapd -d ?
2) OpenLDAP服务日志设置
通过修改rsyslog配置文件, 在文件中添加:local4* /var/log/slapd.log
[[email protected] openldap]# touch /var/log/slapd.log
[[email protected] openldap]# chown ldap.ldap /var/log/slapd.log
[[email protected] openldap]# chmod 755 /var/log/slapd
[email protected] openldap]# chown ldap:ldap /var/log/slapd/
修改日志文件,使其加载OpenLDAP参数
[[email protected] openldap]# sed -i "/local4.*/d" /etc/rsyslog.conf
[[email protected] openldap]# cat >> /etc/rsyslog.conf << EOF
> local4.* /var/log/slapd/slapd.log
> EOF
[[email protected] openldap]# cat /etc/openldap/slapd.conf |grep -i loglevel
重新加载rsyslog使其配置生效
[[email protected] openldap]# service rsyslog restart
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
6:通过cn=config配置OpenLDAP日志
1)查看数据库配合文件日志级别信息
[[email protected] slapd.d]# cat cn\=config.ldif |grep olcLogLevel
olcLogLevel: 0
四、启动slapd服务
service slapd restart
五、yum安装migrationtools
1)yum install migrationtools -y
vim /usr/share/migrationtools/migrate_common.ph
$DEFAULT_MAIL_DOMAIN = "ouldap.com";
# Default base
$DEFAULT_BASE = "dc=ouldap,dc=com";
2)生成base.ldif
/usr/share/migrationtools/migrate_base.pl >base.ldif
3)添加base.ldif到ldap
ldapadd -x -D "cn=Manager,dc=ouldap,dc=com" -W -f ./base.ldif
4)检查ldapadd是否成功
ldapsearch -x -D "cn=Manager,dc=ouldap,dc=com" -b "ou=Aliases,dc=ouldap,dc=com" -W 'uid=zhijie'
五、yum安装httpd,php及PhpLdapAdmin
1)yum install httpd phpldapadmin -y
yum install php php-mbstring php-pear
2)配置/etc/httpd/conf.d/phpldapadmin.conf允许从远程访问
Alias /phpldapadmin /usr/share/phpldapadmin/htdocs
Alias /ldapadmin /usr/share/phpldapadmin/htdocs
<Directory /usr/share/phpldapadmin/htdocs>
Order Deny,Allow
Allow from all
</Directory></span>
3)修改/etc/phpldapadmin/config.php
$servers->setValue('login','attr','dn');
// $servers->setValue('login','attr','uid');
4)httpd.conf配置 使Apache支持php开发环境
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
5)在DirectoryIndex 后面添加PHP类型的页面
DirectoryIndex index.php index.html index.html.var
6)虚拟主机配置
vim /etc/httpd/conf/httpd.conf
<VirtualHost *:80>
ServerAdmin myldap.ouldap.com
DocumentRoot /usr/share/phpldapadmin/htdocs
ServerName myldap.ouldap.com
</VirtualHost>
service httpd status
问题:
1:如果出现php程序无法调用OpenLDAP相关的模块,造成所安装的PHP程序错误,不支持连接OpenLDAP接口
安装yum install php-ldap 重新apache
以上是关于ldap 安装的主要内容,如果未能解决你的问题,请参考以下文章