当前位置:首页 » 城管服务 » ldap服务器搭建

ldap服务器搭建

发布时间: 2020-12-27 14:42:49

A. 什么叫LDAP,LDAP服务器是什么

LDAP的英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP。它是基于X.500标准的,但是简单多了并且可以根据需要定制。与X.500不同,LDAP支持TCP/IP,这对访问Internet是必须的。LDAP的核心规范在RFC中都有定义,所有与LDAP相关的RFC都可以在LDAPman RFC网页中找到。怎么使用LDAP这个术语呢?
在日常交谈中,你可能会听到有些人这么说:“我们要把那些东西存在LDAP中吗?”,或者“从LDAP数据库中取出那些数据!”,又或者“我们怎么把LDAP和关系型数据库集成在一起?”。严格地说,LDAP根本不是数据库而是用来访问存储在信息目录(也就是LDAP目录)中的信息的协议。更为确切和正式的说法应该是象这样的:“通过使用LDAP,可以在信息目录的正确位置读取(或存储)数据”。但是,也没有必要吹毛求疵,尽管表达得不够准确,我们也都知道对方在说什么。

B. 如何组建和操作LDAP数据库

LDAP是一个用来发布目录信息到许多不同资源的协议。通常它都作为一个集中的地址本使用,不过根据组织者的需要,它可以做得更加强大。
LDAP最基本的形式是一个连接数据库的标准方式。该数据库为读查询作了优化。因此它可以很快地得到查询结果,不过在其它方面,例如更新,就慢得多。要特别注意的是,LDAP通常作为一个hierarchal数据库使用,而不是一个关系数据库。因此,它的结构用树来表示比用表格好。正因为这样,就不能用SQL语句了。
简单说来,LDAP是一个得到关于人或者资源的集中、静态数据的快速方式。
LDAP是轻量目录访问协议(LightweightDirectory Access Protocol)的缩写,其实是一话号码簿,类似于我们所使用诸如NIS(NetworkInformation Service)、DNS (Domain Name Service)等网络目录,也类似于你在花园中所看到的树木。
LDAP是一种特殊的数据库。但是LDAP和一般的数据库不同,明白这一点是很重要的。 LDAP对查询进行了优化,与写性能相比LDAP的读性能要优秀很多。
1.1 LDAP的存储规则
区分名(DN,DistinguishedName)
和自然界中的树不同,文件系统/LDAP/电话号码簿目录的每一片枝叶都至少有一个独一无二的属性,这一属性可以帮助我们来区别这些枝叶。
在文件系统中, 这些独一无二的属性就是带有完整路径的文件名。比如/etc/passwd,该文件名在该路径下是独一无二的。当然我们可以有/usr/passwd, /opt/passwd,但是根据它们的完整路径,它们仍然是唯一的。
在LDAP中,一个条目的区分名称叫做“dn”或者叫做区分名。在一个目录中这个名称总是唯一的。比如,我的dn是"uid=aghaffar, ou=People, o=developer.ch"。不可能有相同的dn,但是我们可以有诸如"uid=aghaffar,ou=Administrators, o=developer.ch"的dn。这同上面文件系统中/etc/passwd 和 /usr/passwd的例子很类似。
我们有独一无二的属性,在"ou=Administrators,o=developer.ch" 中uid和在"ou=People,o=developer.ch"中的uid。这并不矛盾。
CN=Common Name 为用户名或服务器名,最长可以到80个字符,可以为中文;
OU=Organization Unit为组织单元,最多可以有四级,每级最长32个字符,可以为中文;
O=Organization 为组织名,可以3—64个字符长
C=Country为国家名,可选,为2个字符长
LDAP目录以一系列“属性对”的形式来存储记录项,每一个记录项包括属性类型和属性值(这与关系型数据库用行和列来存取数据有根本的不同)。
mail = [email protected]
othermailbox = [email protected]
givenname = givenname
sn = test sn
属性可添加,以下一个属性必须赋值:
objectclass=person (值为:person 或 server 或organization 或 其他自定义的值)
2 PHP(PHP培训php教程 )如何操作LDAP
2.1 Php如何与LDAP连接和关闭
$ds=ldap_connect("ServerName")
ServerName是LDAP的服务器名,
例:
$ds=ldap_connect(“10.31.172.30:1000”)
返回值是:true 或false
关闭连接
ldap_close($ds);
2.2 在php中如何搜索用户信息
$ds=ldap_connect("10.31.172.30:1000");
//首先连接上服务器
$justthese =array("cn","userpassword",”location”);
//搜索函数中的一个参数,要求返回哪些信息,
//以上传回cn,userpassword,location,这些都要求小写
$sr=ldap_search($ds,"o=jite","cn=dom*",$justthese);
//第一个参数开启LDAP的代号

