Linux系統下openldap源碼部署詳細教程,linuxopenldap

來源:互聯網
上載者:User

Linux系統下openldap源碼部署詳細教程,linuxopenldap

Linux系統下openldap源碼部署詳細教程。

一。環境

伺服器:基於CentOS的-7-x86_64-1511

伺服器IP:172.18.12.203

二,軟體擷取OpenLDAP的

OpenLDAP官網:http : //www.openldap.org/software/download/

OpenLDAP 2.4.44:ftp ://ftp.openldap.org/pub/OpenLDAP/openldap-release/openldap-2.4.44.tgz

BDB

berkeley-db-5.1.29 (OpenLDAP當前與6.x版本不相容,READEME中明確寫出相容4.4?4.8或5.0?5.1):

http://download.oracle.com/berkeley-db/db-5.1.29.tar.gz

LDAP管理員

ldapadmin 2015.2:

官網:http://www.ldapbrowser.com/download.htm

64位:http : //softerra-downloads.com/ldapadmin/ldapadmin-4.13.16704.0-x64-eng.msi

三。準備

1. 關閉selinux的;

2. 開啟防火牆tcp 389/636連接埠。

# TCP 389是OpenLDAP的明文傳輸連接埠,TCP 636是SSL加密傳輸的連接埠。

#centos7預設內建firewalld服務,可以停用之後安裝iptables。

四,安裝的OpenLDAP1. 依賴包
#涉及libtool-ltdl與libtool-ltdl-devel,如不安裝,在編譯時間報錯:配置:錯誤:找不到libtool ltdl.hyum install * ltdl * -y
2. 安裝BDB
#必須在解壓包的build_unix目錄中編譯安裝,否則會報錯 [根@本地?] #坎德拉/ USR /本地/ SRC / [根@本地SRC] #焦油-zxvf DB-5.1.29.tar.gz [根@本地SRC] #CD DB-5.1.29 / build_unix / [根@本地build_unix] #../dist/configure首碼=的/ usr /本地/ BerkeleyDB的-5.1.29 [根@本地build_unix] #化妝 [根@本地build_unix] #make install的
3. 更新LIB庫
#保證在後面編譯的OpenLDAP時能找到的lib和包括下的庫 [根@本地build_unix] #坎德拉/ USR /本地/ SRC / [根@本地SRC] #回聲“/usr/local/berkeleydb-5.1.29/ LIB /”> /etc/ld.so.conf中 [根@本地SRC] #LDCONFIG -v
4. 安裝的OpenLDAP
#編譯選項可以通過./configure --help查看; #其中make test一步時間較長; #如果未設定CPPFLAGS,配置過程可能會提示configure:error:BDB / HDB:BerkeleyDB not available或者configure:error:BerkeleyDB版本與BDB / HDB後端不相容 [根@本地?] #坎德拉/ USR /本地/ SRC / [根@本地SRC] #焦油-zxvf OpenLDAP的-2.4.44.tgz [根@本地SRC] #CD的OpenLDAP-2.4 .44 [root @ localhost openldap-2.4.44] #./configure --prefix = / usr / local / openldap-2.4.44 --enable-syslog --enable-modules --enable-debug --with-tls CPPFLAGS = -I / usr / local / berkeleydb-5.1.29 / include / LDFLAGS = -L / usr / local / berkeleydb-5.1.29 / lib / [root @ localhost openldap-2.4.44]#使依賴 [根@本地的OpenLDAP-44年2月4日] #使 [根@本地的OpenLDAP-44年2月4日] #使測試 [根@本地的OpenLDAP-44年2月4日] #使安裝
5. 設定可執行命令
#對OpenLDAP的用戶端(bin)中與伺服器端(sbin目錄)相關執行檔添加軟連結,也可以通過增加環境變數的方式設定[根@本地的OpenLDAP-44年2月4日] #CD /usr/local/openldap-2.4 0.44 [根@本地的OpenLDAP-44年2月4日] #LN -s /usr/local/openldap-2.4.44/bin/*的/ usr / local / bin中/ [根@本地的OpenLDAP-44年2月4日] #LN - s /usr/local/openldap-2.4.44/sbin/* / usr / local / sbin /
五,簡單配置1. 安裝完成的OpenLDAP的-44年2月4日目錄結構

OpenLDAP的安裝完成後相關目錄承載的功能如下:

bin / - 用戶端工具如ldapadd,ldapsearch

etc / - 包含主設定檔slapd.conf,schema,DB_CONFIG等

包括/

LIB /

libexec / - 服務端啟動工具slapd

sbin / - 服務端工具如slappasswd

分享/

var / --bdb資料,日誌存放目錄

