openldap的slapd.conf参数详解

安装就不说了,从配置开始说起
1.主要配置文件slapd.conf
内容包括三类:global, backend specific, and database specific。指全局设置,后台服务器的设置,数据库的设置。
全局的设置可以被另外两个的设置覆盖。后台服务器设置可以被数据库的设置覆盖。数据库设置可能是多个。

1.1全局设置
1.1.1 授权
#给不同的用户不同的权限,相当于数据库中的角色,权限一块
access to [ by ]+
完整的语法是:
olcAccess:
::= to
[by ]+
::= |
[dn[.]= | dn.=]
[filter=] [attrs=]
::= regex | exact
::= base | one | subtree | children
::= [val[.]=] | ,
::= | entry | children
::=
| [anonymous | users | self
| dn[.]= | dn.=]
[dnattr=]
[group[/[/][.]]=]
[peername[.]=]
[sockname[.]=]
[domain[.]=]
[sockurl[.]=]
[set=]
[aci=]
::= [self]{|}
::= none | auth | compare | search | read | write
::= {=|+|-}{w|r|s|c|x|0}+
::= [stop | continue | break]

1.1.1.1 what
####################################################################
几种写法:
》》to 所有目录,这和dn=.写法是相同的
》》to dn[.]= 用正则表达式来匹配,basic-style不明白是什么意思
》》to dn.= scope可以是base, one, subtree, or children,
base就是要匹配目录是一样的,one匹配目标父亲目录是这里定义的DN。subtree匹配所有以这里定义的DN为root的子树。
children和subtree类似,只是少了和定义的DN相同的目录本身。
如:
0: o=suffix
1: cn=Manager,o=suffix
2: ou=people,o=suffix
3: uid=kdz,ou=people,o=suffix
4: cn=addresses,uid=kdz,ou=people,o=suffix
5: uid=hyc,ou=people,o=suffix

Then:
dn.base="ou=people,o=suffix" match 2;
dn.one="ou=people,o=suffix" match 3, and 5;
dn.subtree="ou=people,o=suffix" match 2, 3, 4, and 5; and
dn.children="ou=people,o=suffix" match 3, 4, and 5.

》》to filter=
to dn.one="ou=people,o=suffix" filter=(objectClass=person)这两种作用是相同的

在what中还可以加对attribute的限制
attrs=
注意如果要增加、删除一个目录,需要有写该目录的attribute权限,同时还要有写该目录的父目录的children属性的权限。

1.1.1.2 who
Specifier Entities

  • All, including anonymous and authenticated users
    anonymous Anonymous (non-authenticated) users
    users Authenticated users
    self User associated with target entry
    dn[.]= Users matching a regular expression
    dn.= Users within scope of a DN

1.1.1.3 accesslevel
Level Privileges Description


none =0 no access
auth =x needed to bind
compare =cx needed to compare
search =scx needed to apply search filters
read =rscx needed to read search results
write =wrscx needed to modify/rename
每个级别的权限都包含了它所有以下级别的权限的

1.1.1.4 control
stop | continue | break

1.1.1.5 例子
olcAccess: to
by self write
by anonymous auth
by
read

olcAccess: to dn.subtree="dc=example,dc=com" attr=homePhone
by self write
by dn.children=dc=example,dc=com" search
by peername.regex=IP:10..+ read
olcAccess: to dn.subtree="dc=example,dc=com"
by self write
by dn.children="dc=example,dc=com" search
by anonymous auth

####################################################################

1.1.2

1.1.3 idletimeout
以秒为单位,如果idle就强制断开client链接,默认是0,则关闭这个功能。

1.1.4 include
#如果需要包含其他文件,这个要小心使用,注意嵌套include
在openldap的安装目录中的schema目录中可以看到以下几个安装后自带的文件,不要去修改,如果要自定义属性类型,
自己创建文件,并在slapd.conf文件中include进来就可以了。
File Description

core.schema OpenLDAP core (required)
cosine.schema Cosine and Internet X.500 (useful)
inetorgperson.schema InetOrgPerson (useful)
misc.schema Assorted (experimental)
nis.schema Network Information Services (FYI)
openldap.schema OpenLDAP Project (experimental)

1.1.5 loglevel
#LDAP记录日志的级别
####################################################################
Debugging Levels Level Description

-1 enable all debugging
0 no debugging
1 trace function calls
2 debug packet handling
4 heavy trace debugging
8 connection management
16 print out packets sent and received
32 search filter processing
64 configuration file processing
128 access control list processing
256 stats log connections/operations/results
512 stats log entries sent
1024 print communication with shell backends
2048 print entry parsing debugging
####################################################################

1.1.6 objectclass
定义一个对象类,略。

1.1.7 referral
如果slapd没办法找到数据库的时候转到URI

1.1.8 sizelimit
设置一次search最多返回的entries数

1.1.9 timelimit
以秒为单位,设置一次查询最多等待多少秒,超过时间,则返回,并表示超时。

1.2 backend设置
backend

type的全部类型包括
Types Description

bdb Berkeley DB transactional backend
dn***v DNS SRV backend
hdb Hierarchical variant of bdb backend
ldap Lightweight Directory Access Protocol (Proxy) backend
ldbm Lightweight DBM backend
meta Meta Directory backend
monitor Monitor backend
passwd Provides read-only access to passwd(5)
perl Perl Programmable backend
shell Shell (extern program) backend
sql SQL Programmable backend

1.3 General Database 设置
1.3.1 database
这里的type和backend是相同的
1.3.2 readonly { on | off }
1.3.3 replica
设置复制数据库所在位置
replica uri=ldap[s]://[:] | host=[:]
[bindmethod={simple|sasl}]
["binddn="]
[saslmech=]
[authcid=]
[authzid=]
[credentials=]