C. Jira中如何搭建ldap服务

JIRA与LDAP集成的工作机制是这样的:
1. 用户信息依旧需要在中进行管理
2. 只有密码验证在LDAP中完成
3. 在LDAP中不存在的用户依旧可以通过JIRA本身的密码验证机制(OSUser)来进行身份校验
4. 并非全部的LDAP用户都具有JIRA访问权限

配置JIRA与LDAP集成的方法是(以JIRA 4.2.1为例):
1. 进入Admin(管理) -> System(系统) -> LDAP
2. 在LDAP Host(LDAP主机)中填入LDAP服务器地址
3. 在BaseDN中填入LDAP的根节点名称
4. 在Search Attribute中填入LDAP中包含JIRA登录用户名的属性名称
5. 保存LDAP的修改
6. 进入Admin(管理) -> General Configuration(通用设置)
7. 打开External Password Management(外部密码管理)
8. 保存退出并重启服务

除了可以利用JIRA现有的LDAP集成机制外,也可以考虑Atlassian Crowd这款独立的单点登录工具,Crowd和JIRA的结合非常好。JIRA的用户可完全在Crowd中进行管理。Crowd支持LDAP,Windows Active Directory等多种目录服务器,应用程序上支持JIRA、Confluence、FishEye、Crucible、GoogleApp、SVN等应用。可实现一个账户访问全部应用,并支持单点登录。

D. 怎样填写设置LDAP账户的服务器和BaseDN

BASEDN可参见LDAP账户的服务器的slapd.conf里的相关配置.

E. 如何搭建linux ldapweb管理界面

1、安装-servers软件包
2、查看ldap模板文件的存放位置:

3、拷贝ldap模板文件到配置文件目录并修改文件名为slapd.conf。

4、删除/etc/openldap目录下原有的文件,保留下这几个文件,注意:以前学时是要删除schema文件,直留下三个,但是我测试时如果删除schema服务将失败。

5、修改slapd.conf文件的权限:

6、修改sldap.conf配置文件:如下:(主要配好红色的就ok,没有的都是被注释掉的)

复制代码
代码如下:
include /etc/openldap/schema/corba.schema
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/aconf.schema
include /etc/openldap/schema/dyngroup.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/java.schema
include /etc/openldap/schema/misc.schema
include /etc/openldap/schema/nis.schema
include /etc/openldap/schema/openldap.schema
include /etc/openldap/schema/ppolicy.schema
include /etc/openldap/schema/collective.schema
allow bind_v2
pidfile /var/run/openldap/slapd.pid argsfile /var/run/openldap/slapd.args
database bdb suffix "dc=example,dc=com" checkpoint 1024 15 rootdn
"cn=Manager,dc=example,dc=com"
rootpw redhat
directory /var/lib/ldap
index objectClass eq,pres
index ou,cn,mail,surname,givenname eq,pres,sub
index uidNumber,gidNumber,loginShell eq,pres
index uid,memberUid eq,pres,sub
database monitor
access to * by dn.exact="cn=Manager,dc=example,dc=com" read by * none
7、重启动ldap服务器:
8、创建ldap用户目录:

9、编辑一个自动创建ldap用户的脚本:

10 、执行此脚本添加用户:

11、把ldap用户,组分别导出来,到一个文件中:(例子只做了组)用户在、/etc/passwd下

12、安装软件包:

13、去它的目录下编译ldap用户组文件:

14、修改migrate_common.ph文件:

15、执行./migrate_base.pl文件,并导出到一个目录下边,进行进行修改,只留下最基本的三个配置:

16,、分别使用./migrate_passwd.pl ./migrate_group.pl编译我们已经导出的ldap用户和组文件: /mnt/user /mnt/group分别是从/etc/passwd /etc/group 导出的ldap用户和组文件

/date/user.ldif /date/group.ldif 是编译后生成的文件要以ldif结尾
17、看下/date下我们编译好的几个文件:

18、添加ldap用户和组:

首先提示输入密码,其次添加成功。

还有个用户,必须首先执行base.ldif文件,它是最基本的配置。