2. 配置的rootdn密碼(可選)
#設定rootdn密碼,這裡設定為123456; #這樣rootdn密碼為密文方式,複製輸出密文到主設定檔rootdn對應的位置即可,如果不想麻煩,可以忽略此步,在主設定檔中使用明文。即可 [根@本地?] #CD /usr/local/openldap-2.4.44/ [根@本地的OpenLDAP-44年2月4日] #slappasswd 新密碼:重新輸入新的密碼:{SSHA} K9 + WK / t1e0V0K6pUMOyTsaTwkDBNED iP
3. 主設定檔的slapd.conf
[根@本地的OpenLDAP-44年2月4日] #CD /usr/local/openldap-2.4.44/etc/openldap/ [根@本地的OpenLDAP] #VIM的slapd.conf #以下修改紫紅色字型的英文未做修改的部分,紅色字型是有修改部分,藍色字型表示新增部分#模式預設只有core.schema中,各級需要添加,這裡將同設定檔一個目錄的架構目錄中有的架構檔案都加到設定檔中; 5 include /usr/local/openldap-2.4.44/etc/openldap/schema/core.schema 6 include /usr/local/openldap-2.4.44/etc/openldap/schema/collective.schema7包括/usr/local/openldap-2.4.44/etc/openldap/schema/corba.schema8包括/usr/local/openldap-2.4.44/etc/openldap/schema/cosine.schema9 include /usr/local/openldap-2.4.44/etc/openldap/schema/duaconf.schema10包括/usr/local/openldap-2.4.44/etc/openldap/schema/dyngroup.schema11包括/usr/local/openldap-2.4.44/etc/openldap/schema/inetorgperson.schema12包括/usr/local/openldap-2.4.44/etc/openldap/schema/java.schema13包括/usr/local/openldap-2.4.44/etc/openldap/schema/misc.schema14包括/usr/local/openldap-2.4.44/etc/openldap/schema/nis.schema15 include /usr/local/openldap-2.4.44/etc/openldap/schema/openldap.schema16 include /usr/local/openldap-2.4.44/etc/openldap/schema/pmi.schema17包括/usr/local/openldap-2.4.44/etc/openldap/schema/ppolicy.schema25 pidfile /usr/local/openldap-2.4.44/var/run/slapd.pid26 argsfile /usr/local/openldap-2.4.44/var/run/slapd.args#新增記錄檔層級與路徑,需要在編譯時間--enable調試,否則記錄檔輸出,不影響偵錯模式; 28記錄層級25629 logfile /usr/local/openldap-2.4.44/var/slapd.log#這裡使用mdb做後端資料庫,也可以修改為“bdb”參數,在OpenLDAP官方文檔“11.4。LMDB”章節中有介紹mdb是推薦使用的後端資料庫; 67資料庫mdb#使用mdb做後端資料庫時,根據官方文檔中說明需要設定一個空間值,“除了最小配置需要的常用參數之外,mdb後端需要設定最大大小,這應該是最大的資料庫有望增長(以位元組為單位),檔案系統還必須提供足夠的空間來容納這個大小。“;如果使用bdb做後端資料庫,需要將此項參數注釋掉; 68最大尺寸1073741824#修改網域名稱及管理員賬戶名; 69尾碼“dc = sys,dc = com”70 rootdn“cn = admin,dc = sys,dc = com”#使用密文密碼,即前面使用slappasswd產生的密文; 74 rootpw {SSHA} K9 + WK / t1e0V0K6pUMOyTsaTwkDBNED iP#OpenLDAP的資料目錄,採用MDB時,在相應目錄產生” data.mdb中“與” lock.mdb “檔案;採用BDB時,在相應目錄產生” dn2id.bdb “與” id2entry.bdb “及多個” __db.00 *“檔案 .78目錄/usr/local/openldap-2.4.44/var/openldap-data80索引objectClass eq
4. 初始化OpenLADP(可選)
#如果採用mdb做後端資料庫,此步驟可忽略,DB_CONFIG是bdb / hdb資料庫使用的; #與主設定檔中的配置有關,主設定檔確定使用bdb與資料存放路徑 [root @ localhost openldap]#CD /usr/local/openldap-2.4.44/var/openldap-data/ [根@本地OpenLDAP的資料]#CP DB_CONFIG.example DB_CONFIG
5. 啟動OpenLADP
#直接在後台工作; #非root使用者不能監聽連接埠1?1024,如果是非root使用者,有可能需要重新定義服務連接埠 [root @ localhost?] #/ usr/local/openldap-2.4.44/libexec/slapd#在前端工作,輸出debug資訊 [root @ localhost?] #/usr/local/ openldap-2.4.44/libexec /slapd -d 256
6. 驗證
[根@本地?] #ldapsearch的-x -b '' -s堿'(對象類= *)' #或者[根@本地?]#ldapsearch的-x -b '' -s堿'(對象類= *)' namingContexts #或者使用netstat -tunlp | grep 389,ps -ef | grep slapd,ps aux | grep slapd等也可。
示,說明的OpenLDAP已經啟動運行成功:

六。簡單使用(樣本)1. 建立1個管理員帳號編輯LDIF檔案
#注意與slapd.conf檔案中保持一致,下面的命令同理,#本人曾在下面的ldapadd命令中將“admin”寫成了“amdin”,導致一直報“ldap_bind:Invalid credentials(49)”錯每次都是翻回上一條命令執行),排查了3個小時左右才發現。 [根@本地?] #VIM test.ldifdn:dc = sys,dc = comobjectclass:dcObjectobjectclass:組織o:SYS.Incdc:sysdn:cn = admin,dc = sys,dc = comobjectclass:organizationalRolecn:admin
插入資料庫
[根@本地?] #ldapadd的-x -D “CN =管理員,DC = SYS,DC = COM” -W -f test.ldif

可以看到帳號已經加入到LDAP中:

驗證
[根@本地?] #ldapsearch的-x -b 'DC = SYS,DC = COM' '(objectClass的= *)'

2. 建立1個具有部門屬性的員工編輯LDIF檔案
#這裡其實是先建立1個部門”它”,再在”它”部門建立了1個員工,實際上是兩條命令 [根@本地?] #VIM test2.ldifdn:ou = it,dc = sys,dc = comou:它objectClass:organizationalUnitdn:cn = test1,ou = it,dc = sys,dc = comou:它cn:test1sn:t1objectClass:inetOrgPersonobjectClass:organizationalPerson
插入資料庫
[根@本地?] #ldapadd的-x -D “CN =管理員,DC = SYS,DC = COM” -W -f test2.ldif

可以看到已經員工帳號加入到LDAP中:

驗證
[根@本地?] #ldapsearch的-x -b 'DC = SYS,DC = COM' '(objectClass的= *)'

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.