搜索很长时间始终发现博文与我的centos6.3里的openldap文件目录不同。敢肯定是版本问题。
于是参考了rhel官方文档,在这汉化列出。
1.ldap的安装
基本的ldap服务
Package | Description |
---|---|
openldap | openldap服务端和客户端必须用的库文件。 |
openldap-clients | 在ldap服务上使用的用于查看和修改目录的命令行的package。 |
openldap-servers | 用于启动服务和设置. 包含单独的ldap后台守护程序。 |
openldap-servers-sql | 支持sql模块 |
compat-openldap | openldap兼容性库 |
下面是常用的ldap服务
Package | Description |
---|---|
nss-pam-ldapd | 允许用户执行ldap查询的服务,nslcd |
mod_authz_ldap |
mod_authz_ldap模块,ldap的apche授权模块。
该模块使用短形式的主题和客户端SSL证书来确定用户的可分辨名称LDAP目录内的发行人的专有名称。
目录条目的属性的授权用户,确定用户和组权限的资产根据资产,并否认使用过期密码的用户访问。需要注意的是mod_ssl的模块时,需要使用的mod_authz_ldap模块。
|
使用yum install package来安装你需要的包
yum install package…
例如:
~]#yum install openldap openldap-clients openldap-servers
2.openldap的工具
openldap服务端命工具
Command | Description |
---|---|
slapacl | 允许你检查 访问属性列表 |
slapadd | 允许你从LDIF文件添加条目在 LDAP 目录. |
slapauth | 允许你检查验证和授权权限的ID表 |
slapcat | 允许你把 LDAP 目录的默认格式 保存到 LDIF 文件。 |
slapdn | 允许你检查变别名(NDs)的正确语法。 |
slapindex | 允许你基于当前内容重新索引slapd目录。会更改配置文件。 |
slappasswd | 允许您创建的ldapmodify实用程序,或者在slapd的配置文件加密的用户要使用的密码。 |
slapschema | 允许你检查遵守相应模式的数据库。 |
slaptest | 允许您检查LDAP服务器的配置。 |
使用以上工具时,注意停止服务
~]# service slapd stop
Stopping slapd: [ OK ]
确保文件有正确的使用者
~]#chown -R ldap:ldap /var/lib/ldap
openldap客户端工具
Command | Description |
---|---|
ldapadd | 允许您将从一个文件中,或从标准输入条目添加到LDAP目录中。这是一个符号链接 的ldapmodify-A |
ldapcompare | 可以让你比较给定的属性与LDAP目录条目。 |
ldapdelete | 允许您从LDAP目录中删除条目。 |
ldapexop | 允许您进行扩展LDAP操作。 |
ldapmodify | 允许您修改LDAP目录中的项目,无论是从一个文件中,或从标准输入。 |
ldapmodrdn | 允许您修改LDAP目录条目的RDN值。 |
ldappasswd | 让您的LDAP用户来设置或更改密码。 |
ldapsearch | 允许你搜索LDAP目录条目。 |
ldapurl | 可让您撰写或LDAP URL的分解。 |
ldapwhoami | 允许您在 LDAP服务上执行WHOAMI的操作。 |
在 Mozilla Thunderbird, Evolution, or Ekiga ldap 图形客户端上,只有只读权限,而不具有操作目录的权限。
默认的情况下,存储在OpenLDAP配置的/etc/openldap目录,下边的表为这个目录的重要文件。
Path | Description |
---|---|
/etc/openldap/ldap.conf | OpenLDAP客户端应用程序的配置文件。这包括LDAPADD的,ldapsearch的演变等。 |
/etc/openldap/slapd.d/ | 此目录包含slapd 的配置文件。 |
~]#slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/
不要直接编辑/etc/openldap/slapd.d/中的文件,这将有可能导致服务无法启动。
3.更改全局配置
LDAP全局配置选项文件:/etc/openldap/slapd.d/cn=config.ldif
以下是常用选项
可用的olcAllows选项
选项 | 描述 |
---|---|
bind_v2 | 接受LDAP2绑定请求。 |
bind_anon_cred | 当分辨名称(DN)是空的,允许匿名绑定时。 |
bind_anon_dn | 当可分辨名称(DN)是不是空的,允许匿名绑定时,。 |
update_anon | 启用匿名更新操作的处理。 |
proxy_authz_anon | 启用匿名代理授权控制。 |
例如
olcAllows: bind_v2 update_anon
olcConnMaxPending
olcConnMaxPending指令允许您指定挂起的请求,匿名会话的最大数量。它采用以下形式:
olcConnMaxPending: number
默认选项为100。
例如:
olcConnMaxPending: 100
olcConnMaxPendingAuth
olcConnMaxPendingAuth指令允许您指定挂起的请求,认证会话的最大数量。它采用以下形式:
olcConnMaxPendingAuth: number
例如
olcConnMaxPendingAuth: 1000
olcDisallows
olcDisallows指令允许你指定哪个功能停用。它采用以下形式:
采用空额分隔
可用的olcDisallows选项
Option | Description |
---|---|
bind_anon | 禁止匿名绑定 |
bind_simple | 禁止简单绑定认证机制 |
tls_2_anon | 当收到STARTTLS 命令禁止匿名会话 |
tls_authc | 禁止在验证时使用STARTTLS命令 |
olcDisallows:bind_anon
olcIdleTimeout
olcIdleTimeout指令允许您指定关闭空闲连接之前等待多少秒。它采用以下形式:
olcIdleTimeout: number
此选项默认被禁用(即设置为0)。
例如
olcIdleTimeout:180
olcLogFile
olcLogFile指令允许你指定一个文件,在其中写入日志消息。它采用以下形式:
olcLogFile:FILE_NAME
默认情况下,日志消息写入标准错误。
例如
olcLogFile: /var/log/slapd.log
olcReferral
olcReferral选项允许你不处理这个URL的服务请求
例如
olcReferral: ldap://root.openldap.org
olcWriteTimeout
允许你指定等待多少秒去关闭一个为解决的写请求连接
例如
olcWriteTimeout: 180
4.更改数据库特定配置
默认情况下,OpenLDAP服务器使用Berkeley DB(BDB)数据库作为后端。此数据库的配置存储在/etc/openldap/slapd.d/cn=config/olcDatabase={1}bdb.ldif文件。下面的指令中常用的数据库特定的配置:
olcReadOnly
该选项允许你使用只读模式的数据库
olcReadOnly: boolean
允许TRUE(默认只读模式),或者FALSE(默认可更改数据库)。默认为FALSE
例如
olcReadOnly: TRUE
olcRootDN选项让指定的用户在LDAP目录无访问控制和无命令设置。
olcRootDN: distinguished_name
它接受专有名称
Distinguished Name
(DN
),默认cn=Manager,dn=my-domain,dc=com.
例如
olcRootDN: cn=root,dn=example,dn=com
olcRootPW
olcRootPW: password
允许纯文本字符串,hash。生成一个hash,然后:
~]$slappaswdNew password:
Re-enter new password:
{SSHA}WczWsyPEnMchFf1GRTweq2q7XJcvmSxD
例如
olcRootPW: {SSHA}WczWsyPEnMchFf1GRTweq2q7XJcvmSxD
olcSuffix
该指令允许您指定域的提供信息
olcSuffix: domain_name
它接受一个完全限定的域名
fully qualified domain name
(FQDN),默认:dc=my-domain,dc=com.
例如
olcSuffix: dc=example,dc=com
5.扩展模式
从OPENLADP2.3开始,/etc/openldap/slapd.d/目录包含原本位于/etc/openldap/schema/。它可以扩展模式使用OpenLDAP支持额外的属性类型和对象类使用默认模式文件作为指导。参考http://www.openldap.org/doc/admin/schema.html。
6.启动LDAP服务
~]#service slapd start
Starting slapd: [ OK ]
如果你希望服务在启动时自动启动,使用以下命令:
~]#chkconfig slapd on
重启服务
~]#service slapd restart Stopping slapd: [ OK ]
Starting slapd: [ OK ]
查看状态
~]#service slapd status slapd (pid 3672) is running...
配置系统以验证使用OpenLDAP
为了将系统配置为使用OpenLDAP验证,确保LDAP服务器和客户机上安装相应的软件包。
~]# yum install openldap openldap-clients nss-pam-ldapd
~