F. linux ldap服务器搭建需要和域绑定吗

你这个问题,说的好像不怎么清楚 如果你是说使用LDAP在LINUX搭域,然后把WINDOWS作为客户版端加入进去的话,这权种做法我没见过 但我听过,SAMBA搭域,SAMBA搭的域,WINDOWS的可以作为客户端加入域,但使用SAMBA搭域的话,建议高手这么多,新手的话...

G. 如何使用LdapConnection 类链接 Ldap服务器

C#提供了 LdapConnection 类用于连接Microsoft Active Directory 域服务或 LDAP 服务器的 TCP/IP 或 UDP LDAP 连接。
下面是连接 Ldap的连接方法和大家分享下:
static LdapConnection ldapConnection;
static string ldapServer;
static NetworkCredential credential;
static string targetOU;
static string pwd;
public void LdapBind()
{
ldapServer = "172.18.69.204:389";
targetOU = "cn=Manager,dc=tst,dc=com";
pwd = "000000";
//credential = new NetworkCredential(String.Empty, String.Empty);
credential = new NetworkCredential(targetOU, pwd);
string dn = "";
//ldapConnection = new LdapConnection(new LdapDirectoryIdentifier(ldapServer));
//ldapConnection.SessionOptions.ProtocolVersion = 3;//Ldap协议版本
//ldapConnection.AuthType = AuthType.Anonymous;//不传递密码进行连接
ldapConnection = new LdapConnection(ldapServer);
ldapConnection.AuthType = AuthType.Basic;
ldapConnection.Credential = credential;
try
{
Console.WriteLine("链接.");
ldapConnection.Bind();
Console.WriteLine("链接成功");
}
catch (Exception ee)
{
Console.WriteLine(ee.Message);
}
ldapConnection.Dispose();
}
注意
1、如果我们使用ldapConnection.AuthType = AuthType.Anonymous; 的认证方式,就一定要让Dn与Pwd为空,实现匿名认证方式,如:
credential = new NetworkCredential(String.Empty, String.Empty);
2、使用c#连接Ldap服务器,还可以使用 Novell公司的Novell.Directory.Ldap来实现。

H. 什么是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把数据存放在文件中,为提高效率可以使用基于索引的文件数据库,而不是关系数据库。类型的一个例子就是mail,其值将是一个电子邮件地址。

LDAP的信息是以树型结构存储的,在树根一般定义国家(c=CN)或域名(dc=com),在其下则往往定义一个或多个组织 (organization)(o=Acme)或组织单元(organizational units) (ou=People)。一个组织单元可能包含诸如所有雇员、大楼内的所有打印机等信息。此外,LDAP支持对条目能够和必须支持哪些属性进行控制,这是有一个特殊的称为对象类别(objectClass)的属性来实现的。该属性的值决定了该条目必须遵循的一些规则,其规定了该条目能够及至少应该包含哪些属性。例如:inetorgPerson对象类需要支持sn(surname)和cn(common name)属性,但也可以包含可选的如邮件,电话号码等属性。

I. LDAP的域需不需要搭建DNS

正常来说,你在建立域控服务器的时候就需要DNS服务起来啊1,当然也可以单独做dns服务,不过我没试过,ldap域控也一样啊,dns是解析网址,和域控的功能是两回事

J. 请问要如何架设LDAP服务器活动目录是不是LDAP服务器

活动目录不是ldap服务器,具体的怎么架设LDAP服务器看这个连接,应该会帮助你 我有视频 太大发不过去

热点内容
影视转载限制分钟 发布:2024-08-19 09:13:14 浏览:319
韩国电影伤口上纹身找心里辅导 发布:2024-08-19 09:07:27 浏览:156
韩国电影集合3小时 发布:2024-08-19 08:36:11 浏览:783
有母乳场景的电影 发布:2024-08-19 08:32:55 浏览:451
我准备再看一场电影英语 发布:2024-08-19 08:14:08 浏览:996
奥迪a8电影叫什么三个女救人 发布:2024-08-19 07:56:14 浏览:513
邱淑芬风月片全部 发布:2024-08-19 07:53:22 浏览:341
善良妈妈的朋友李采潭 发布:2024-08-19 07:33:09 浏览:760
哪里还可以看查理九世 发布:2024-08-19 07:29:07 浏览:143
看电影需要多少帧数 发布:2024-08-19 07:23:14 浏览:121