【JMeter4.0學習(二)】之搭建openLDAP在windows8.1上的安裝配置以及JMeter對LDAP服務器的性能測試腳本開發

目錄:php

  1. 配置搭建OpenLDAP
  2. 給數據庫添加數據
  3. 測試查詢剛剛插入的數據
  4. 客戶端介紹

1、概述html

什麼是LDAP?java

輕量級目錄訪問協議:

所述輕量級目錄訪問協議,或 LDAP,是一種應用協議用於查詢和修改目錄服務運行在TCP / IP經過維基百科).LDAP全稱是一個輕量級的目錄訪問協議,它是創建在TCP / IP基礎以前的用戶查詢和修改目錄服務的。這是照着wiki翻譯的,可是有人要問了什麼是目錄Service(目錄服務)?linux

按照wiki的說法的話講:在軟件行業,目錄就如同一個字典,他使得經過某一名稱去查找綁定在該名稱上的值得方式成爲一種可能。有點相似Java中Map的概念.a 目錄服務僅僅是一個存儲,組織和提供對目錄中信息的訪問的軟件系統。一個目錄服務就是一個簡單的軟件系統,在這個目錄上提供了存取和組織信息的功能.LDAP目錄中能夠存儲各類類型的數據:電子郵件地址,郵件路由信息,人力資源數據,公用密匙,聯繫人列表,等等。數據庫

 

2、安裝測試環境windows

openLDAP官方網站:http://www.openldap.org/服務器

openLDAP官網只提供了linux平臺的相關安裝文件,windows平臺的安裝包能夠到如下一些網站下載:數據結構

  • http://www.userbooster.de/download/openldap-for-windows.aspx
  • http://sourceforge.net/projects/openldapwindows/files/
  • http://sourceforge.jp/projects/openldapwin32/releases/

 

3、安裝過程app

按照提示 一直 next ,直到安裝完成:dom

安裝

 

 

 

 

 secret

 

 

 

 

 

 

 

 

安裝完成後,在系統服務中(運行>services.msc),找到 OpenLDAP Service,先中止服務,再把啓動類型修改爲手動,便於本身的測試。

 

4、啓動配置

一、配置搭建OpenLDAP

安裝目錄:F:\ruanjian\OpenLDAP

編輯文件:F:\ruanjian\OpenLDAP\slapd.conf 找到以下內容:

 

 

database    bdb
suffix        "dc=maxcrc,dc=com"
rootdn        "cn=Manager,dc=maxcrc,dc=com"
rootpw    {SSHA}GQkk5tV5LLQIRzctKNfW/B46ZLlhH/dg

下面的根據本身的須要修改

database    bdb
suffix        "dc=maxcrc(可修改),dc=com"
rootdn        "cn=Manager,dc=maxcrc(可修改),dc=com"
rootpw    {SSHA}GQkk5tV5LLQIRzctKNfW/B46ZLlhH/dg(可修改密碼)

======================擴展======================

這裏引伸一下LDAP主要的簡稱含義:

  • o– organization(組織-公司)
  • ou – organization unit(組織單元-部門)
  • c – countryName(國家)
  • dc – domainComponent(域名)
  • sn – suer name(真實名稱)
  • cn – common name(經常使用名稱)

①設置manager的訪問密碼,CMD中鍵入slappasswd,按照提示輸入兩遍密碼,即生成了加密後的密碼串

