您的位置:首页 > 其它

liunx服务使用(ldap 清凉级别访问协议)

2013-09-13 20:33 344 查看
ldap本人感觉挺有技术含量的,需要多多联系,对了声明一下本人在uplooking中学习过,所有出现uplooking字眼不要惊讶,知识都是我一点一点总结,写出来的,没有做任何抄袭。

ldap 清凉级别访问协议 用户集中管理
用户集中管理的软件
openldap nis网络信息服务 他是CS结构 比较麻烦 one dinectory windows的AD

-------------------------------------------------
open l dap 是一个协议 只要程序支持这个协议就都可以用 (里面的数据支持在AD里导入)
他的前身是dap 有一个致命的弱点 不支持tcp/ip协议

ldap的优势
1 他是一个协议
2 可以跨平台只要支持这个协议
3 只限于读多 写少 (读的比较快)

ldap仅仅限制于身份验证

ldap的数据存储结构 是树形结构根据域名来设计
com

uplooking
| |
中国 美国
| |
北京 州

ldp有自己的名词 比如:

dc----------(地里位置 域组件)
ou---------- (组织单元比作一个容器可以存放东西) 放的是对象
dn -----------(区别名称 )
属性----对象的属性
所有的属性 在一块成为属性类
所有的对象 在一块成为对象类
属性类是用来描述 对象类

生活环境中什么使用要用
1 客户端要登录的生活需要服务器验证 的 有: 网吧,大学的校园网络

ldap -------- 客户端

2 三个服务 ftp maill sshd 都需要身份验证, 可以在公共的一台服务器上验证他的三个身份验证

―――― ftp
ldap ―――― maill、
―――― sshd

--------------------------------------------
配置openldop

[root@xu chroot]# yum install openldap openldap-servers

openldap 协议包
openldap-servers 服务器端

[root@xu chroot]# ls /etc/openldap/ -----------配置文件
cacerts/ ldap.conf slapd.conf
DB_CONFIG.example schema/

ldap.conf -------------如果你作为客户端 这是客户端的配置文件
slapd.conf -------------这个是serVer 端的配置文件
schema/ -------------- 这个文件夹里都是架构模板文件 他可以帮我们生存对象类和属性类
里面有个nis.schema 可以满足我们的所有需求

vim nis.schema

定义属性 天书目录结构 描述信息
49 attributetype ( 1.3.6.1.1.1.1.2 NAME 'gecos'
50 DESC 'The GECOS field; the common name'
51 EQUALITY caseIgnoreIA5Match
52 SUBSTR caseIgnoreIA5SubstringsMatch
53 SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )

161 objectclass ( 1.3.6.1.1.1.2.0 NAME 'posixAccount'
162 DESC 'Abstraction of an account with POSIX attributes'
163 SUP top AUXILIARY
164 MUST ( cn $ uid $ uidNumber $ gidNumber $ homeDirectory )---------------我用这些属性来描述 posixAccount' 对象
165 MAY ( userPassword $ loginShell $ gecos $ description ) )
166

[root@www openldap]# cd /etc/openldap/
[root@xu openldap]# vim slapd.conf

5 include /etc/openldap/schema/core.schema ------------定义模板
6 include /etc/openldap/schema/cosine.schema
7 include /etc/openldap/schema/inetorgperson.schema
8 include /etc/openldap/schema/nis.schema

85 database bdb ----波克力 开发的数据库的意思
86 suffix dc=bj,dc=uplooking,dc=com" ----------------定义 dc区域
87 rootdn(区别名称) "cn=admin,dc=bj,dc=uplooking,bc=com"
rootpw 123--------------------(设置密码用俩个tab分割)

dn 就是区别这个的
张三 cn=张三 ou=it dc=bj dc=uplooking
cn=张三 ou=ka dc=bj dc= uplooking

97 directory /var/lib/ldap-------------ldap的数据库都在这里
100 index objectClass eq,pres -----------------索引 这些是用来作ldap 优化的
101 index ou,cn,mail,surname,givenname eq,pres,sub
102 index uidNumber,gidNumber,loginShell eq,pres
103 index uid,memberUid eq,pres,sub
104 index nisMapName,nisMapEntry eq,pres,sub

[root@xu openldap]# cp DB_CONFIG.example /var/lib/ldap/DB_CONFIG
[root@xu openldap]# ls /var/lib/ldap/ ------重启服后会在这里生成数据库 必须有DB_CONFIG这个文件
[root@localhost ~]# chown ldap /var/lib/ldap/DB_CONFIG ------必须要该
[root@xu openldap]# service ldap restart 重启服务

生成数据文件

useradd ldap1 设置密码
useradd ldap2 设置密码
useradd ldap3 设置密码

