配置Linux目录服务器+LDAP
libcurl ldap用例
libcurl是一个常用的网络传输库,而LDAP(轻量目录访问协议)是一种用于访问和维护分布式目录信息的协议。
在许多应用程序中,常常需要使用libcurl来实现与LDAP服务器的通信,以便进行用户认证、查询用户信息等操作。
下面我们将介绍一些常见的libcurl与LDAP的用例。
1. 用户身份验证在许多网络应用中,用户需要进行身份验证才能使用服务。
而LDAP是一种常用的实现用户认证的服务,因此在实际开发中,常常需要使用libcurl与LDAP服务器进行通信来实现用户身份验证。
开发人员可以通过libcurl发送LDAP认证请求到服务器端,通过服务器端返回的响应判断用户身份是否合法。
2. 查询用户信息除了用户身份验证之外,有时候我们还需要查询用户的详细信息,比如尊称、电流新箱、通联方式号码等。
这时候,我们同样可以使用libcurl与LDAP服务器进行通信,发送查询请求并获取服务器端返回的用户信息。
3. 添加、修改、删除用户信息在一些管理系统中,管理员需要对用户信息进行管理,包括添加新用户、修改用户信息、删除用户等操作。
这时候可以利用libcurl与LDAP服务器进行通信,发送相应的操作请求即可实现对用户信息的管理操作。
4. SSL加密通信在使用libcurl与LDAP服务器进行通信时,为了保护通信内容的安全,常常需要使用SSL进行加密。
开发人员可以通过libcurl的SSL支持来实现与LDAP服务器的加密通信,保障数据传输的安全性。
5. 多服务器负载均衡在一些大型的系统中,可能会部署多个LDAP服务器来实现负载均衡和容灾备份。
开发人员可以通过libcurl发送请求到不同的LDAP服务器,以实现负载均衡和容灾备份。
总结在实际的开发过程中,libcurl与LDAP的结合应用非常广泛,不仅可以用于用户认证和用户信息的操作,还可以用于实现系统的负载均衡和容灾备份。
开发人员可以根据实际需求,灵活运用libcurl与LDAP,实现各种功能丰富的网络应用。
配置Linux使用LDAP用户认证的方法
配置Linux使⽤LDAP⽤户认证的⽅法我这⾥使⽤的是CentOS完成的LDAP⽤户管理,可能与⽹上的⼤部分教程不同,不过写出来了,那么是肯定能⽤的了,不过会有部分⽂件,忘指教。
这⾥使⽤的 OPENLdap 配合 CentOS7 完成的⽤户管理,需要配置 nssswitch 、pam 和 sssd 3个服务,需要先有⼀定的了解才能完成本⽂的配置。
基础配置#1.完成yum源的配置mkdir /root/backtar -Jcvf /root/back/yum.repos.d-`date '+(%Y.%m.%d_%H:%M:%S)'`.tar.xz /etc/yum.repos.d/rm -rf /etc/yum.repos.d/*curl -o /etc/yum.repos.d/CentOS-Base.repo /repo/Centos-7.repocurl -o /etc/yum,repos.d/CentOS-epel.repo /repo/epel-7.repoyum makecache1.安装必要软件yum -y install vim bash-completion openldap-servers openldap-clients nss-pam-ldapd sssdOPENLdap服务部分配置#初始化过程就不再过多赘述,详细查询《》。
1.⾸先停⽌数据库服务:systemctl stop slapd1.然后编辑⽂件:# ⾸先备份⽂件,以免⽆法复原mkdir /root/backtar -Jcvf /root/back/slapd.config-`date '+(%Y.%m.%d_%H:%M:%S)'`.tar.xz /etc/openldap/slapd.d/tar -Jcvf /root/back/slapd.data-`date '+(%Y.%m.%d_%H:%M:%S)'`.tar.xz /var/lib/ldap/# 然后再删除配置⽂件rm -rf /etc/openldap/slapd.d/*rm -rf /var/lib/ldap/*# 复制配置⽂件到临时⽬录mkdir /root/ldapcd /root/ldap1.编写slapd的配置⽂件。
Linux系统下安装配置 OpenLDAP + phpLDAPadmin
Linux系统下安装配置 OpenLDAP + phpLDAPadmin实验环境:操作系统:Centos 7.4服务器ip:192.168.3.41运行用户:root网络环境:InternetLDAP(轻量级目录访问协议)是一个能实现提供被称为目录服务的信息服务,也是一套用户认证体系系统;一般在大型企业、学校、政府单位使用的比较多,LDAP是由4部分组成,这4部分分别是slapd(独立LDAP守护进程)、slurpd(独立的LDAP更新复制守护进程)、LDAP协议库、工具软件和示例客户端(phpLDAPadmin),目录服务是一种特殊的数据库系统,用来存储用户信息的数据库,读写速度非常快,扩展性非常强,可以实现与地方系统直接对接整合起来统一管理用户信息。
LDAP说起来也不简单,但是ALDP在Linux应用范围是比较广泛的,如果想要深入的了解LDAP,建议去看下刘遄老师《Linux就该这么学》这本教程,里面解释的非常详细,也可以在百度输入此书名去官网看,想要在Linux部署还是推荐这本书去系统的学习,对初学者还是很有版本的,这篇文章搭建ldap+phpldapadmin也是在Linux环境下运行的,所以还是需要Linux基础才能看懂下面的配置步骤。
1、安装OpenLDAP[root@centos7 ~]# yum install openldap-servers openldap-clients -y[root@centos7 ~]# cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG [root@centos7 ~]# ll /var/lib/ldap/DB_CONFIG-rw-r--r--. 1 root root 845 Aug 1 10:04 /var/lib/ldap/DB_CONFIG[root@centos7 ~]# chown ldap. /var/lib/ldap/DB_CONFIG //授权配置文件[root@centos7 ~]# more /etc/passwd|grep ldapldap:x:55:55:OpenLDAP server:/var/lib/ldap:/sbin/nologin[root@centos7 ~]# systemctl start slapd.service //启动slapd服务[root@centos7 ~]# systemctl enable slapd.service //设置开机自动启动slapd服务2、设置OpenLDAP管理员密码[root@centos7 ~]# slappasswdNew password: //passwordRe-enter new password:{SSHA}d5pkA0TU6b+8/kEoMIxJ59QofCLV为“olcRootPW”指定上面生成的密码[root@centos7 ~]# vim chrootpw.ldifdn: olcDatabase={0}config,cn=configchangetype: modifyadd: olcRootPWolcRootPW: {SSHA}d5pkA0TU6b+8/kEokgQeMIxJ59QofCLV[root@centos7 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f chrootpw.ldifSASL/EXTERNAL authentication startedSASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF: 0modifying entry "olcDatabase={0}config,cn=config"3、导入基本模式[root@centos7 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif SASL/EXTERNAL authentication startedSASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF: 0adding new entry "cn=cosine,cn=schema,cn=config"[root@centos7 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif SASL/EXTERNAL authentication startedSASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF: 0adding new entry "cn=nis,cn=schema,cn=config"[root@centos7 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f/etc/openldap/schema/inetorgperson.ldifSASL/EXTERNAL authentication startedSASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF: 0adding new entry "cn=inetorgperson,cn=schema,cn=config"4、在LDAP DB上设置域名,生成目录管理器密码[root@centos7 ~]# slappasswdNew password:Re-enter new password:{SSHA}Oq61fgUFW9+ItZboTaW1+VbLuAYst7zw注意:下面配置文件这里得注意每一个属性:后必须有空格,但是值的后面不能有任何空格[root@centos7 ~]# vim chdomain.ldif# replace to your own domain name for "dc=***,dc=***" section# specify the password generated above for "olcRootPW" sectiondn: olcDatabase={1}monitor,cn=configchangetype: modifyreplace: olcAccessolcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read by dn.base="cn=Manager,dc=srv,dc=world" read by * nonedn: olcDatabase={2}hdb,cn=configchangetype: modifyreplace: olcSuffixolcSuffix: dc=srv,dc=worlddn: olcDatabase={2}hdb,cn=configchangetype: modifyreplace: olcRootDNolcRootDN: cn=Manager,dc=srv,dc=worlddn: olcDatabase={2}hdb,cn=configchangetype: modifyadd: olcRootPWolcRootPW: {SSHA}Oq61fgUFW9+ItZboTaW1+VbLuAYst7zwdn: olcDatabase={2}hdb,cn=configchangetype: modifyadd: olcAccessolcAccess: {0}to attrs=userPassword,shadowLastChange bydn="cn=Manager,dc=srv,dc=world" write by anonymous auth by self write by * none olcAccess: {1}to dn.base="" by * readolcAccess: {2}to * by dn="cn=Manager,dc=srv,dc=world" write by * read[root@centos7 ~]# ldapmodify -Y EXTERNAL -H ldapi:/// -f chdomain.ldifSASL/EXTERNAL authentication startedSASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF: 0modifying entry "olcDatabase={1}monitor,cn=config"modifying entry "olcDatabase={2}hdb,cn=config"modifying entry "olcDatabase={2}hdb,cn=config"modifying entry "olcDatabase={2}hdb,cn=config"modifying entry "olcDatabase={2}hdb,cn=config"[root@centos7 ~]# vim basedomain.ldif# replace to your own domain name for "dc=***,dc=***" sectiondn: dc=srv,dc=worldobjectClass: topobjectClass: dcObjectobjectclass: organizationo: Server Worlddc: Srvdn: cn=Manager,dc=srv,dc=worldobjectClass: organizationalRolecn: Managerdescription: Directory Managerdn: ou=People,dc=srv,dc=worldobjectClass: organizationalUnitou: Peopledn: ou=Group,dc=srv,dc=worldobjectClass: organizationalUnitou: Group[root@centos7 ~]# ldapadd -x -D "cn=Manager,dc=srv,dc=world" -W -f basedomain.ldif Enter LDAP Password: //输入上面设置的目录管理器密码 passwordadding new entry "dc=srv,dc=world"adding new entry "cn=Manager,dc=srv,dc=world"adding new entry "ou=People,dc=srv,dc=world"adding new entry "ou=Group,dc=srv,dc=world"[root@centos7 ~]# ldapsearch -x -b "cn=Manager,dc=srv,dc=world"# extended LDIF## LDAPv3# base <cn=Manager,dc=srv,dc=world> with scope subtree# filter: (objectclass=*)# requesting: ALL## Manager, srv.worlddn: cn=Manager,dc=srv,dc=worldobjectClass: organizationalRolecn: Managerdescription: Directory Manager# search resultsearch: 2result: 0 Success# numResponses: 2# numEntries: 15、设置Firewalld,如果未启用防火墙关闭,忽略[root@centos7 ~]# firewall-cmd --add-service=ldap --permanent[root@centos7 ~]# firewall-cmd --reload6、安装并配置Apache[root@centos7 ~]# yum install httpd-devel.x86_64 httpd.x86_64 -y[root@centos7 ~]# mv /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.d/welcome.conf.bak [root@centos7 ~]# vim /etc/httpd/conf/httpd.conf# line 86: change to admin's email addressServerAdmin root@srv.world# line 95: change to your server's nameServerName www.srv.world:80# line 151: changeAllowOverride All# line 164: add file name that it can access only with directory's nameDirectoryIndex index.html index.cgi index.php# add follows to the end //在尾部新增# server's response headerServerTokens Prod# keepalive is ONKeepAlive On[root@centos7 ~]# systemctl start httpd.service[root@centos7 ~]# systemctl enable httpd.service[root@centos7 ~]# firewall-cmd --add-service=http --permanent //防火墙排除httpd服务,如果没有启用防火墙,此步骤可以忽略。
基于Linux的LDAP应用环境研究与目录服务实现
系型数据库相 比,目录信息包括更 多的描述性信息 , 更适用 于读 多于写 、 无复杂交易和无大容量更新 的应用。但它 的数 据类 型主要是 字符 型 , 为了检 索的需要 添加 了 B N( I 二进制 数据 )CS 忽 略大小写 )C S 大小写 敏感 )T L 电话型 ) 、I( 、E ( 、E ( 等语 法( yt ) 而不是关 系数 据库 提供 的整数 、 点数 、 Sna , x 浮 日 期 、 币等类型 , 货 同样 也不 提供像关 系数据库 中普遍 包含 的 大量 的函数 。它主要面 向数据 的查询服务 ( 查询和修改操作 比一般是 大于 1 : ) 不提供 事务 的回滚机 制 , 的数据修 01 , 它 改使 用简单 的锁定机 制实现 Al r N ti , l—o — o n 它的 目标是快 hg 速响应和大容量查 询并 且提供 多 目录服务 器的信息 复制 功
2 LA D P与关 系数据库 的比较
在传统 的开发 以提供信息 查询为主 的系统 中, 如通过用 户姓名能够获得该用户 的邮件地址 、 家庭住址等信息 , Y - 如 a
ho提供的 P ol sac o epe erh服务 和 Widw ul k中提供 的消 n o sO to o
维普资讯
僵囊技术 与僵囊佬
基 于 Ln x的 L A iu D P应 用环 境 研 究 与 目录服 务 实现
Su yo iu td fL n x—b s dL a e DAP A p iain E vr n n n mpe nain o ie tr e r e p l t n i me ta d I lme tt fD rc。y S ni c 。 o 。 c
Op n d p wh c ss p o t d b i u n d t i e L a ih i u p r y L n x i eal e .
linux下配置FTP服务器步骤
一、创建匿名FTP服务器的方法1。
增加新用户ftp,设置其主目录对任何用户都无写权限;2。
新建立一个组anonymou,它只能被匿名ftp使用;3.在ftp用户的主目录下创建一个bin目录,它属于root用户,而且对任何用户都不能写;4。
在ftp用户主目录下创建一个etc目录,它属于root用户,而且对任何用户都不能写;5.在ftp用户主目录下创建一个public目录,它属于ftp用户,而且对任何用户都能写。
如果由于安全等原因,您不允许其他用户在您的计算机上具有存储能力,那么您可以将其权限设置成555;6.将ls程序放到已创建的bin目录下,并将其修改成111方式,即对任何用户只能执行;7。
在已创建的etc目录下,创建passwd和group两个文件,并将它们设置成444方式(只读)。
二、创建匿名FTP---—在Unix下用root登录,然后按下列步骤逐步建立FTP服务器.1.建立新组anonymou----#mkgroupanonymou2.建立新用户ftp,且ftp用户属于anonymou组—--—#mkuserpgrp=‘nonymou'home=‘ /u/anonymou’ftp3。
在用户目录下建立相关的目录#cd/u/anonymou#mkdiretc#mkdirbin#mkdirpublic4。
将ls拷贝到/usr/anonymou/bin下,并设置其读写属性#cp/bin/ls./bin#chmod111。
/bin/ls5.创建/u/anonymou/etc/group文件————在该文件中增加一行:anonymou:!:201:6.创建/u/anonymou/etc/passwd文件--—-在该文件中增加一行:ftp:*:213:201::/u/anonymou:/bin/ksh7。
修改/u/anonymou/etc/group文件和/u/anonymou/etc/passwd文件的属性#chmod444/u/anonymou/etc/passwd—--—#chmod444/u/anonymou/etc/group8。
ldap ldif 用法
LDAP(轻量级目录访问协议)是一种用于访问和维护分布式目录服务的开放式标准协议。
LDIF(轻量级目录交换格式)是LDAP 的一种数据交换格式,用于在LDAP 客户端和服务器之间传输目录数据。
LDIF 文件的格式如下:```version: 1data: {entry: {dn: "<distinguished-name>",changetype: "modify",<attribute-name>: "<attribute-value>"}}```其中:- `version`:表示LDIF 文件的版本,目前为1。
- `data`:包含一个或多个条目(entry),每个条目包含Distinguished Name (Distinguished Name,即DN)、更改类型(changetype)和一条或多条属性(attribute)。
下面是一个简单的LDIF 文件示例:```version: 1data: {entry: {dn: "cn=testuser,ou=people,ou=myorg",changetype: "add",attribute: {cn: "testuser",sn: "Test User",email:"********************"}}}```要在LDAP 服务器上导入LDIF 文件,可以使用以下命令:```ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f <ldif_file>```其中:- `-D`:指定管理员密码。
- `-W`:表示为导入的LDIF 文件加密。
- `<ldif_file>`:LDIF 文件的路径。
ldap 配置
第14章目录服务器目录一般用来包含描述性的、基于属性的信息,例如,通讯簿就可使用目录的形式来保存。
目录服务是一种特殊的数据库系统,专门针对数据的读取、浏览和搜索操作进行了特定的优化。
目录服务器则是提供目录服务的程序,通常使用LDAP协议提供目录服务。
LDAP(Lightweight Directory Access Protocol,轻量级目录访问协议)是实现提供目录服务的网络协议。
本章将介绍通过OpenLDAP架设目录服务器的操作过程,主要包括以下知识点:了解LDAP协议。
掌握安装OpenLDAP的方法。
掌握配置OpenLDAP的过程。
掌握向OpenLDAP中添加条目、修改条目、查询条目的方法。
掌握设置主从OpenLDAP服务器的方法。
了解OpenLDAP在用户认证中的应用。
14.1 了解LDAP协议在进行安装配置OpenLDAP之前,本节首先对LDAP协议进行简单的介绍,让读者对LDAP 的结构有一个认识。
14.1.1 LDAP协议目录是一组具有类似属性、以一定逻辑和层次组合的信息。
常见的例子是通讯簿,由以字母顺序排列的名字、地址和电话号码组成。
目录服务是一种在分布式环境中发现目标的方法。
目录具有两个主要组成部分:第一部分是数据库,数据库是分布式的,且拥有一个描述数据的规划。
第二部分则是访问和处理数据的各种协议。
目录服务其实也是一种数据库系统,只是这种数据库是一种树形结构,而不是通常使用的关系数据库。
目录服务与关系数据库之间的主要区别在于:二者都允许对存储数据进行访问,只是目录主要用于读取,其查询的效率很高,而关系数据库则是为读写而设计的。
提示:目录服务不适于进行频繁的更新,属于典型的分布式结构。
LDAP是一个目录服务协议,目前存在众多版本的LDAP,而最常见的则是V2和V3两个版本,它们分别于1995年和1997年首次发布。
14.1.2 LDAP的基本模型LDAP的基本模型是建立在"条目"(Entry)的基础上。
ldaputils使用方法
ldaputils使用方法LDAP (Lightweight Directory Access Protocol) 是一种用于访问和维护分布式目录信息服务的开放标准协议。
在实际应用中,我们经常需要使用LDAP来进行用户身份验证、访问控制和其他目录服务操作。
为了简化LDAP的使用,ldaputils是一个非常有用的工具,它提供了一些方便的方法来执行LDAP操作。
首先,要使用ldaputils,你需要安装它。
你可以通过pip来安装ldaputils:bash.pip install ldaputils.一旦安装完成,你就可以开始使用ldaputils来执行LDAP操作了。
下面是一些ldaputils的使用方法:1. 连接LDAP服务器。
python.from ldaputils import LDAPClient.# 创建LDAPClient对象并连接到LDAP服务器。
ldap_client = LDAPClient("ldap://your_ldap_server", "username", "password")。
2. 搜索LDAP目录。
python.# 搜索LDAP目录。
result =ldap_client.search("ou=users,dc=example,dc=com","(cn=johndoe)")。
print(result)。
3. 添加新条目。
python.# 添加新条目。
entry = {。
"cn": "johndoe",。
"sn": "Doe",。
"mail":"*******************",。
"objectClass": ["inetOrgPerson"]}。
AD域服务简介(一)-基于LDAP的AD域服务器搭建及其使用
AD域服务简介(⼀)-基于LDAP的AD域服务器搭建及其使⽤博客地址:⼀、前⾔1.1 AD 域服务什么是⽬录(directory)呢?⽇常⽣活中使⽤的电话薄内记录着亲朋好友的姓名、电话与地址等数据,它就是 telephone directory(电话⽬录);计算机中的⽂件系统(file system)内记录着⽂件的⽂件名、⼤⼩与⽇期等数据,它就是 file directory(⽂件⽬录)。
如果这些⽬录内的数据能够由系统加以整理,⽤户就能够容易且迅速地查找到所需的数据,⽽ directory service(⽬录服务)提供的服务,就是要达到此⽬的。
在现实⽣活中,查号台也是⼀种⽬录;在 Internet 上,百度和⾕歌提供的搜索功能也是⼀种⽬录服务。
Active Directory 域内的 directory database(⽬录数据库)被⽤来存储⽤户账户、计算机账户、打印机和共享⽂件夹等对象,⽽提供⽬录服务的组件就是 Active Directory (活动⽬录)域服务(Active Directory Domain Service,AD DS),它负责⽬录数据库的存储、添加、删除、修改与查询等操作。
⼀般适⽤于⼀个局域⽹内。
在 AD 域服务(AD DS)内,AD 就是⼀个命名空间(Namespace)。
利⽤ AD,我们可以通过对象名称来找到与这个对象有关的所有信息。
在 TCP/IP ⽹络环境内利⽤ Domain Name System(DNS)来解析主机名与 IP 地址的对应关系,也就是利⽤ DNS 来解析来得到主机的 IP 地址。
除此之外,AD 域服务也与 DNS 紧密结合在⼀起,它的域命名空间也是采⽤ DNS 架构,因此域名采⽤ DNS 格式来命名,例如可以将 AD 域的域名命名为 。
1.2 AD域对象与属性AD 域内的资源以对象(Object)的形式存在,例如⽤户、计算机与打印机等都是对象,⽽对象则通过属性(Attriburte)来描述其特征,也就是说对象本⾝是⼀些属性的集合。
ldapadmin使用手册
ldapadmin使用手册一、简介ldapadmin是一款功能强大的LDAP(轻量目录访问协议)管理工具,它提供了用户友好的界面,用于管理和维护LDAP服务器上的目录。
本手册将向您介绍如何使用ldapadmin进行LDAP目录的管理。
二、安装和配置2.1 下载和安装ldapadmin1.打开ldapadmin的官方网站。
2.在下载页面选择适用于您操作系统的版本,然后单击下载按钮。
3.下载完成后,按照安装向导进行安装。
2.2 配置ldap服务器连接在首次启动ldapadmin之后,您需要配置与LDAP服务器的连接。
按照以下步骤进行配置: 1. 打开ldapadmin并选择“文件”>“设置”。
2. 在设置窗口中,选择“连接”选项卡。
3. 点击“添加”按钮,输入连接名称和LDAP服务器的主机名和端口号。
4. 输入管理员用户名和密码,并验证连接是否成功。
5. 单击“确定”保存配置。
三、目录管理3.1 创建目录项您可以使用ldapadmin创建新的目录项。
按照以下步骤进行操作: 1. 在ldapadmin的主界面上选择您要在其中创建目录项的上级目录。
2. 单击工具栏上的“新建目录项”按钮。
3. 在弹出的对话框中,输入新目录项的属性和值。
4. 单击“确定”按钮创建目录项。
3.2 编辑目录项您可以通过ldapadmin编辑目录项的属性和值。
按照以下步骤进行操作: 1. 在ldapadmin的主界面上选择要编辑的目录项。
2. 单击工具栏上的“编辑目录项”按钮。
3. 在弹出的对话框中,可以修改目录项的属性和值。
4. 单击“确定”按钮保存更改。
3.3 删除目录项如果您需要删除一个目录项,可以按照以下步骤进行操作: 1. 在ldapadmin的主界面上选择要删除的目录项。
2. 单击工具栏上的“删除目录项”按钮。
3. 单击“确定”按钮确认删除操作。
四、搜索和过滤4.1 执行搜索操作ldapadmin提供了强大的搜索功能,您可以根据特定的条件搜索目录项。
LDAP主从配置(Centos6)
LDAP 主从配置本实验前提:已经安装好LDAP服务基本环境。
系统环境[root@ldap-master ~]# cat /etc/redhat-releaseCentOS release 6.5 (Final)主从服务器的slapd.conf配置文件添加如下配置(红色为要修改但主从一样,蓝色为要修改但主从不同): vim /etc/openldap/slapd.confmodulepath /usr/lib/openldap #取消注释modulepath /usr/lib64/openldap #取消注释moduleload #取消注释overlay syncprov #工作在overlay模式下syncprov-checkpoint 10 1 #同步满足的条件,当满足修改10个条目或者1分钟主动推送一次。
syncprov-sessionlog 100 #会话日志条目最大数量serverID 1 #唯一ID,主从要设置不同syncrepl rid=123 #设置主机id号,主从要设置不同(rid必须要大于三位数字)provider=ldap://192.168.3.235:389 #设置对方LDAP服务器的地址(主设从,从设主)bindmethod=simple #密码验证为简单模式(即明文,此处你可以改为加密)binddn="cn=admin,dc=xieqiangneng,dc=org" #设置超级管理员的dncredentials=123456 #管理员的密码,也使用加密后的密码searchbase="dc=xieqiangneng,dc=org" #搜索的根目录filter="(objectClass=*)" #搜索所有类型scope=sub #匹配根目录下所有条目schemachecking=off #同步更新时是否检查schema的一致行type=refreshAndPersist #设置同步的模式,表示持续复制retry="60 +"mirrormode on #开启镜像功能[root@ldap-master ~]# rm -rf /etc/openldap/slapd.d/*[root@ldap-master ~]# slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d[root@ldap-master ~]# chown -R ldap.ldap /etc/openldap/slapd.d/*[root@ldap-master ~]# /etc/init.d/slapd restartLDAP 主从配置例子架构图在LDAP服务器192.168.3.235上配置(A服务器)[root@ldap-master-A slapd.d]# cat /etc/openldap/slapd.confmodulepath /usr/lib/openldap #取消注释modulepath /usr/lib64/openldap #取消注释moduleload #取消注释syncprov-checkpoint 10 1syncprov-sessionlog 100serverID 1 #唯一IDsyncrepl rid=001provider=ldap://192.168.3.234:389bindmethod=simplebinddn="cn=admin,dc=xieqiangneng,dc=org"credentials=123456searchbase="dc=xieqiangneng,dc=org"schemachecking=onfilter="(objectClass=*)"scope=subtype=refreshAndPersistretry="60 +"mirrormode on #开启镜像功能[root@ldap-master-A ~]# rm -rf /etc/openldap/slapd.d/*[root@ldap-master-A ~]# slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d [root@ldap-master-A ~]# chown -R ldap.ldap /etc/openldap/slapd.d/*[root@ldap-master-A ~]# /etc/init.d/slapd restart-------------------------------------------------------------------------------------------------在LDAP服务器192.168.3.234上配置(B服务器)[root@ldap-master-B slapd.d]# cat /etc/openldap/slapd.confmodulepath /usr/lib/openldap #取消注释modulepath /usr/lib64/openldap #取消注释moduleload #取消注释overlay syncprovsyncprov-checkpoint 10 1syncprov-sessionlog 100serverID 2 #唯一IDsyncrepl rid=001provider=ldap://192.168.3.235:389bindmethod=simplebinddn="cn=admin,dc=xieqiangneng,dc=org"credentials=123456searchbase="dc=xieqiangneng,dc=org"schemachecking=onfilter="(objectClass=*)"scope=subtype=refreshAndPersistretry="60 +"mirrormode on #开启镜像功能[root@ldap-master-B ~]# rm -rf /etc/openldap/slapd.d/*[root@ldap-master-B ~]# slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d [root@ldap-master-B ~]# chown -R ldap.ldap /etc/openldap/slapd.d/*[root@ldap-master-B ~]# /etc/init.d/slapd restart在两台服务器添加删除数据测试。
LDAP配置
利用slappasswd生成一个密码(在命令模式下,单击中键(同时按下左右键)进行复制)
并将slapd.conf中的rootpw和rootpw注释去除增加上密码
第二:修改/var/lib/ldap的所属者
$DEFAULT_MAIL_DOMAIN = "";
$DEFAULT_BASE = "dc=example,dc=com";
修改后:
$DEFAULT_MAIL_DOMAIN = ""
$DEFAULT_BASE = "dc=linux,dc=com";
再利用slapadd将其添加到BDB中
slapadd -l test.ldif -v -b "cn=root,dc=linux,dc=com"
第三:增加本地用户到数据中
先要修改migrate_common.ph(/usr/share/openldap/migration/migrate_common.ph)中的
安装ldap_server包
第一:修改slapd.conf(/etc/openldap/slapd.conf)
suffix "dc=example,dc=com"
rootdn "cn=Manageer,dc=linux,dc=com"
修改后:
suffix "dc=liectclass: organization !类型:organization(团体)
objectclass: dcObject
Linux服务器管理与网络配置教程
Linux服务器管理与网络配置教程第一章:Linux服务器管理基础Linux 服务器管理是使用 Linux 操作系统来管理和维护服务器的过程。
本章将介绍如何使用一些基础的 Linux 命令和工具来管理服务器,包括登录服务器、创建用户账户、修改文件权限等。
1.1 登录服务器要管理 Linux 服务器,首先需要登录服务器。
常用的远程登录工具有 SSH(Secure Shell)和 PuTTY。
本节将详细介绍如何使用SSH 和 PuTTY 远程登录服务器,并提供一些常用的登录命令示例。
1.2 创建用户账户为了管理服务器,需要创建一个具有管理员权限的用户账户。
本节将介绍如何使用命令行和图形界面工具来创建用户账户,并授予相应的权限。
1.3 修改文件权限为了保护服务器的安全性和文件的完整性,需要正确设置文件权限。
本节将介绍如何使用命令行和图形界面工具来修改文件和目录的权限,并阐述权限的含义和作用。
第二章:Linux 服务器网络配置本章将介绍如何配置 Linux 服务器的网络设置,包括 IP 地址、子网掩码、网关和 DNS 配置等。
还将介绍如何进行网络故障排除和常见网络问题的解决方法。
2.1 配置静态 IP 地址静态IP 地址是指服务器在启动过程中不会改变的固定IP 地址。
本节将介绍如何使用命令行和图形界面工具来配置静态 IP 地址。
2.2 配置子网掩码和网关子网掩码和网关是用于确定服务器与其他网络设备之间的连接的重要参数。
本节将介绍如何设置子网掩码和网关,并解释其原理。
2.3 配置 DNSDNS(Domain Name System)用于将域名转换为 IP 地址。
本节将介绍如何配置 DNS 服务器的设置,包括使用本地 DNS 服务器和公共 DNS 服务器。
2.4 网络故障排除网络故障是服务器管理中常见的问题。
本节将介绍一些常用的网络故障排除方法,例如检查网络连接、排查网络配置问题等。
第三章:Linux 服务器服务管理本章将介绍如何管理 Linux 服务器中的服务,包括启动和停止服务、设置开机自启动等。
LDAP学习小结【仅原理和基础篇】
LDAP学习⼩结【仅原理和基础篇】 此篇⽂章花费了好⼏个晚上,⼤部分是软件翻译的英⽂⽂档,加上⾃⼰的理解所写,希望学习者能尊重每个⼈的努⼒. 我有句话想送给每个看我⽂章的⼈: 慢就是快,快就是慢 另外更希望更多⼈能从认真从原理学习,分享更多有质量的⽂章,⽽不是仅仅转载别⼈的⽂章. 以下仅介绍了OpenLDAP的基本原理和基本配置,⾄于更⾼级的配置,还需⾃⾏学习,因为有了以下基础,再去建楼,就会 更加容易,⽹上有太多⽂章都太⽼旧,实在难以让初学者对OpenLDAP有⼀个全⾯的基础认识,总搞的⼈云⾥雾⾥,这篇⽂章 希望对想学习OpenLDAP的⼈,打⼀个好的基础,从⽽能深⼊了解它.基本命令我就不贴出来了,希望想深⼊学习的⼈,⾃⾏学习 man⼿册. --------------马帮弟⼦:zcfLDAP: 原理:LDAP: 它是⽤来做统⼀⽤户⾝份认证的.即: 你访问CSDN它说你可以⽤微信登录,你登录微博,它也⽀持微信登录等, 这就是⼀种⽬录服务, 当然它们不⼀定⽤LDAP来做为他们的⽬录服务. LDAP(Light Directory Access Portocol),它是基于X.500标准的轻量级⽬录访问协议。
Linux上实现LDAP的⼯具是 openladp, 通过配置ldap服务器,将⽤户信息存储在其中,就可以使⽤ldap协议, 访问⽤户数据库,来实现LDAP⽤户认证.基本概念: ⽬录树概念 1. ⽬录树:在⼀个⽬录服务系统中,整个⽬录信息集可以表⽰为⼀个⽬录信息树,树中的每个节点是⼀个条⽬。
2. 条⽬:每个条⽬就是⼀条记录,每个条⽬有⾃⼰的唯⼀可区别的名称(DN)。
3. 对象类:与某个实体类型对应的⼀组属性,对象类是可以继承的,这样⽗类的必须属性也会被继承下来。
4. 属性:描述条⽬的某个⽅⾯的信息,⼀个属性由⼀个属性类型和⼀个或多个属性值组成,属性有必须属性和⾮必须属性。
名词: dn(Distinguished Name): “uid=songtao.xu,ou=oa组,dc=example,dc=com”,⼀条记录的位置(唯⼀) uid(User Id): ⽤户ID songtao.xu(⼀条记录的ID) ou(Organization Unit): 组织单位,组织单位可以包含其他各种对象(包括其他组织单元),如“oa组”(⼀条记录的所属组织) dc(Domain Component) :域名的部分,其格式是将完整的域名分成⼏部分,如域名为变成dc=example,dc=com(⼀条记录的所属位置) cn(Common Name): 公共名称,如“Thomas Johansson”(⼀条记录的名称) sn(Surname): 姓,如“许” rdn(Relative dn): 相对辨别名,类似于⽂件系统中的相对路径,它是与⽬录树结构⽆关的部分,如“uid=tom”或“cn= Thomas Johansson”配置openLDAP有两种⽅式: slapd.conf 修改它,需要重新⽣成数据库⽂件, ⽣成后需要重新赋予权限属主属组ldap.ldap . 接着重新加载slapd 进程, 配置才会⽣效.若使⽤单机版,不推荐。
OpenLDAP安装与配置
OpenLDAP安装与配置第⼀种⽅法:使⽤命令安装OpenLDAP:yum -y install openldap compat-openldap openldap-clients openldap-servers openldap-servers-sql openldap-devel migrationtools查看OpenLDAP版本,使⽤如下命令:slapd -VV到这⾥OpenLDAP基本安装完毕,接下来就是开始配置OpenLDAP四、OpenLDAP配置PS: OpenLDAP2.4.23版本开始所有配置数据都保存在/etc/openldap/slapd.d/,看了很多博客都是使⽤slapd.conf作为配置⽂件,⽽且很多博客内容都已经过时,所以没有⼀个好的⽂档真的会踩很多坑,在此记录⼀下4.0 配置OpenLDAP管理员密码设置OpenLDAP的管理员密码:slappasswd -s [password]密码设置好了之后呢,保存好,下⾯会使⽤到。
4.1 修改olcDatabase={2}hdb.ldif⽂件修改olcDatabase={2}hdb.ldif⽂件,对于该⽂件增加⼀⾏olcRootPW: {SSHA}dXgO/Ipy5SQiKFZ0u7m79Xo7uzKIr038,然后修改域信息:olcSuffix: dc=teracloud2,dc=cnolcRootDN: cn=admin,dc=teracloud2,dc=cn注意:其中cn=admin中的admin表⽰OpenLDAP管理员的⽤户名,dc为ldap的服务器域名,导出⽽olcRootPW表⽰OpenLDAP管理员的密码。
实际修改如下:vim /etc/openldap/slapd.d/cn=config/olcDatabase\=\{2\}hdb.ldifolcSuffix: dc=teracloud2,dc=cnolcRootDN: cn=admin,dc=teracloud2,dc=cnolcRootPW: {SSHA}dXgO/Ipy5SQiKFZ0u7m79Xo7uzKIr0384.2 修改olcDatabase={1}monitor.ldif⽂件修改olcDatabase={1}monitor.ldif⽂件,如下:vim /etc/openldap/slapd.d/cn=config/olcDatabase\=\{1\}monitor.ldifolcAccess: {0}to * by dn.base=”gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth” read by dn.base=”cn=admin,dc=teracloud2,dc=cn” read by * none验证OpenLDAP的基本配置是否正确,使⽤如下命令:slaptest -u通过结果看出我们的配置是没有问题的4.3启动OpenLDAP服务,使⽤如下命令://开始ldapsystemctl enable slapd//启动ldapsystemctl start slapd//查看ldap的状态systemctl status slapd4.4 配置OpenLDAP数据库OpenLDAP默认使⽤的数据库是BerkeleyDB,现在来开始配置OpenLDAP数据库,使⽤如下命令:cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIGchown ldap:ldap -R /var/lib/ldapchmod 700 -R /var/lib/ldapll /var/lib/ldap/注意:/var/lib/ldap/就是BerkeleyDB数据库默认存储的路径。
LDAP 概念与架设
LDAP 概念与架设現今網路常用的服務,以 HTTP、Mail 和 File System (Samba) 為最常用的服務,然而在這些常用的服務裡,會有使用者帳號的問題,每當要使用 Mail 時要輸入 Mail 的帳號密碼,存取 File System 要有 File System 帳號密碼,再更多的服務就要記更多的帳號密碼,小弟曾看過某機關,一位承辦人居要要背五組以上的的帳號密碼,而每兩個月又要修改一次,想想看這是多麼恐怖的一件事。
LDAP 是一種目綠服務,可使用 LDAP 記錄各種的人員資訊,就像是通訊錄一樣,又更進階一點,他也可以拿來做帳號整合,若是在 AP 上都有所支援,那麼要使用同一組帳號秘碼就不再是難以搞定的事了。
在小弟等當兵的這一段日子裡,打算使用 LDAP 來做Linux login(new window)、Postfix(new window)、Samba、HTTP 等帳號密碼整合。
所以,我將會寫一系列的LDAP 整合文章,當然,太深入、難以說明或是太過於理論的地方我都不會講,因為這只是筆記,我會儘量說明清楚。
為了要讓閱讀本文章的讀者們可以更容易的找到相關書籍,我在文章裡也會提供參考圖書或網頁的資料。
無論如何,小弟只對 Redhat Linux 的部份較為熟悉,所以在以下文章裡所提到的 LDAP,其實是指 OpenLDAP 套件,跟 Microsoft 的 Active Directory 沒有關係,因為小弟對 AD 也不熟。
在這個章節裡,我將要介紹基本的 LDAP 觀念和如何使者用 ldap command 來新增、查尋資料。
而在實作的環境裡,我是使用 CentOS 4.0,也就是說若您的系統是使用 CentOS 4、Redhat Enterprise Linux 4、Fedora Core 3 或 Fedora Core 4 的話應該都可以照著本文章實作,當然,CentOS 4.0 裡附的 OpenLDAP 版本是 openldap-2.2。
ldapadmin使用手册
ldapadmin使用手册LDAPadmin使用手册LDAPadmin是一款开源的LDAP(轻量目录访问协议)客户端,诸多企业利用LDAP管理其组织的用户和资源。
LDAPadmin提供了一个友好的Web界面来管理LDAP目录。
1.安装LDAPadmin下载最新的LDAPadmin版本并安装到计算机上,并按照安装程序的指示完成安装。
LDAPadmin可以在Windows、Linux和Mac OS X 等操作系统上运行。
2.启动LDAPadmin安装完成后,双击图标启动LDAPadmin。
出现登录窗口,输入LDAP 服务器的地址、SSL端口号、用户名和密码(如果有的话)。
用户也可以使用匿名登录作为LDAP信息服务器访问。
3.连接LDAP服务器在LDAPadmin菜单中选中“文件”--“新建连接”。
输入LDAP服务器的详细信息,如IP地址、端口号、登录帐号及密码。
单击“连接”按钮测试连接。
在连接成功后,下一步就是对LDAP目录进行操作。
4.查看、编辑和添加目录对象LDAPadmin中的“浏览器”选项卡提供了一种方便的方式来浏览LDAP目录及其对象。
用户可以在不同的目录节点下浏览和查看对象及其属性(如名称、属性及其值)。
选择要编辑的对象并在“编辑”选项卡下进行更改。
单击“保存”以保存所做的更改。
要添加新目录对象,选择正确的节点并单击右键,然后选择“新建”菜单项。
LDAPadmin将显示一个新对象的编辑窗口。
为新对象设置属性并保存即可。
5.搜索LDAP目录LDAPadmin提供了一种细粒度的搜索方式,可根据哪些属性(如名称、大小等)返回哪些结果。
选择“搜索”选项卡,则可以进行基本和高级搜索。
输入搜索条件并单击“搜索”按钮,则LDAPadmin将返回与条件匹配的对象。
6.导出和导入数据LDAPadmin提供了一种方便的方法来将LDAP目录数据导出到LDIF或CSV文件中。
选择要导出的节点和属性,单击“导出”菜单项,即可将数据导出到本地计算机。
ldap资料
LDAP资料14.4 管理OpenLDAP启动OpenLDAP服务器程序之后,接下来的操作就是通过客户端程序对目录进行操作,包括添加、修改、删除和搜索数据等操作。
能对LDAP进行操作的客户端程序很多,本节简单介绍在Linux命令方式下进行这些操作的方法。
14.4.1 向目录数据库中添加数据初始状态下,LDAP是一个空目录,即没有任何数据。
可通过程序代码向目录数据库中添加数据,也可使用OpenLDAP客户端工具ldapadd命令来完成添加数据的操作,该命令可将一个LDIF文件中的条目添加到目录。
因此,需要首先创建一个LDIF文件,然后再进行添加操作。
1.LDIF文本条目格式LDIF用文本格式表示目录数据库的信息,以方便用户创建、阅读和修改。
在LDIF 文件中,一个条目的基本格式如下:# 注释dn: 条目名属性描述: 值属性描述: 值属性描述: 值... ...dn行类似于关系数据库中一条记录的关键字,不能与其他dn重复。
一个LDIF 文件中可以包含多个条目,每个条目之间用一个空行分隔。
例如,以下内容组成一个条目:1: dn: dc=wyh, dc=com2: objectclass: top3: objectclass: dcobject4: objectclass: organization5: dc: wyh6: o: wyh,Inc.在以上文本中,各行含义如下:●第1行的dn定义该条目的标识。
●第2~4行定义该条目的objectcCass,可以定义多个属性,如上面代码中定义了3个objectClass。
条目的属性根据objectClass的不同而不同,有的objectClass有必须设置的属性。
在2~4行的3个objectClass中,top没有必须定义的属性,dcobject必须定义属性dc,用来表示一个域名的部分,而organization必须定义属性o,用来表示一个组织的名称。
●根据objectClass的要求,第5、6行分别定义属性dc和属性o的值。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
手把手教您配置 Linux 目录服务器 近几年,随着 LDAP(Light Directory Access Protocol,轻量级目录访问 协议)技术的兴起和应用领域的不断扩展,目录服务技术成为许多新型技术实现 信息存储、管理和查询的首选方案,特别是在网络资源查找、用户访问控制与认 证信息的查询、新型网络服务、网络安全、商务网的通用数据库服务和安全服务 等方面,都需要应用目录服务技术来实现一个通用、 完善、应用简单和可以扩展 的系统。
对于任何一家大 IT 网络的企业来说,IT 系统中的目录服务功能是必不可少 的。
如果一个在全国有多个分支机构的企业,已经有了一个内部网络系统,每一 个分支机构都有一个局域网,局域网之间通过专线或者 VPN 通道连接在一起,那 么,如何将网络中的资源和信息有效地管理起来呢?通常,这个企业可以在每一 个分支机构或者每个城市建立一个目录服务器,任何地方的员工连接到本地目录 服务器就可以访问到目录树中所有的信息,在目录服务器之间复制目录信息,以 保持同步。
比如,人事部门看到的人员目录与财务部门、设备管理部门看到的人 员目录是完全一致的, 他们所使用的应用系统无须再建立另一套目录结构。
当然, 这一切都是要经过身份验证的。
目录服务有着如此重要的作用, 但在过去, 企业通常 采用基于 Windows 的目 录服务器,Linux 在这方面相形逊色。
作为 Windows 的核心内容,目录服务被企 业 IT 人员认为是 Windows 与 Linux 相比最具竞争力的部分,也成为 Linux 产品 架构中的软肋。
随着 Red Hat Enterprise Linux 4.0 出现,这个情况已经改变了。
RHEL 4 内附的 LDAP 服务器为 OpenLDAP 2.2.13-2 版,OpenLDAP 2.x 包括数个 重要功能: 1. 支持 LDAPv3 - OpenLDAP 2.0 除了其它改善外还支持 SASL (SimpleAuthentication and Security Layer) 、 TLS (Transport Layer Security) 以及 SSL(Secure Sockets Layer) 。
LDAPv2 之后通讯协议很多的改变都是为了 加强 LDAP 的安全性。
2. 支持 IPv6 - OpenLDAP 支持新一代的因特网通讯协议第 6 版。
3. LDAP Over IPC - OpenLDAP 能够使用 IPC 在系统内进行通讯。
这可以避 免使用网络通讯以增加安全性。
4. 使用新的应用程序界面: 改善程序设计人员联机及使用程序的方法。
本文将以 Red Hat Enterprise Linux 4.0 为例,介绍在 Linux 平台使 用 OpenLDAP 上建立目录服务器。
一、LDAP 协议简介 LDAP(轻量级目录访问协议,Lightweight Directory Access Protocol)是 实现提供被称为目录服务的信息服务。
目录服务是一种特殊的数据库系统,其专 门针对读取,浏览和搜索操作进行了特定的优化。
目录一般用来包含描述性的, 基于属性的信息并支持精细复杂的过滤能力。
目录一般不支持通用数据库针对大 量更新操作操作需要的复杂的事务管理或回卷策略。
而目录服务的更新则一 般都 非常简单。
这种目录可以存储包括个人信息、web 链结、jpeg 图像等各种信息。
为了访问存储在目录中的信息,就需要使用运行在 TCP/IP 之上的访 问协议— LDAP。
LDAP 目录中的信息是是按照树型结构组织,具体信息存储在条目(entry) 的数据结构中。
条目相当于关系数据库中表的记录;条目是具有区别名 DN (Distinguished Name)的属性(Attribute) ,DN 是用来引用条目的,DN 相当于 关系数据库表中的关键字(Primary Key) 。
属性由类型(Type)和一个或多个值 (Values) 组成, 相当于关系数据库中的字段 (Field) 由字段名和数据类型组成, 只是为了方便检 索的需要, LDAP 中的 Type 可以有多个 Value, 而不是关系数据 库中为降低数据的冗余性要求实现的各个域必须是不相关的。
LDAP 中条目的组织 一般按照地理位置 和组织关系进行组织,非常的直观。
LDAP 系统结构图见图 1.图 1 LDAP 系统结构图 LDAP 的信息是以树型结构存储的,在树根一般定义国家(c=CN)或域名 (dc=com), 在其下则往往定义一个或多个组织 (organization)(o=Acme)或组织单 元(organizational units) (ou=People)。
一个组织单元可能包含诸如所有雇员、 大楼内的所有打印机等信息。
此外,LDAP 支持对条目能够和必 须支持哪些属性进行控制,这是有一 个特殊的称为对 象类别(objectClass)的属性来实现的。
该属性的值决定了该条 目必须遵循的一些规则,其规定了该条目能够及至少应该包含哪些属性。
例 如: inetorgPerson 对象类需要支持 sn(surname)和 cn(common name)属性,但也可以 包含可选的如邮件,电话号码等属性。
dn :一条记录的位置;dc :一条记录所 属区域;ou :一条记录所属组织;cn/uid:一条记录的名字/ID。
OpenLdap 是一 个正在得到日益普遍应用的开源软件,和 LADP 完全兼容。
二、安装 OpenLDAP 服务器 如果在系统安装时已经把安装上了,那么我们就可以直接对 OpenLDAP 进行配置使用了。
否则,可以通过 Rat Het Enterprise Linux 图形界面下的“添 加/删除应用程序”工具进行安装。
具体方法是,选择“主选单”→“系统设置”→“添加/删除应用程序” ,在弹出的界面中选中“ 网络服务器”的“OpenLDAP -server” ,单击“更新”即可,见图 2。
图 2 安装 OpenLDAP 服务器软件 如果你使用的是其他版本的 Linux,那么通常要安装以下软件包: OpenLDAP、OpenLDAP-servers、OpenLDAP- clients、OpenLDAP-devel , OpenLDAP-2.0 是必要套件,一定要先安装;OpenLDAP-servers 是服务器套件; OpenLDAP-clients 是操作程序套 件;OpenLDAP-devel 是开发工具套件。
三、配置 OpenLDAP 服务器 以 RedHat Linux 4 所为例字介绍 OpenLDAP 服务器配置文件。
主要文件 见表 1。
表1 1. 建立 Linux 用户账号 使用文本编辑建立一个文本文件,文件名称 myusers.list 内容如下:user1 123456 user2 123456 user3 123456 user4 123456 user5 123456 user6 123456 user7 123456 user8 123456 user9 123456 注意:第一个字段为使用者名称;第二个字段为预设密码,中间必须用 空格隔开。
然后使用文本编辑建立另外一个文本文件,文件名称 add-users.sh 内容如下: 建立账号: 1.for i in $(seq 1 9 ) ; do useradd user$i ;echo 123456 | passwd --stdin user$i ;done2.修改缺省配置文件:/etc/OpenLDAP/slapd.conf,请把蓝色部分按照 您的具体情况填写。
database bdb suffix "dc=myexample,dc=com" #一条记录所属区域#rootdn "cn=Manager,dc=example,dc=com" rootpw 1234567 的密码 3.将原有 Linux 账号转为 LDIF 文件 原有 Linux 服务器上有 user1-user9 这些使用者账号,密码均为 123456;下面便是转换的步骤: #定义 LDAP 根管理员# cd /usr/share/OpenLDAP/migration # vi migrate_common.ph $DEFAULT_MAIL_DOMAIN = ""; Default base $DEFAULT_BASE = "dc=myexample,dc=com";#转换文件的目录## ./migrate_passwd.pl /etc/passwd > /worktmp/user.ldif # ./migrate_group.pl /etc/group > /worktmp/group.ldif 4. 建立 example.ldif,ou_people.ldif, ou_group.ldif 三个文件#cat example.ldif dn: dc=example,dc=com dc: example objectClass: dcObject objectClass: organizationalUnit ou: #cat ou_people.ldif dn: ou=people, dc=example, dc=com objectclass: organizationalunit ou: people #cat ou_group.ldif dn: ou=group, dc=example, dc=com objectclass: organizationalunit ou: group 5. 转换原有 Linux 账号至 OpenLDAP 服务器上:#slapadd -vl example.ldif added: "dc=example,dc=com" (00000001) #slapadd -vl ou_people.ldif added: "ou=people,dc=example,dc=com" (00000002) #slapadd -vl ou_group.ldif added: "ou=group,dc=example,dc=com" (00000043) #slapadd -vl user.ldif #slapadd -vl group.ldif 四、启动 OpenLDAP 服务器 #chown ldap.ldap /var/lib/ldap/* 案变更拥有者及群组为 ldap。