CentOS 5.5 安装记录 - (7) LDAP安装和基本配置

现在试试安装 LDAP (openLDAP)。

1. 软件安装:

yum -y install openldap openldap-clients openldap-servers nss_ldap samba samba-client openssl mod_ssl php-ldap php-pdo php-cli php-common perl-LDAP smbldap-tools perl-Digest-SHA1 perl-Digest-SHA perl-Unicode-String perl-Unicode-Map8 perl-Unicode-Map perl-Unicode-MapUTF8 perl-Jcode


这里安装的软件挺多的,把这一行逐个字母敲进去,显然很不合理。我一般的做法是,把这些语句,特别是网上资料有现成的命令,复制粘贴到 Notepad++ 上,保存为 sh 文件,然后用 psftp 上传到 /bin, 再运行。

[img]http://dl.iteye.com/upload/attachment/367791/70e07851-c3b9-3fe6-9cba-3ae72970a1ed.png[/img]


[img]http://dl.iteye.com/upload/attachment/367793/fb8fedc2-840d-3a7f-8d68-54a3f81d271a.png[/img]

安装的软件有 38MB大小。

2. 配置 openldap

先备份配置文件:
# cp /etc/ldap.conf /etc/ldap.conf.orig
# cp /etc/nsswitch.conf /etc/nsswitch.conf.orig
# cp -R /etc/openldap /etc/openldap.orig


(1)修改 slapd.conf

# nano /etc/openldap/slapd.conf

我安装的时候设定 Centos 机器的主机名是: server1.example.com 这里就按照这个域名来配置:

[img]http://dl.iteye.com/upload/attachment/367795/86f6b93d-6a97-31f1-9cf6-33e6d868269e.png[/img]

先保存和退出。

(2)生成 rootpw

输入命令
#/usr/sbin/slappasswd

按提示输入我自己的密码 2次,就会产生一串字符:

[img]http://dl.iteye.com/upload/attachment/367797/b6631ff9-178a-3a05-bf79-1cba9d0899f1.png[/img]

用笔把这串字符记下来吧,呵呵。我是在 putty 操作的,可以简单一点,用鼠标选定这串字符,然后打开 slapd.conf

# nano /etc/openldap/slapd.conf

找到 rootpw 那一行,回车,然后,点一下鼠标右键,刚才那串字符就粘贴上去了。然后,在字符串前加上 rootpw

[img]http://dl.iteye.com/upload/attachment/367799/72221a62-7be3-3d9c-be46-7250c7d5c4d0.png[/img]

保存,退出。

(3)生成 DB_CONFIG

# cp /etc/openldap/DB_CONFIG.example /var/lib/ldap/DB_CONFIG


然后授予拥有权 ownership
# chown -R ldap:ldap /var/lib/ldap
# chmod 700 /var/lib/ldap


(4)设置开机启动

# chkconfig --levels 235 ldap on


现在启动:
 /etc/init.d/ldap start


[img]http://dl.iteye.com/upload/attachment/367801/1982ff2b-e772-34a0-a756-fbe6faeef559.png[/img]


3. 添加记录

(1)初始化记录文件
用 Notepad++ 编辑一个 rootinit.ldif 文件,内容如下:
dn: dc=example,dc=com
dc: example
o: example.com
description: Root LDAP entry for example.com
objectClass: top
objectClass: dcObject
objectClass: organization


保存,退出。

[img]http://dl.iteye.com/upload/attachment/368710/aa83aa7f-a8ae-3630-b57e-f735142997ce.png[/img]

(2)ou 记录文件
用 Notepad++ 编辑一个 ou1.ldif 文件,内容如下:
dn: ou=People,dc=example,dc=com
ou: People
objectClass: organizationalUnit

dn: ou=Groups,dc=example,dc=com
ou: Groups
objectClass: organizationalUnit

dn: ou=Hosts,dc=example,dc=com
ou: Hosts
description: All hosts in example.com
objectClass: organizationalUnit


保存,退出。

[img]http://dl.iteye.com/upload/attachment/368716/60df4eef-ac4c-38f5-b91e-2df155923c26.png[/img]


(3)在Centos机器建一个临时文件夹
# mkdir /home/tmp


(4)上传 ldif 文件

[img]http://dl.iteye.com/upload/attachment/368712/25c2a44a-db95-3976-a563-71344264959c.png[/img]

(5)导入
使用 ldapadd 导入 ldif 文件:

# ldapadd -x -D "cn=Manager,dc=example,dc=com" -W -f  /home/tmp/rootinit.ldif
# ldapadd -x -D "cn=Manager,dc=example,dc=com" -W -f /home/tmp/ou1.ldif


[img]http://dl.iteye.com/upload/attachment/368714/47b7f78c-c248-3690-9a79-da66c1e63954.png[/img]

(6)查看已有记录

# ldapsearch -x -b 'dc=example,dc=com'


[img]http://dl.iteye.com/upload/attachment/368718/f64d52f6-4354-3ec6-88aa-ec78b43313d8.png[/img]

