openldap主机搭建
openldap服務端的安裝
1.安裝相關openldap的軟件
yum -y install openldap openldap-servers openldap-clients openldap-devel compat-openldap2.安裝完成后就可以在/etc/passwd文件中看到ldap用戶
3.openldap相關的文件配置
/etc/openldap/slapd.conf:OpenLDAP的主配置文件,記錄根域信息,管理員名稱,密碼,日志,權限等
/etc/openldap/slapd.d/:這下面是/etc/openldap/slapd.conf配置信息生成的文件,每修改一次配置信息,這里的東西就要重新生成
/etc/openldap/schema/:OpenLDAP的schema存放的地方
/var/lib/ldap/*:OpenLDAP的數據文件
/usr/share/openldap-servers/slapd.conf.obsolete 模板配置文件
/usr/share/openldap-servers/DB_CONFIG.example 模板數據庫配置文件
OpenLDAP監聽的端口:
默認監聽端口:389(明文數據傳輸)
加密監聽端口:636(密文數據傳輸)
4.初始化openldap配置
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG chown ldap:ldap /var/lib/ldap/DB_CONFIG5.啟動openldap服務
systemctl start slapd systemctl enable slapd systemctl status slapd6.為openldap生成管理員密碼
slappasswd -s 123456 #這里會生成一串{SSHA}***的東西,這個東西就是SSHA加密的密碼,后面操作需要這串密碼,這里的123456就是為加密前的密碼7.新建一個名為rootpwd.ldif的文件夾,將下方寫入該文件
#gvim rootpwd.ldifdn: olcDatabase={0}config,cn=config changetype: modify add: olcRootPW olcRootPW: {SSHA}*** #這里的olcRoolPW后面對應的{SSHA}就是第6步生成的加密密碼ldif即LDAP Data Interchange Format,是LDAP中數據交換的一種文件格式。文件內容采用的是key-value形式,注意value后面不能有空格。
其實這是在修改數據庫的信息,數據庫的配置在/etc/openldap/slapd.d/cn=config文件夾下。通過命令將配置在線覆蓋進數據庫里。
上面內容中dn即distingush name
olc即Online Configuration,表示寫入LDAP后不需要重啟即可生效
changetype: modify表示修改一個entry,changetype的值可以是add,delete, modify等。
add: olcRootPW表示對這個entry新增了一個olcRootPW的屬性
olcRootPW: {SSHA}l**指定了屬性值
8.讀取rootpwd.ldif文件信息
ldapadd -Y EXTERNAL -H ldapi:/// -f rootpwd.ldif如果上訴命令報錯
[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中對應選項的"add"為"replace"即可
9.導入schema
向 LDAP 中導入一些基本的 Schema預設模式。這些 Schema 文件位于 /etc/openldap/schema/ 目錄中,定義了我們以后創建的條目可以使用哪些屬性,這里先全部導入。
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.設定默認域,新建一個根節點
(1) 使用slappadd -s *** 再生成一個加密密碼
根節點管理員密碼與 OpenLDAP 管理員密碼不是同一回事!一個 LDAP 數據庫可以包含多個目錄樹。
#slappasswd -s 123456
(2)先想好一個域名,然后再創建一個名為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)執行domain.ldif文件
ldapmodify -Y EXTERNAL -H ldapi:/// -f domain.ldif11.添加基礎的目錄
參考上圖,我們建立一個基礎的openldap目錄
創建一個名為base.ldif的文件,將以下命令寫入
執行base.ldif文件,根據提示輸入第10步生成未加密的密碼
ldapadd -x -D cn=admin,dc=openldap,dc=com -W -f base.ldif
12.使用LDAP Admin進行連接測試
下載安裝LDAP Admin軟件,新建一個連接,填寫的信息如下,HOST就是該openldap的ip地址
總結
以上是生活随笔為你收集整理的openldap主机搭建的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux基本功之fsck命令详解
- 下一篇: Excel批量计算体积的2种操作方法