[root@xu openldap]# grep ldap[1-3] /etc/passwd > /tmp/users.txt --------------提取出用户和组信息
[root@xu openldap]# grep ldap[1-3] /etc/group > /tmp/groups.txt --------------提取出用户和组信息

[root@xu migration]# cd /usr/share/openldap/migration/ ------------这里的的东西可以帮我们声称数据库文件

vim migrate_common.ph

71 $DEFAULT_MAIL_DOMAIN = "bj.uplooking.com"; ------这里改成和服务器上一样的
72
73 # Default base
74 $DEFAULT_BASE = "dc=bj,dc=uplooking,dc=com";
75

[root@xu migration]# ./migrate_base.pl > /tmp/uplooling.ldif ----------------- ld i信息 f 格式 声称了ou 生成ldap主文件

里面就是ldap的格式

第一部分是最重要的 定级域
1 dn: dc=bj,dc=uplooking,dc=com
2 dc: bj
3 objectClass: top
4 objectClass: domain
5
36 dn: ou=People,dc=bj,dc=uplooking,dc=com
37 ou: People
38 objectClass: top
39 objectClass: organizationalUnit
40
41 dn: ou=Group,dc=bj,dc=uplooking,dc=com
42 ou: Group
43 objectClass: top
44 objectClass: organizationalUnit
45

有了ou 有对象了 里面的数值没有还

用导出的文件生成数据库数据

[root@xu migration]# ./migrate_passwd.pl /tmp/users.txt > /tmp/users.ldif ------------这里的所有内容只是一个用户的信息
[root@xu migration]# ./migrate_group.pl /tmp/groups.txt > /tmp/groups.ldif -----------------------------这里是组的信息

导入到数据库去
这的密码是admin的密码
ldapadd -x -D "cn=admin,dc=bj,dc=uplooking,dc=com" -w 123 -f /tmp/uplooling.ldif ------导入域进去
ldapadd -x -D "cn=admin,dc=bj,dc=uplooking,dc=com" -w 123 -f /tmp/groups.ldif ----------导入用户信息
ldapadd -x -D "cn=admin,dc=bj,dc=uplooking,dc=com" -w 123 -f /tmp/users.ldif ---------导入用户信息
u
信息的文件,注 uplooking.ldif 必须最先导入。
-x 简单验证
-D 指定身份
-W 提示输入口令

ldapsearch -x -w 123 -h 127.0.0.1 -D "cn=admin,dc=bj,dc=uplooking,dc=com" -b "dc=bj,dc=uplooking,dc=com" -----检查

ssh 192.168.1.113 -X 不加X只能悄命令 加X 可以开启图形

客户端 用 系统-- 管理-- 验证 用户信息 设置ldap
[root@xu migration]# system-config-authentication ----配置ldap

登录 测试 su - test1

------------------------------------------------------------
每次添加 转换方法

[root@xu openldap]# cd /usr/share/openldap/migration/

用 ldapadd
ldappsearch 太麻烦

用 用户管理工具
WEB
phpLDAPadmin
LAM

---------------------------
phpLDAPadmin

yum install php-ldap -----------ldap和php连接的包
[root@xu Desktop]# tar -xvf phpldapadmin-1.2.0.4.tgz ----解压
[root@xu ldap]# mv phpldapadmin-1.2.0.4 /var/www/html/ldap
[root@xu ldap]# service httpd restart`

登录
firefox http://localhost/ldap
[root@xu ldap]# cd /var/www/html/ldap/config/
[root@xu config]# cp config.php.example config.php ---修改配置文件

---------------------------
apache 和ldap 的结合

[root@xu Desktop]# yum install mod_authz_ldap

[root@xu Desktop]# vim /etc/httpd/conf/httpd.conf
[root@xu Desktop]# ls /etc/httpd/modules/mod_authz_ldap.so 添加了这个模块
vim /etc/httpd/conf.d/authz_ldap.conf--------------------------配置文件

5
6 LoadModule authz_ldap_module modules/mod_authz_ldap.so
7
8 <IfModule mod_authz_ldap.c>
9 <Directory "/var/www/html/">
10 AuthzLDAPMethod ldap
11 AuthzLDAPServer 192.168.1.113
12 authzldapuserbase ou=people,dc=bj,dc=uplooking,dc=com
13 AuthzLDAPUserKey uid
14 AuthzLDAPUserScope base
15 AuthType basic
16 authname "test"
17 require valid-user
18 </directory>
19
20 # <Location /private>
21 # AuthzLDAPEngine on

service httpd restart 重启服务

本文出自 “history_xcy” 博客,请务必保留此出处http://historys.blog.51cto.com/7903899/1296711
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