一、OpenLDAP命令匯總
- ldapsearch:搜索 OpenLDAP 目錄樹條目。
- ldapadd:通過 LDIF 格式,添加目錄樹條目。
- ldapdelete:刪除 OpenLDAP 目錄樹條目。
- ldapmodify:修改 OpenLDAP 目錄樹條目。
- ldapwhoami:效驗 OpenLDAP 用戶的身份。
- ldapmodrdn:判斷 OpenLDAP 目錄樹 DN 條目。
- ldapcompare:判斷 DN 值和指定參數值是否屬於同一個條目。
- ldappasswd:修改 OpenLDAP 目錄樹用戶條目實現密碼重置。
- slaptest:驗證 slapd.conf 文件或 cn=配置目錄。
- slapindex:創建 OpenLDAP 目錄樹索引,提供查詢效率。
- slapcat:將數據小牧轉換為 OpenLDAP 的 LDIF 文件。
二、OpenLDAP命令用例
2.1 ldapsearch 命令
ldapsearch 命令可根據用戶定義的查詢條件,對 OpenLDAP 目錄樹進行查找以及檢索目錄樹相關條目。
1. 查找目錄樹所有條目
ldapsearch -x -b "dc=kwang,dc=com"
2. 根據過濾條件查找條目
ldapsearch -x -b "dc=kwang,dc=com" '(cn=kwanggroup)' #根據cn過濾
ldapsearch -x -b "dc=kwang,dc=com" '(uid=kwang)' #根據用戶id過濾
2.2 ldapadd 命令
根據 ldif 文件添加條目
ldapadd -x -w <pwd> -D "cn=Manager,dc=kwang,dc=com" -f base.ldif
base.ldif 內容容下:
dn: dc=kwang,dc=com dc: kwang objectClass: top objectClass: domain dn: ou=People,dc=kwang,dc=com ou: People objectClass: top objectClass: organizationalUnit dn: ou=Group,dc=kwang,dc=com ou: Group objectClass: top objectClass: organizationalUnit
2.3 ldapmodify 命令
ldapmodify 命令是固定的,主要是通過配置文件實現不同的修改功能。
ldapmodify -x -D "cn=Manager,dc=kwang,dc=com" -w <pwd> -f modi.ldif
1. 向條目下添加成員參數
modi.ldif 文件如下,表示向 admin 這個組中添加成員 kwang。
dn: cn=admin,ou=Group,dc=dc=kwang,dc=com
changetype: modify
add: memberUid
memberUid: kwang
2. 修改條目的某個值
modi.ldif 文件如下,表示修改 uid=kwang 這個用戶的 uidNumber 參數。
dn: uid=kwang,ou=People,dc=kwang,dc=com changetype: modify replace: uidNumber uidNumber: 520
3. 刪除條目下某個參數
modi.ldif 文件如下,表示刪除 uid=kwang 這個用戶下 pwdAccountLockedTime 參數。
dn: uid=kwang,ou=People,dc=kwang,dc=com
changetype: modify
delete: pwdAccountLockedTime
2.4 ldapdelete 命令
從當前目錄樹中刪除 uid 為 kwang 的用戶,刪除前需要使用 ldapsearch 查看 kwang 的 DN 名稱。
ldapsearch -x -b "dc=kwang,dc=com" '(uid=kwang)' # 查看uid=kwang的dn名稱,然后執行刪除操作
ldapdelete -x -D cn=Manager,dc=kwang,dc=com -w <pwd> "uid=kwang,ou=People,dc=kwang,dc=com"
以上四個命令是平時維護OpenLDAP目錄樹時最常用的操作,其他命令后續不斷完善。
【參考資料】
[1]. https://wiki.shileizcc.com/confluence/pages/viewpage.action?pageId=39223593