Linux的LDAP认证服务器的配置及客户端pam网络验证实例
1】 LDAP简介
LDAP(Lightweight Directory Access Protocol) 代表轻量级目录访问协议
LDAP 是一种非关系型数据库
LDAP 可扩展性和灵活性良好 安装和配置简单
【2】 几个重要的概念
dn : 一条记录的位置
dc : 一条记录的所属区域
ou : 一条记录的所属组织
cn/uid: 一条记录的名字/ID
【3】 LDAP数据添充原理
把一个庞大的学生档案放到LDAP里 具体步骤:
1】 建立一个"dc=ourschool,dc=org“的树根" 通过编辑"slapd.conf"来实现
2】 建立18个系分别是
dnu=computer,dc=ourschool,dc=org
dnu=film,dc=ourschool,dc=org
...
3】 在每个系建立专业 如
dnu=Linux,ou=computer,dc=ourschool,dc=org
...
4】 加学生
dn:cn=xiaoming,ou=linux,ou=computer,dc=ourschool,dc=org
5】 学生的详细信息
dn:cn=xiaoming,ou=linux,ou=computer,dc=ourschool,dc=org
objectClass: organizationalPerson
cn:xiaoming
cn:小明
sn:小明
description:a good boy
(以上是一条记录的信息,如果把他保存成LDIF文件,可以导入到LDAP数据库中)
【4】 搭建LDAP认证服务器
1】 安装服务器软件
yum -y install openldap openldap-servers
2】 编译服务器端配置文件(acl 与ldap配合,实现访问控制)
vim /etc/openldap/slapd.conf
access to *
by * read
by * auth
access to *
by self write
database bdb
suffix "dc=example,dc=com"
rootdn "cn=admin,dc=example,dc=com"
rootpw 123456
# Mode 700 recommended. (默认LDAP存放数据的目录 权限:700)
directory /var/lib/ldap
3】利用脚本创建OU,并初始化LDAPS
a】 vim /usr/usr/share/openldap/migration/migrate_common.ph
71:$DEFAULT_MAIL_DOMAIN = "example.com";
74:$DEFAULT_BASE = "dc=example,dc=com";
b】 /usr/share/openldap/migration/migrate_base.pl > /tmp/example.ldif
c】 删掉 example.ldif 中多余的选项 (空行不能省略)
cat /tmp/example.ldif
dn: dc=example,dc=com
dc: example
objectClass: top
objectClass: domain
dn: ou=People,dc=example,dc=com
ou: People
objectClass: top
objectClass: organizationalUnit
dn: ou=Group,dc=example,dc=com
ou: Group
objectClass: top
objectClass: organizationalUnit
d】创建并初始化
slapadd -vl /tmp/example.ldif
生成信息:
bdb_db_open: Warning - No DB_CONFIG file found in directory
/var/lib/ldap: (2)
Expect poor performance for suffix dc=uplooking,dc=com.
added: "dc=example,dc=com" (00000001)
added: "ou=People,dc=example,dc=com" (00000002)
added: "ou=Group,dc=example,dc=com" (00000003)
e】 解决上步警告
cp /etc/openldap/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
4】 启动LDAP服务
a】 chown -R ldap /var/lib/ldap
若不改权限 启动失败
b】 service ldap start
或
/etc/init.d/ldap start
c】 netstat -tunlp | grep :389
验证 服务监听389端口
5】 安装图形管理程序 phpldapadmin
a】yum -y install httpd php php-ldap
b】 service httpd restart
c】 tar zxvf phpldapadmin-1.2.0.4.tgz -C /var/www/html/
d】 cd /var/www/html/phpldapadmin-1.2.0.4
e】 vim config/config.php.example config/config.php
f】 firefox http://localhost/phpldapadmin-1.2.0.4.tgz
g】 输入用户名 密码登录
cn=admin,dc=example,dc=com
123456
6】 以上为LDAP服务器的通用配置