OpenLDAP的安装配置 | |
| |
来源: ChinaUnix博客 日期: 2007.02.27 15:24 (共有条评论) 我要评论 | |
OpenLDAP的安装配制 主页: http://www.openldap.org/ 文档: OpenLDAP Admin Guide Manual Pages bf 当前版本: OpenLDAP 2.3.31 3.1 安装 当前(Debian/testing)提供的OpenLDAP的版本是: bf 2.3.25-1 $ sudo aptitude install slapd ldap-utils Reading package lists... Done Building dependency tree... Done Reading extended state information Initializing package states... Done Reading task descriptions... Done Building tag database... Done The following NEW packages will be automatically installed: db4.2-util libiodbc2 libldap-2.3-0 The following NEW packages will be installed: db4.2-util ldap-utils libiodbc2 libldap-2.3-0 slapd 0 packages upgraded, 5 newly installed, 0 to remove and 0 not upgraded. Need to get 1791kB of archives. After unpacking 4502kB will be used. Do you want to continue? [Y/n/?]Y 其中: slapd 提供LDAP服务 ldap-utils 提供客户工具 安装完毕后, 其配制文件位于/etc/ldap/目录下: tony@tonybox:~$ ls -l /etc/ldap/ total 16 -rw-r--r-- 1 root root 333 2006-06-19 17:56 ldap.conf drwxr-xr-x 2 root root 4096 2006-12-29 11:33 schema -rw------- 1 root root 4351 2006-12-29 11:33 slapd.conf /etc/ldap/schema/目录下为schema文件 $ ls /etc/ldap/schema/ -l total 208 -rw-r--r-- 1 root root 8231 2006-11-11 05:39 corba.schema -rw-r--r-- 1 root root 20591 2006-11-11 05:39 core.ldif -rw-r--r-- 1 root root 19762 2006-11-11 05:39 core.schema -rw-r--r-- 1 root root 74080 2006-11-11 05:39 cosine.schema -rw-r--r-- 1 root root 1553 2006-11-11 05:39 dyngroup.schema -rw-r--r-- 1 root root 6360 2006-11-11 05:39 inetorgperson.schema -rw-r--r-- 1 root root 13984 2006-11-11 05:39 java.schema -rw-r--r-- 1 root root 2471 2006-11-11 05:39 misc.schema -rw-r--r-- 1 root root 7723 2006-11-11 05:39 nis.schema -rw-r--r-- 1 root root 3391 2006-11-11 05:39 openldap.ldif -rw-r--r-- 1 root root 1601 2006-11-11 05:39 openldap.schema -rw-r--r-- 1 root root 19689 2006-11-11 05:39 ppolicy.schema -rw-r--r-- 1 root root 2968 2006-11-11 05:39 README 3.2 启动与停止 服务启动 $ sudo /etc/init.d/slapd start 服务停止 $ sudo /etc/init.d/slapd stop 服务重启 $ sudo /etc/init.d/slapd restsart 可以通过以下命令查看slapd是否启动 $ ps aux |grep slapd openldap 6406 0.0 0.2 14608 2764 ? Ssl 13:27 0:00 /usr/sbin/slapd -g openldap -u openldap tony 6417 0.0 0.0 4892 752 pts/1 R+ 13:28 0:00 grep slapd 3.3 配制 比如说我们的域名是debsir.org, 在配制文件/etc/ldap/slapd.conf中可以做如下调整 database bdb #设置使用的资料库 suffix "dc=debsir,dc=org" #设置目录后缀 rootdn "cn=admin,dc=debsir,dc=org" #设置目录管理员 directory "/var/lib/ldap" #设置数据库路径 rootpw secret #设置管理密码 这里用了明文的“secret”密码。这样设置不安全,如果需使用加密的密码,则可以借助slappasswd 命令 比如: $ slappasswd -h {MD5} New password: Re-enter new password: {MD5}4QrcOUm6Wau+VuBX8g+IPg== 其中使用-h 选项用于指定加密方式, 它支持{CRYPT}, {MD5}, {SMD5}, {SSHA}, 和 {SHA} 方式 然后修改/etc/ldap/slapd.conf 中的rootpw 行为: rootpw {MD5}4QrcOUm6Wau+VuBX8g+IPg== 修改后,需要重启slapd服务 $ sudo /etc/init.d/slapd restsart 这时可以使用客户端工具ldapsearch连接服务器查看目录信息: ~$ ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts 如果命令执行成功,返回一些信息,则说明服务器正常运行了 # extended LDIF # # LDAPv3 # base with scope baseObject # filter: (objectclass=*) # requesting: namingContexts # # dn: namingContexts: dc=debsir,dc=org # search result search: 2 result: 0 Success # numResponses: 2 # numEntries: 1 或者 $ ldapsearch -x -b dc=debsir,dc=org # extended LDIF # # LDAPv3 # base with scope subtree # filter: (objectclass=*) # requesting: ALL # # debsir.org dn: dc=debsir,dc=org objectClass: top objectClass: dcObject objectClass: organization o: debsir.org dc: debsir # admin, debsir.org dn: cn=admin,dc=debsir,dc=org objectClass: simpleSecurityObject objectClass: organizationalRole cn: admin description: LDAP administrator # search result search: 2 result: 0 Success # numResponses: 3 # numEntries: 2 如果启动不成功,它会提示一些出错信息,多数是slapd.conf配置出错。回头仔细核查一下配置文档。 3.4 客户端配置文档 客户端配置文档是ldap.conf。该文档相当简单,其实不用配置也能正常操作。 BASE dc=it, dc=com #设置目录起点 URI ldap://localhost ldap://localhost:666 3.5 数据录入 定义一个组织单元 创建文件group.ldif,内容如下: dn: ou=people,dc=debsir,dc=org objectClass: organizationalUnit ou: people 创建用户 创建文件person.ldif,内容如下: dn: cn=tony,ou=people,dc=debsir,dc=org objectClass: inetOrgPerson objectClass: top cn: tony sn: an givenName: an displayName: Tony an mail: etony@tom.com postalCode: 330005 telephoneNumber: 12345678 mobile: 12345678912 homePhone: 9999999 title: System Administrator postalAddress: Guiyang, China * dn唯一地确定了这个对象的位置 * objectClass确定了这个对象所具有的属性 * objectClass可以有多个 注意每行后面不要留有空格。 3. 将信息添加到数据库 $ ldapadd -x -D cn=admin,dc=debsir,dc=org -W -f group.ldif Enter LDAP Password: adding new entry "ou=people,dc=debsir,dc=org" tony@tonybox:~$ ldapadd -x -D cn=admin,dc=debsir,dc=org -W -f person.ldif Enter LDAP Password: adding new entry "cn=tony,ou=people,dc=debsir,dc=org" 其中 * x,使用简单认证方式 * -v,输出更多信息 * -D cn=admin,dc=cg,dc=com,dc=cn,使用此用户进行增加操作,显然用管理员比较好使,增加用户的权限不是谁都有的 * -W,提示输入密码,也可以在命令行里面给出密码,这时的参数应该是 -w password,这对于脚本来说比较方便 4.查看 然后可以用以下命令查看录入信息 ~$ ldapsearch -x -b cn=tony,ou=people,dc=debsir,dc=org # extended LDIF # # LDAPv3 # base with scope subtree # filter: (objectclass=*) # requesting: ALL # # tony, people, debsir.org dn: cn=tony,ou=people,dc=debsir,dc=org objectClass: inetOrgPerson objectClass: top cn: tony sn: an givenName: an displayName: Tony an mail: etony@tom.com postalCode: 330005 telephoneNumber: 12345678 mobile: 12345678912 homePhone: 9999999 title: System Administrator postalAddress: Guiyang, China # search result search: 2 result: 0 Success # numResponses: 2 # numEntries: 1 3.6 权限定义 access to attrs=userPassword,shadowLastChange by dn="cn=admin,dc=debsir,dc=org" write by anonymous auth by self write by * none access to * by dn="cn=admin,dc=debsir,dc=org" write by * read 3.7 常用操作 修改密码 $ ldappasswd -x -v -S -W -D cn=admin,dc=debsir,dc=org cn=tony,ou=people,dc=debsir,dc=org New password: Re-enter new password: Enter LDAP Password: ldap_initialize( ) Result: Success (0) * S 参数是要求命令提示用户输入两次新的密码,来确认密码更新,使用 -s newpasswd 可以在命令行中指定新密码。 删除对象 删除对象的命令则是 ldapdelete,也要指定两个对象,哪个对象删除和删除哪个对象 ldapdelete -x -v -W -D cn=admin,dc=debsir,dc=org cn=tony,ou=people,dc=debsir,dc=org 修改对象 $ ldapmodify -x -D cn=admin,dc=debsir,dc=org -W -f person.ldif Enter LDAP Password: modifying entry "cn=tony,ou=people,dc=debsir,dc=org" |
OpenLDAP的安装配置[转]
最新推荐文章于 2022-03-18 17:00:55 发布