當前位置:首頁 » 城管服務 » 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