②(也能夠用MD5加密方式,命令:slappasswd -h {MD5}),複製粘貼到slapd.conf文件的rootpw部分(本文不用,由於用的默認密碼,若是用的本身的密碼能夠用這個辦法加密

======================擴展======================

打開控制檯,切換到openLDAP安裝目錄下,啓動openLDAP,命令以下:slapd -d 1

可是cmd一直報:

通過痛苦的查詢,忽然發現顯示數據庫被佔用,解決辦法:進入「服務」中,先中止服務,再進入cmd再輸入「slapd -d 1

 

 

 

啓動成功!搭建LDAP服務器完成!

(注:以上內容參考地址《圖文介紹openLDAP在windows上的安裝配置》)

 二、給數據庫添加數據

新建一個文件:D:\Program Files (x86)\OpenLDAP\mydemo.ldif ,內容以下:

dn: dc=maxcrc,dc=com
changetype: add(這一行有問題別複製,下面有說明) objectclass: top objectclass: dcobject objectclass: organization dc: maxcrc o: swust dn: o=swust,dc=maxcrc,dc=com
changetype: add(這一行有問題別複製,下面有說明) objectclass: organization o: swust dn: ou=Developer,o=swust,dc=maxcrc,dc=com
changetype: add(這一行有問題別複製,下面有說明) objectclass: organizationalUnit ou: Developer dn: cn=xxx xxx,ou=Developer,o=swust,dc=maxcrc,dc=com
changetype: add(這一行有問題別複製,下面有說明) objectclass: person sn:xxx cn:xxx xxx dn: ou=Tester,o=swust,dc=maxcrc,dc=com
changetype: add(這一行有問題別複製,下面有說明) objectclass: organizationalUnit ou: Tester

上面定義格式內容,參考文檔《ldif的數據結構及一個DEMO》。

mydemo.ldif保存爲txt文件格式,而且編碼要求爲ANSI

tips:格式要嚴格,每行的開頭和末尾不能有空格

而後再命令行中輸入「slapadd -v -l ./mydemo.ldif」,由於我沒有沒有」ldapadd「這個命令。

可是有的小夥伴會出現下列錯誤:

①str2entry: entry -1 has no dn

slapadd: could not parse entry (line=1)

通過查詢資料得知多是由於txt文檔編碼問題,以前一直用的「UTF-8」編碼,保存變爲「ANSI」編碼就能夠了。

還有一種是報:(changetype):attribute type undefined,剛剛上面說不要複製的問題】

通過查詢得知我原來添加了「changetype: add」屬性,不要這一行就能夠了。

③還有一種簡單的問題就是database already in use

這個是由於數據庫被佔用了,須要先關閉LDAP服務器才能夠。(把下面的CMD命令行關閉就能夠)

由於slapadd 只能對本地的LDAP服務進行操做,操做時本地LDAP服務必須先中止

^_^困擾了我一天的問題終於解決啦~~~

三、測試查詢剛剛插入的數據

先啓動LDAP服務,參照上面描述:命令行輸入「slapd -d 1」

而後,命令行cd定位到「F:\ruanjian\OpenLDAP\ClientTools」文件夾下,再輸入「ldapsearch -x -b "dc=maxcrc,dc=com" "(objectclass=*)"」查詢

查詢結果以下:

驗證成功噢耶!

相關其餘文檔參考:《LDIF修改ldap記錄或配置示例》、《LDAP讀書筆記4-LDIF文件

 四、客戶端介紹

網上搜索到一個客戶端:LdapBrowser282  附件提供相關下載:LdapBrowser282.zip

下載解壓後直接雙擊:lbe.bat 文件便可運行。

 

點擊上圖中的 Fetch DNs 按鈕會自動獲取相關的DN信息的。

上面的輸入的密碼就是以前安裝過程當中的那個密碼(若是本身沒有修改過)

能夠正確查詢到以前添加的相關信息。

 

5、JMeter創建一個擴展LDAP服務器的性能測試腳本開發(搜索爲例)

一、添加線程組:

 

 

二、默認配置(登錄配置元件、LDAP請求默認值)

 

 

用戶名、密碼、服務器、端口、DN都跟上面講的客戶端一致,不細說了。

三、添加LDAP請求

①首先能夠添加「簡單控制器」(無關緊要),在控制器下添加兩個「擴展LDAP請求

②第一個「擴展LDAP請求」的測試配置選擇「Thread Bind」(必選)、「Connection timeout」(非必填)

 

 ③第二個「擴展LDAP請求」的測試配置選擇「Thread Bind」(必選)、「Connection timeout」(非必填)

 

導入條目顯示:

客戶端顯示:

 

search base:定位到根節點

search filter:搜索篩選器(詳情見下)

具體文字解釋說明能夠參照:《Jmeter—擴展LDAP測試》、《Jmeter創建一個擴展LDAP測試計劃

------------------------------------------------------------------------------------------------------------

一、search base:(可選) 進入searchbase下你想執行搜索,相對於basedn,用於綁定請求的線程。
   空的時候,做爲搜索basedn基地,這文件是很重要的,若是你想使用一個「基本項」或「一級」的搜索

   在Search base域中輸入搜索的根節點,即RDN。若是此域爲空,將使用基礎的DN做爲搜索的根節點。

二、search filter:進入searchfilter,任何像樣的LDAP搜索篩選器會作,可是如今,使用一些簡單的,喜歡 (sn = Doe) 或 (cn = *)
三、scope:(可選) 範圍字段中輸入範圍,它有三個選擇:
 (1)baseobject搜索
  只使用給定searchbase,只有檢查屬性或存在。
 (2)onelevel搜索
  只搜索一個水平低於給定searchbase使用
 (3)子樹搜索
  搜索對象在任什麼時候候低於給定basedn
四、Size limit:(可選) 大小限制,指定返回條目的最大數量,
五、Time limit:(可選) 時間限制,指定最大的毫秒數,服務器可使用來執行搜索。 這不是應用程序將等待的最長時間。
  很大returnset返回時,從一個很是快的服務器,在一個很是緩慢,你可能須要等待很長時間搜索請求的完成,可是這個參數不會影響。
六、Attributes:(可選) 你想要在搜索答案屬性。 這能夠用來限制大小的答案,特別是當有很是大的屬性(好比一個對象 jpegPhoto)。 有三種可能性:
 (1)離開空(默認設置也必須是空的)這將返回全部屬性。
 (2)放在一個空值( 」「 ),它將請求一個不存在的屬性,因此在現實中它沒有返回任何屬性的屬性,用分號隔開。 它將只返回所請求的屬性
七、Return object:(可選) 返回對象。 檢查將返回全部java對象屬性,將添加這些請求的屬性,如上面指定的。
  不意味着沒有java對象屬性將返回。
八、Dereference aliases:(可選) 廢棄的別名。 檢查將意味着它將跟隨引用,不不會說。
九、Parse the search results:(可選) 解析搜索結果。 檢查將意味着它會致使響應數據,不不會說。

------------------------------------------------------------------------------------------------------------

四、添加監聽器

 

五、點擊運行,而且在「查看結果樹」中查看響應結果數據

 

 

 至此,win8.1系統搭建LDAP以及JMeter測試腳本開發部分截止。

對LDAP的性能測試還能夠參照:Jmeter—擴展LDAP測試》、《Jmeter創建一個擴展LDAP測試計劃

包括(對比,修改、刪除等測試請求)

==============================================================================

附:LDAP學習資料

LDAP的特定錯誤

https://www.cnblogs.com/phpliu/archive/2013/09/24/3336713.html

大神:http://seanlook.com/2015/01/22/openldap_ldif_example/

小申:https://blog.csdn.net/jiujiuming/article/details/70057904

配置:http://www.micmiu.com/enterprise-app/sso/openldap-windows-config/

錯誤總結:https://blog.csdn.net/zdwzzu2006/article/details/8550910

error:http://qxjabc.blog.163.com/blog/static/109450820100276465324/

相關文章
相關標籤/搜索