4. 清空(删除)记录

清空已输入的记录是初学者肯定遇到的。我在添加记录过程中,多次出现错误,所以在网上找删除已有记录的办法,呵呵,删除多次添加多次,才大概有点经验。

(1)先停止 ldap
(2)删除 /var/lib/ldap 下的文件,但保留 DB_CONFIG 文件。如果该目录下文件全部删除了,需要在复制一份 DB_CONFIG 到目录。
# cp /etc/openldap/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

(3)该目录授权到 ldap
(4)重启 ldap

[img]http://dl.iteye.com/upload/attachment/368720/fbe8da91-763a-3b20-81cd-3f6564bd5703.png[/img]


5. 安装配置 phpldapadmin

(1)安装
# yum -y install phpldapadmin

(2)配置
其配置文件为 /usr/share/phpldapadmin/config/config.php
我没有修改,保留原来设定。

修改 /etc/httpd/conf.d/phpldapadmin.conf

# nano /etc/httpd/conf.d/phpldapadmin.conf

[img]http://dl.iteye.com/upload/attachment/368722/1e9ca20f-bdde-366b-8bb4-58960520a4c2.png[/img]

保存退出。然后重启 httpd:

# /etc/init.d/httpd restart


(3)登录
现在在浏览器就可以打开 phpldapadmin

[img]http://dl.iteye.com/upload/attachment/368724/39c680f8-874a-3327-8f5d-2256b9b8c8cd.png[/img]


======================================================================

以上是一个配置过程,中间遇到许多问题,但最后也算完成基本配置。到晚上,在百度搜到多篇很好的中文教程,细细阅读,发现自己原来有很多模糊的理解,需要再尝试。

(1)先清空所有的输入
停止 ldap,删除 /var/lib/ldap 下文件仅保留 DB_CONFIG, 授权。
修改 /etc/openldap/slapd.conf 文件, 把 rootdn 改为:
rootdn "cn=root,dc=example,dc=com"

保存后,重启 ldap。

(2)编辑几个 ldif 文件,文件名和内容如下:


[img]http://dl.iteye.com/upload/attachment/369322/3bda948b-243c-3bb3-8985-087de2703fe5.png[/img]

[img]http://dl.iteye.com/upload/attachment/369324/91e38d1e-7674-30f5-8362-ce30424b3da4.png[/img]

[img]http://dl.iteye.com/upload/attachment/369326/28b36251-2c87-3ac0-837f-5187630d215d.png[/img]

[img]http://dl.iteye.com/upload/attachment/369328/03356c66-9fc2-3394-966b-7ad917f05bf6.png[/img]

然后用 psftp 上传到 /home/tmp。

用 ldapadd 逐个导入这些 ldif 文件:

# ldapadd -x -D "cn=root,dc=example,dc=com" -W -f /home/tmp/init1.ldif

# ldapadd -x -D "cn=root,dc=example,dc=com" -W -f /homr/tmp/ou1.ldif

# ldapadd -x -D "cn=root,dc=example,dc=com" -W -f /home/tmp/wgroup1.ldif

# ldapadd -x -D "cn=root,dc=example,dc=com" -W -f /home/tmp/user1.ldif


用 ldapsearch 查看已有的输入:

# ldapsearch -x -b "dc=example,dc=com"


(3)修改 单个用户密码

修改用户 John 的密码:
# ldappasswd -x -D "cn=root,dc=example,dc=com" -W "uid=John,ou=People,dc=example,dc=com" -S
New password:
Re-enter new password:
Enter LDAP Password:

New password 和 Re-enter new password 就是输入2次 John 的新密码,而 Enter LDAP Password 则输入 LDAP 的系统密码,就是我们前面用 slappasswd 所建立的密码。

修改用户 ldapadmin 的密码:
# ldappasswd -x -D "cn=root,dc=example,dc=com" -W "uid=ldapadmin,ou=People,dc=example,dc=com" -S
New password:
Re-enter new password:
Enter LDAP Password:


完成后,# ldapsearch -x -b "dc=example,dc=com" 查看一下,就发现 用户的密码已经改变:

[img]http://dl.iteye.com/upload/attachment/369330/292faa3e-e8de-39f2-a118-75b02699efcb.png[/img]


======================================================================

参考资料:

http://blog.javachap.com/index.php/installing-openldap-on-centos/

http://www.syntaxtechnology.com/2010/05/openldap-on-centos-5-4-part-4-the-data/

http://www.howtoforge.com/ldap-user-authentication-on-centos-5.x

http://www.productionmonkeys.net/guides/ldap-server/openldap-installation

http://www.syntaxtechnology.com/2010/05/openldap-on-centos-5-4-part-4-the-data/

http://www.server-world.info/en/note?os=CentOS_5&p=ldap


很详细的中文 openLDAP 配置教程
http://zhumeng8337797.blog.163.com/blog/#m=0



:-
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值