一级女人毛片人一女人-一级女性大黄生活片免费-一级女性全黄久久生活片-一级女性全黄生活片免费-国产美女在线一区二区三区-国产美女在线观看

始創于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊有禮 登錄
  • 掛牌上市企業
  • 60秒人工響應
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補償
您的位置: 網站首頁 > 幫助中心>文章內容

基于Linux操作系統的目錄服務的實現

發布時間:  2012/8/26 18:29:09
本文的目的是通過使用Linux系統支持的應用軟件包(openldap),快速實現基于LDAP協議的目錄服務系統來支持Windows消息簿中的用戶查詢功能。作者從用戶的觀點介紹了目錄服務的特點,并比較了其與通常使用的關系數據庫在處理數據上的差別,作者只是普通的Linux的愛好者,嘗試將所學到的一點Linux知識進行綜合應用,希望對大家有所啟發。

  關鍵字:目錄、LDAP。

  如果需要開發一種提供公共信息查詢的系統,如通過用戶姓名能夠獲得該用戶的郵件地址、家庭住址等信息,如Yahoo提供的People search服務和Windows OutLook中提供的消息簿功能。一般的設計方法可能是采用基于WEB的數據庫設計方式,即前端使用瀏覽器而后端使用WEB服務器加上關系數據庫。后端在Windows的典型實現可能是Windows NT + IIS + Acess數據庫或者是SQL服務器,IIS和數據庫之間通過ASP技術使用ODBC進行連接,達到通過填寫表單查詢數據的功能;后端在Linux系統的典型實現可能是Linux + Apache + Postgresql,Apache和數據庫之間通過PHP3提供的函數進行連接。使用上述方法的缺點是后端關系數據庫的引入導致系統整體的性能降低和系統的管理比較繁瑣,因為需要不斷的進行數據類型的驗證和事務的完整性的確認;并且前端用戶對數據的控制不夠靈活,用戶權限的設置一般只能是設置在表一級而不是設置在記錄一級。

  目錄服務的推出主要是解決上述數據庫中存在的問題。目錄與關系數據庫相似,是指具有描述性的基于屬性的記錄集合,但它的數據類型主要是字符型,為了檢索的需要添加了BIN(二進制數據)、CIS(忽略大小寫)、CES(大小寫敏感)、TEL(電話型)等語法(Syntax),而不是關系數據庫提供的整數、浮點數、日期、貨幣等類型,同樣也不提供象關系數據庫中普遍包含的大量的函數,它主要面向數據的查詢服務(查詢和修改操作比一般是大于10:1),不提供事務的回滾(rollback)機制,它的數據修改使用簡單的鎖定機制實現All-or-Nothing,它的目標是快速響應和大容量查詢并且提供多目錄服務器的信息復制功能。

  LDAP(Lightweight Directory Acess Protocol)是目錄服務在TCP/IP上的實現(RFC 1777 V2版和RFC 2251 V3版)。它是對X500的目錄協議的移植,但是簡化了實現方法,所以稱為輕量級的目錄服務。在LDAP中目錄是按照樹型結構組織,目錄由條目(Entry)組成,條目相當于關系數據庫中表的記錄;條目是具有區別名DN(Distinguished Name)的屬性(Attribute)集合,DN相當于關系數據庫表中的關鍵字(Primary Key);屬性由類型(Type)和多個值(Values)組成,相當于關系數據庫中的域(FIEld)由域名和數據類型組成,只是為了方便檢索的需要,LDAP中的Type可以有多個Value,而不是關系數據庫中為降低數據的冗余性要求實現的各個域必須是不相關的。LDAP中條目的組織一般按照地理位置和組織關系進行組織,非常的直觀。LDAP把數據存放在文件中,為提高效率可以使用基于索引的文件數據庫,而不是關系數據庫。LDAP協議集還規定了DN的命名方法、存取控制方法、搜索格式、復制方法、URL格式、開發接口等。

  Linux支持的LDAP服務器一般有Michigan大學開發的免費軟件包和Openldap組織基于Michigan大學的開發包提供的Openldap免費軟件發行包,其中Openldap發行包安裝配置更加簡單。RedHat 6.1 Linux發行版中就包含了Openldap軟件包,該發行版可從計算機世界報信息服務中心得到,對LDAP的支持是Redhat6.1提供的一個重要擴展,(參見Redhat 6.1產品介紹),以下詳細介紹在Linux中安裝并配置Openldap的方法,以及使用該軟件包為Windows Outlook中的帳號提供消息簿的后端。

  1.安裝Openldap-1.2.7-2.rpm軟件包

  如果不是使用的RedHat 6.1直接進行系統安裝,可以單獨使用管理器rpm進行獨立安裝,其格式為:

  

   
    rpm - i openldap-1.2.7-2.rpm 
   
    rpm - i openldap-devel-1.2.7-2.rpm
  

  2.相關文件

  安裝完畢后,相應的執行文件主要有:

  /usr/sbin/slapd是單獨運行的LDAP看守進程,它監聽客戶端請求,端口號一般是389。

  /usr/sbin/slurpd是單獨運行的LDAP更新和復制進程,它能夠把本地數據庫的變化通知相關服務器進行更新。

  /usr/sbin/ldifldbm、/usr/sbin/ldbmcat等將LDIF(LDAP Directory Interchange Format)文件(實際是純文本形式的文件)轉化為gdbm形式的二進制數據文件以及相關的工具。

  /usr/bin/ldapsearch、/usr/bin/ldapdelete、/usr/bin/ldapmodify、/usr/bin/ud等是LDAP的客戶端軟件,能夠完成對目錄的搜索、添加、修改、刪除等功能。

  生成的配置文件在/etc/openldap目錄下,主要的配置文件有:

  slapd.conf是slapd和slurpd的配置文件,其一般形式如下:

  

  defaultaccess read 
   
  access to attr=userpassWord by self write by * compare 
   
  access to attr=mail by self write by * read  
   
  include /etc/openldap/slapd.at.conf 
   
  include /etc/openldap/slapd.oc.conf 
   
  scheMacheck off 
   
  #referral ldap://sunshine.mccc.net 
   
  pidfile /var/run/slapd.pid 
   
  argsfile /var/run/slapd.args 
   
  ######################################## 
   
  # ldbm database definitions 
   
  ######################################## 
   
  database ldbm 
   
  #suffix "dc=your-domain, dc=com" 
   
  #suffix "o=Your Organization Name, c=US" 
   
  suffix "o=mccc, c=US" 
   
  directory /usr/tmp 
   
  rootdn "cn=root, o=mccc, c=US" 
   
  rootpw secret 
   
  #replica host=zx.mccc.net:389  
    binddn="ou=people, o=mccc, c=US" bindmethod=simple

  對這個配置文件的關鍵修改是對suffix后綴為本地的組織形式,可以按照域名的形式,也可以按照組織模式。其中的rootdn定義了本地目錄樹的根,rootpw即是相對于本目錄樹的管理員口令,缺省是使用的明文為“secret”。其中的replica指定備份目錄服務器的地址,如果是備份服務器則不需要replica配置項,而是添加udpatedn=主目錄服務器的地址,同時指定referral為主目錄服務器。同時,缺省的目錄數據是以ldbm形式(Linux中實際gdbm格式)存放在/usr/tmp目錄中。Access定義了對目錄信息的訪問信息,它是基于條目的,即用戶自己可以通過輸入自己的口令修改自己的數據,其口令存放在自己的口令域(userpassWord)中。

  ldap.conf是本地系統LDAP客戶的缺省配置,啟動slapd后可以使用客戶端軟件使用ldap.conf的信息作為缺省信息。根據我們的具體情況,將其修改為如下形式:

 

  BASE O=mccc,C=US 
   
  HOST sunshine.mccc.net

本文出自:億恩科技【www.laynepeng.cn】

服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經營性ICP/ISP證:贛B2-20080012
  • 服務器/云主機 24小時售后服務電話:0371-60135900
  • 虛擬主機/智能建站 24小時售后服務電話:0371-60135900
  • 專注服務器托管17年
    掃掃關注-微信公眾號
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權所有  地址:鄭州市高新區翠竹街1號總部企業基地億恩大廈  法律顧問:河南亞太人律師事務所郝建鋒、杜慧月律師   京公網安備41019702002023號
      0
     
     
     
     

    0371-60135900
    7*24小時客服服務熱線