如果port没有写,是LDAP port默认的389 or 636。
slurpd负责复制数据库

1.3.4 replogfile
如果有设置复制数据库,这里设置日志文件,slapd要记录数据库的改变。这个日志文件由slapd负责写,由slurpd读。
如果没有设置复制数据库,slurpd没有启动,也可以用这个文件来记录事务日志。

1.3.5 suffix
#设置目录后缀,还可以加更多的dc,如"dc=eng,dc=uni,dc=edu,dc=eu"
suffix "dc=example,dc=com"

1.3.6 rootdn
#设置目录管理员
rootdn "cn=Manager,dc=example,dc=com"

1.3.7 rootpw
rootpw secret
如果你不想把密码明文地写在这里,可以
rootpw {SSHA}ZKKuqbEKJfKSXhUbHG3fG8MDn9j1v4QN
格式是按RFC 2307 form,可以用命令slappasswd产生,如:slappasswd -s password

1.3.8 syncrepl复制引擎
说明此数据库是备份数据库,基于LDAP Content Synchronization protocol与主数据库同步的。
syncrepl rid= 长度不能超过3位
provider=ldap[s]://[:port] 表明其主数据库地址
[type=refreshOnly|refreshAndPersist]
[interval=dd:hh:mm:ss]
[retry=[

转载于:https://blog.51cto.com/13791715/2310360

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: compat-openldap.x86_64 是一个兼容性的OpenLDAP软件包,x86_64代表该软件包适用于64位系统。OpenLDAP是一种开源的轻量级目录访问协议(LDAP)实现,用于管理和访问分布式目录信息服务(Directory Information Services,简称DIT)。 在Linux操作系统中,安装compat-openldap.x86_64可以使用各种LDAP工具和应用程序。它提供一组兼容OpenLDAP协议的API和库文件,使得老版本的OpenLDAP库与新版本的应用程序可以正常工作。这对于某些旧版软件或应用程序来说是非常重要的,因为更新的OpenLDAP库可能无法与它们兼容。 要下载并安装compat-openldap.x86_64软件包,您需要以下几个步骤: 1. 打开终端或命令行界面,确保您具有管理员或root权限。 2. 使用适用于您的Linux操作系统的包管理工具。例如,对于基于Debian的系统(如Ubuntu),可以使用apt-get命令;对于基于Red Hat的系统(如CentOS),可以使用yum命令。 3. 运行相应的命令,并指定要安装的软件包名称compat-openldap.x86_64。 4. 等待软件包下载和安装完成。 5. 安装完成后,您可以使用包含在compat-openldap.x86_64中的LDAP工具和应用程序。 通过安装compat-openldap.x86_64,您可以确保您的系统能够兼容旧版的OpenLDAP,并且您可以正常使用相关的LDAP功能和应用程序。 ### 回答2: compat-openldap.x86_64是一个用于CentOS或Red Hat Enterprise Linux (RHEL)操作系统的软件包。它提供了兼容旧版本OpenLDAP的库和工具,以便与其他应用程序无缝集成。 在CentOS或RHEL中下载并安装compat-openldap.x86_64软件包非常简单。您可以按照以下步骤进行操作: 1. 打开终端或命令行界面,并使用root用户或具有sudo权限的用户登录系统。 2. 输入以下命令以更新软件包管理器: ``` yum update ``` 3. 输入以下命令以搜索compat-openldap.x86_64软件包: ``` yum search compat-openldap.x86_64 ``` 4. 根据搜索结果选择适当的软件包,并记录下软件包的完整名称和版本号。 5. 输入以下命令以安装所选软件包(请将<软件包名称>替换为您选择的软件包的完整名称和版本号): ``` yum install <软件包名称> ``` 6. 确认安装过程中提示的相关依赖项,并输入“y”来继续安装。 7. 安装完成后,您可以使用compat-openldap.x86_64提供的库和工具来集成到您的应用程序中。 请注意,以上步骤仅适用于CentOS和RHEL操作系统。在其他操作系统上,可能会有不同的命令和方法来下载和安装compat-openldap.x86_64软件包。 ### 回答3: compat-openldap.x86_64是针对64位操作系统的一个开放源码的LDAP(轻量级目录访问协议)软件包。LDAP是一种轻量级的网络协议,用于访问和维护分布式目录服务。它支持在多个计算机上存储和管理大量结构化数据,比如用户、组、设备等。 如果你需要下载compat-openldap.x86_64软件包,你可以使用你所使用的操作系统的软件包管理器。不同的Linux发行版可能有不同的软件包管理工具,例如在Ubuntu上,你可以使用apt-get命令,CentOS上可以使用yum命令。 你可以执行类似如下的命令来下载compat-openldap.x86_64软件包: 在Ubuntu上: sudo apt-get install compat-openldap 在CentOS上: sudo yum install compat-openldap 在执行这个命令之前,你可能需要确保软件包管理器已经配置正确并能够访问到软件包的源。如果软件包管理器无法找到或者无法下载到该软件包,你可以尝试更新软件包的源,或者在互联网上搜索该软件包的其他下载来源。 在安装完成后,你就可以使用compat-openldap.x86_64软件包中的LDAP功能来访问和管理分布式目录服务了。你可以根据你的需求编写相应的代码或配置文件来调用LDAP的API,以实现用户认证、权限管理等功能。需要注意的是,使用LDAP需要一定的专业知识和经验,建议在开发或使用过程中参考相关文档和教程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值