debian下ldap服务器初始设置
1、安装
# apt-get install slapd ldap-utils migrationtools
2、配置slapd.conf
#加载相关条目
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/openldap.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/misc.schema
include /etc/ldap/schema/pureftpd.schema
include /etc/ldap/schema/samba3.schema
#密码存储格式
password-hash {SSHA}
#默认搜索dn
defaultsearchbase dc=freeoa,dc=net
#pid文件路径
pidfile /var/run/slapd/slapd.pid
#参数文件
argsfile /var/run/slapd/slapd.args
#日志记录等级
loglevel 8192
#加载相关模块
modulepath /usr/lib/ldap
moduleload back_hdb
moduleload back_monitor
#访问权限级别
access to dn.base=""
by * read
access to dn.subtree=cn=Monitor
by * read
access to attrs=userPassword,sambaPwdLastSet,sambaPwdMustChange,sambaPwdCanChange,shadowMax,shadowExpire
by dn.regex="uid=[^/]+/admin" write
by anonymous auth
by self write
by * none
access to attrs=sambaLmPassword,sambaNtPassword
by dn.regex="uid=[^/]+/admin" write
by anonymous auth
by self write
by * none
access to *
by dn.regex="uid=[^/]+/admin" =wrscx
by * read
#存储库的定义
database monitor
database hdb
cachesize 5000
mode 0600
#后缀
suffix "dc=freeoa,dc=net"
checkpoint 512 720
#定义管理员及其密码
rootdn "cn=admin,dc=freeoa,dc=net"
rootpw {SSHA}XRNNfje0M5mcggovT28YFwX6Q2WJQtAc
#索引的字段
index default sub
index uid,mail eq
index cn,sn,givenName,ou pres,eq,sub
index objectClass pres,eq
index uidNumber,gidNumber,memberuid eq
index roleOccupant eq
index sambaSID eq
index sambaPrimaryGroupSID eq
index sambaDomainName eq
#数据库路径
directory "/var/lib/ldap"
#记录上次修改信息
lastmod on
注:默认的'include'在安装时仅有如下一些:
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
但够日常使用。
database hdb
当然也可能是'bdb',视情况而定。
loglevel debug
或为‘8192’数字格式,具体参见slapd.conf(5)的man手册。
suffix "dc=freeoa,dc=net"
定义了顶级域。
rootdn "cn=admin,dc=freeoa,dc=net"
rootpw {SSHA}XRNNfje0dsgfdsgfgovT28YFwX6Q2WJQtAc
定义了最高管理的名称(admin)与{ssha}格式的密码,具体请通过'man slappasswd '来了解更多。
3、初始化ldap数据库
当然这种方法对重建ldap库也同样有用。
删除已经存在的库:将'/var/lib/ldap'目录下的内容全部删除。
启动openldap服务器,如果有报错的话,请查看日志,应该是缺少了相关条目。
初始化通过‘migrationtools’工具集来做,一般只需要对其做很简单的初始化即可。进入到'/usr/share/migrationtools'目录下,migrate_common.ph为其下脚本运行时的配置文件,我们将对它做修改。
# Default DNS domain
$DEFAULT_MAIL_DOMAIN = "padl.com";
# Default base
$DEFAULT_BASE = "dc=padl,dc=com";
将默认的'padl'改为'freeoa','com'改为'net',当然这是笔记的需要。
保存好后,执行'migrate_base.pl'可以看到有相关的输出,我们将其保存为base.ldif。下面我们将其导入来初始化ldap服务器。
# ldapadd -x -D "cn=admin,dc=freeoa,dc=net" -W -f base.ldif
它会提示你输入在sldap.conf文件中定义的最高用户的密码,成功会显示若干导入的信息,至此初始化完成。我们在其它机器上对其进行查证:
# ldapsearch -h192.168.16.6 -v -D 'cn=admin,dc=freeoa,dc=net' -W -x -b 'dc=freeoa,dc=net' -s sub
输入密码后,会将所有的条目输出的屏幕。
4、管理ldap服务器
在此页面上有多款ldap的管理工具,有客户端、web方式的,不过还是推荐用LDAP Account Manager,简单、实用。
# apt-get install slapd ldap-utils migrationtools
2、配置slapd.conf
#加载相关条目
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/openldap.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/misc.schema
include /etc/ldap/schema/pureftpd.schema
include /etc/ldap/schema/samba3.schema
#密码存储格式
password-hash {SSHA}
#默认搜索dn
defaultsearchbase dc=freeoa,dc=net
#pid文件路径
pidfile /var/run/slapd/slapd.pid
#参数文件
argsfile /var/run/slapd/slapd.args
#日志记录等级
loglevel 8192
#加载相关模块
modulepath /usr/lib/ldap
moduleload back_hdb
moduleload back_monitor
#访问权限级别
access to dn.base=""
by * read
access to dn.subtree=cn=Monitor
by * read
access to attrs=userPassword,sambaPwdLastSet,sambaPwdMustChange,sambaPwdCanChange,shadowMax,shadowExpire
by dn.regex="uid=[^/]+/admin" write
by anonymous auth
by self write
by * none
access to attrs=sambaLmPassword,sambaNtPassword
by dn.regex="uid=[^/]+/admin" write
by anonymous auth
by self write
by * none
access to *
by dn.regex="uid=[^/]+/admin" =wrscx
by * read
#存储库的定义
database monitor
database hdb
cachesize 5000
mode 0600
#后缀
suffix "dc=freeoa,dc=net"
checkpoint 512 720
#定义管理员及其密码
rootdn "cn=admin,dc=freeoa,dc=net"
rootpw {SSHA}XRNNfje0M5mcggovT28YFwX6Q2WJQtAc
#索引的字段
index default sub
index uid,mail eq
index cn,sn,givenName,ou pres,eq,sub
index objectClass pres,eq
index uidNumber,gidNumber,memberuid eq
index roleOccupant eq
index sambaSID eq
index sambaPrimaryGroupSID eq
index sambaDomainName eq
#数据库路径
directory "/var/lib/ldap"
#记录上次修改信息
lastmod on
注:默认的'include'在安装时仅有如下一些:
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
但够日常使用。
database hdb
当然也可能是'bdb',视情况而定。
loglevel debug
或为‘8192’数字格式,具体参见slapd.conf(5)的man手册。
suffix "dc=freeoa,dc=net"
定义了顶级域。
rootdn "cn=admin,dc=freeoa,dc=net"
rootpw {SSHA}XRNNfje0dsgfdsgfgovT28YFwX6Q2WJQtAc
定义了最高管理的名称(admin)与{ssha}格式的密码,具体请通过'man slappasswd '来了解更多。
3、初始化ldap数据库
当然这种方法对重建ldap库也同样有用。
删除已经存在的库:将'/var/lib/ldap'目录下的内容全部删除。
启动openldap服务器,如果有报错的话,请查看日志,应该是缺少了相关条目。
初始化通过‘migrationtools’工具集来做,一般只需要对其做很简单的初始化即可。进入到'/usr/share/migrationtools'目录下,migrate_common.ph为其下脚本运行时的配置文件,我们将对它做修改。
# Default DNS domain
$DEFAULT_MAIL_DOMAIN = "padl.com";
# Default base
$DEFAULT_BASE = "dc=padl,dc=com";
将默认的'padl'改为'freeoa','com'改为'net',当然这是笔记的需要。
保存好后,执行'migrate_base.pl'可以看到有相关的输出,我们将其保存为base.ldif。下面我们将其导入来初始化ldap服务器。
# ldapadd -x -D "cn=admin,dc=freeoa,dc=net" -W -f base.ldif
它会提示你输入在sldap.conf文件中定义的最高用户的密码,成功会显示若干导入的信息,至此初始化完成。我们在其它机器上对其进行查证:
# ldapsearch -h192.168.16.6 -v -D 'cn=admin,dc=freeoa,dc=net' -W -x -b 'dc=freeoa,dc=net' -s sub
输入密码后,会将所有的条目输出的屏幕。
4、管理ldap服务器
在此页面上有多款ldap的管理工具,有客户端、web方式的,不过还是推荐用LDAP Account Manager,简单、实用。