openldap主机搭建
openldap服務(wù)端的安裝
1.安裝相關(guān)openldap的軟件
yum -y install openldap openldap-servers openldap-clients openldap-devel compat-openldap2.安裝完成后就可以在/etc/passwd文件中看到ldap用戶
3.openldap相關(guān)的文件配置
/etc/openldap/slapd.conf:OpenLDAP的主配置文件,記錄根域信息,管理員名稱,密碼,日志,權(quán)限等
/etc/openldap/slapd.d/:這下面是/etc/openldap/slapd.conf配置信息生成的文件,每修改一次配置信息,這里的東西就要重新生成
/etc/openldap/schema/:OpenLDAP的schema存放的地方
/var/lib/ldap/*:OpenLDAP的數(shù)據(jù)文件
/usr/share/openldap-servers/slapd.conf.obsolete 模板配置文件
/usr/share/openldap-servers/DB_CONFIG.example 模板數(shù)據(jù)庫(kù)配置文件
OpenLDAP監(jiān)聽(tīng)的端口:
默認(rèn)監(jiān)聽(tīng)端口:389(明文數(shù)據(jù)傳輸)
加密監(jiān)聽(tīng)端口:636(密文數(shù)據(jù)傳輸)
4.初始化openldap配置
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG chown ldap:ldap /var/lib/ldap/DB_CONFIG5.啟動(dòng)openldap服務(wù)
systemctl start slapd systemctl enable slapd systemctl status slapd6.為openldap生成管理員密碼
slappasswd -s 123456 #這里會(huì)生成一串{SSHA}***的東西,這個(gè)東西就是SSHA加密的密碼,后面操作需要這串密碼,這里的123456就是為加密前的密碼7.新建一個(gè)名為rootpwd.ldif的文件夾,將下方寫(xiě)入該文件
#gvim rootpwd.ldifdn: olcDatabase={0}config,cn=config changetype: modify add: olcRootPW olcRootPW: {SSHA}*** #這里的olcRoolPW后面對(duì)應(yīng)的{SSHA}就是第6步生成的加密密碼ldif即LDAP Data Interchange Format,是LDAP中數(shù)據(jù)交換的一種文件格式。文件內(nèi)容采用的是key-value形式,注意value后面不能有空格。
其實(shí)這是在修改數(shù)據(jù)庫(kù)的信息,數(shù)據(jù)庫(kù)的配置在/etc/openldap/slapd.d/cn=config文件夾下。通過(guò)命令將配置在線覆蓋進(jìn)數(shù)據(jù)庫(kù)里。
上面內(nèi)容中dn即distingush name
olc即Online Configuration,表示寫(xiě)入LDAP后不需要重啟即可生效
changetype: modify表示修改一個(gè)entry,changetype的值可以是add,delete, modify等。
add: olcRootPW表示對(duì)這個(gè)entry新增了一個(gè)olcRootPW的屬性
olcRootPW: {SSHA}l**指定了屬性值
8.讀取rootpwd.ldif文件信息
ldapadd -Y EXTERNAL -H ldapi:/// -f rootpwd.ldif如果上訴命令報(bào)錯(cuò)
[root@openldap-master opt]# ldapadd -Y EXTERNAL -H ldapi:/// -f chrootpw.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry “olcDatabase={0}config,cn=config”
ldap_modify: Inappropriate matching (18)
additional info: modify/add: olcRootPW: no equality matching rule
解決辦法: 修改modify.ldif中對(duì)應(yīng)選項(xiàng)的"add"為"replace"即可
9.導(dǎo)入schema
向 LDAP 中導(dǎo)入一些基本的 Schema預(yù)設(shè)模式。這些 Schema 文件位于 /etc/openldap/schema/ 目錄中,定義了我們以后創(chuàng)建的條目可以使用哪些屬性,這里先全部導(dǎo)入。
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif10.設(shè)定默認(rèn)域,新建一個(gè)根節(jié)點(diǎn)
(1) 使用slappadd -s *** 再生成一個(gè)加密密碼
根節(jié)點(diǎn)管理員密碼與 OpenLDAP 管理員密碼不是同一回事!一個(gè) LDAP 數(shù)據(jù)庫(kù)可以包含多個(gè)目錄樹(shù)。
#slappasswd -s 123456
(2)先想好一個(gè)域名,然后再創(chuàng)建一個(gè)名為domain.ldif的文件,
#我這里的域名為openldap.com,這里的加密密碼使用第10步生成的密碼 dn: olcDatabase={1}monitor,cn=config changetype: modify replace: olcAccess olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read by dn.base="cn=admin,dc=openldap,dc=com" read by * nonedn: olcDatabase={2}hdb,cn=config changetype: modify replace: olcSuffix olcSuffix: dc=openldap,dc=comdn: olcDatabase={2}hdb,cn=config changetype: modify replace: olcRootDN olcRootDN: cn=admin,dc=openldap,dc=comdn: olcDatabase={2}hdb,cn=config changetype: modify replace: olcRootPW olcRootPW: {SSHA}oh1TTIAb2e4PR0/MVQksCnLB82ph+Mr1dn: olcDatabase={2}hdb,cn=config changetype: modify replace: olcAccess olcAccess: {0}to attrs=userPassword,shadowLastChange by dn="cn=admin,dc=openldap,dc=com" write by anonymous auth by self write by * none olcAccess: {1}to dn.base="" by * read olcAccess: {2}to * by dn="cn=admin,dc=openldap,dc=com" write by * read(3)執(zhí)行domain.ldif文件
ldapmodify -Y EXTERNAL -H ldapi:/// -f domain.ldif11.添加基礎(chǔ)的目錄
參考上圖,我們建立一個(gè)基礎(chǔ)的openldap目錄
創(chuàng)建一個(gè)名為base.ldif的文件,將以下命令寫(xiě)入
執(zhí)行base.ldif文件,根據(jù)提示輸入第10步生成未加密的密碼
ldapadd -x -D cn=admin,dc=openldap,dc=com -W -f base.ldif
12.使用LDAP Admin進(jìn)行連接測(cè)試
下載安裝LDAP Admin軟件,新建一個(gè)連接,填寫(xiě)的信息如下,HOST就是該openldap的ip地址
總結(jié)
以上是生活随笔為你收集整理的openldap主机搭建的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: linux基本功之fsck命令详解
- 下一篇: Excel批量计算体积的2种操作方法