環境說明:
操作系統:CentOS Linux release 7.5.1804 (Core)
LDAP:2.4.44
前提條件:
關閉防火牆、selinux,同時進行時鍾同步。 其中XXX需要用域名進行替換,例如example.com,則需要將xxx修改為example.
1、安裝軟件。
yum -y install openldap compat-openldap openldap-clients openldap-servers openldap-servers-sql openldap-devel migrationtools
2、生成管理員用戶和密碼。
slappasswd -s xxxxx
olcRootPW: {SSHA}+111111p+aUXGlhYIEMr+6ToCxxxxxx 需要記錄下該密碼,后續在配置/etc/openldap/slapd.d/cn=config/olcDatabase\=\{2\}hdb.ldif會使用到。
3、修改域信息、管理員信息。
vim /etc/openldap/slapd.d/cn=config/olcDatabase\=\{2\}hdb.ldif 需要修改內容如下: olcSuffix: dc=xxx,dc=com #修改dc名稱 olcRootDN: cn=root,dc=xxx,dc=com #修改cn名稱、dc名稱 olcRootPW: {SSHA}o7XgtJ7XNKKm7qOrtinHqiN7xZ4+gYI9 #該行為新增行,指定管理員密碼,該行為新增行
4、修改監控文件管理員信息。
vim /etc/openldap/slapd.d/cn=config/olcDatabase\=\{1\}monitor.ldif 原有行內容如下: olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read by dn.base="cn=Manager,dc=my-domain,dc=com" read by * none 修改完成內容如下: olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read by dn.base="cn=root,dc=xxx,dc=com" read by * none
5、檢測ldap配置文件以及版本號。
檢查配置文件。 slaptest -u 輸出如下: 5b0502de ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif" 5b0502de ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif" config file testing succeeded 表明基本配置文件驗證通過。由於這兩個文件有crc校驗,因此修改完成之后,crc校驗失敗,會報錯,該錯誤克忽略。 查看版本號。 slapd -VV
6、配置ldap數據庫存儲。
復制基本的數據庫配置: cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG 修改ldap數據庫配置目錄所屬用戶 chown ldap:ldap -R /var/lib/ldap 修改ldap數據庫配置目錄權限 chmod 700 -R /var/lib/ldap
7、啟動ldap服務。
service slapd start
8、導入基本的數據庫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.ldif
9、修改mail domain、base、schema配置。
vim /usr/share/migrationtools/migrate_common.ph 修改之前: $DEFAULT_MAIL_DOMAIN = "padl.com"; $DEFAULT_BASE = "dc=padl,dc=com"; $EXTENDED_SCHEMA = 0; 修改之后: $DEFAULT_MAIL_DOMAIN = "xxx.com"; $DEFAULT_BASE = "dc=xxx,dc=com"; $EXTENDED_SCHEMA = 1;
10、基礎配置文件,新增基礎信息。
dn: dc=xxx,dc=com o: xxx com dc: xxx objectClass: top objectClass: dcObject objectclass: organization dn: cn=root,dc=xxx,dc=com cn: root objectClass: organizationalRole description: Directory Manager dn: ou=ops,dc=xxx,dc=com ou: ops objectClass: top objectClass: organizationalUnit dn: ou=developer,dc=xxx,dc=com ou: developer objectClass: top objectClass: organizationalUnit
11、導入基礎配置文件。
ldapadd -x -w "xxxxxxxxx" -D "cn=root,dc=xxxx,dc=com" -f /root/base.ldif -w:指明管理員賬戶密碼 -D:指明管理員basedn信息 -f /root/base.ldif:指明要添加的配置文件路徑