Centos下LDAP伺服器的部署安裝?

OpenLDAP是輕量目錄訪問協議,在我們工作中會經常使用到,下面是我記錄的部署過程,希望能給大家帶來一些幫助。

工具/原料

Centos7

ldap administrator

虛擬機器

方法/步驟

一、openldap安裝,確保安裝好centos7.0的虛擬機器能正常上網際網路。

# yum install -y openldap-* openldap-clients openldap-servers migrationtools freeradius-ldap freeradius-utils

Centos下LDAP伺服器的部署安裝

配置 OpenLDAP:

#vim /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}hdb.ldif

olcSuffix: dc=baidu,dc=cn

olcRootDN: cn=admin,dc=baidu,dc=cn

新增一行:

olcRootPW: 123456 #密碼根據自己需要修改

Centos下LDAP伺服器的部署安裝

配置監控資料庫檔案:

#vim /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{1\}monitor.ldif

olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=extern

al,cn=auth" read by dn.base="cn=admin,dc=baidu,dc=cn" read by * none

Centos下LDAP伺服器的部署安裝

拷貝LDAP資料庫配置檔案到指定目錄並賦予許可權:

#cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

# chown -R ldap.ldap /var/lib/ldap

Centos下LDAP伺服器的部署安裝

測試配置檔案是否正確

slaptest -u

[[email protected] ~]# slaptest -u

57e4dcb4 ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif"

57e4dcb4 ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif"

config file testing succeeded

Centos下LDAP伺服器的部署安裝

開啟和啟用slapd在啟動服務,並確認:

#systemctl start slapd //啟動

# systemctl enable slapd //開機自動啟動

#netstat -lt grep ldap //確認是否啟動

tcp 0 0 0.0.0.0:ldap 0.0.0.0:* LISTEN

tcp6 0 0 [::]:ldap [::]:* LISTEN

Centos下LDAP伺服器的部署安裝

LDAP伺服器的配置,新增需要schema模式:

# cd /etc/openldap/schema/

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f cosine.ldif

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f nis.ldif

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f collective.ldif

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f corba.ldif

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f core.ldif

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f duaconf.ldif

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f dyngroup.ldif

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f inetorgperson.ldif

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f java.ldif

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f misc.ldif

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f openldap.ldif

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f pmi.ldif

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f ppolicy.ldif

[[email protected] ~]# cd /etc/openldap/schema/

[[email protected] schema]# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f ppolicy.ldif

SASL/EXTERNAL authentication started

SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth

SASL SSF: 0

adding new entry "cn=ppolicy,cn=schema,cn=config"

[[email protected] schema]# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f pmi.ldif

SASL/EXTERNAL authentication started

SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth

SASL SSF: 0

adding new entry "cn=pmi,cn=schema,cn=config"

Centos下LDAP伺服器的部署安裝

使用遷移工具來建立LDAP:

#cd /usr/share/migrationtools/

# vim migrate_common.ph

//在61行

$NAMINGCONTEXT{'group'} = "ou=Groups";

//在 71行

$DEFAULT_MAIL_DOMAIN = "baidu.cn";

//在74行,

$DEFAULT_BASE = "dc=baidu,dc=cn";

//在90行

$EXTENDED_SCHEMA = 1;

:wq!

Centos下LDAP伺服器的部署安裝

生成一個ldif檔案並匯入ladp資料庫:

cd /usr/share/migrationtools/

# ./migrate_base.pl > /root/base.ldif

#ldapadd -x -W -D "cn=admin,dc=baidu,dc=cn" -f /root/base.ldif

輸入密碼: //第二步裡面設定的密碼

在liunx系統中建立一些使用者並設定密碼:

#mkdir /home/guests

#useradd -d /home/guests/ldapuser1 ldapuser1

#useradd -d /home/guests/ldapuser2 ldapuser2

#useradd -d /home/guests/ldapuser3 ldapuser3

#echo '[email protected]' passwd --stdin ldapuser1

#echo '[email protected]' passwd --stdin ldapuser2

#echo '[email protected]' passwd --stdin ldapuser3

從/etc/shadow過濾掉這些使用者、組、密碼:

#getent passwd tail -n 6 > /root/users

#getent shadow tail -n 6 > /root/shadow

# getent group tail -n 6 > /root/groups

使用migrationtools ldif檔案建立這些使用者:

#cd /usr/share/migrationtools

#vim migrate_passwd.pl

找到188行 /etc/shadow 改成 /root/shadow

# ./migrate_passwd.pl /root/users > users.ldif

# ./migrate_group.pl /root/groups > groups.ldif

上傳這些使用者和組ldif檔案到LDAP資料庫:

#cd /usr/share/migrationtools

# ldapadd -x -W -D "cn=admin,dc=baidu,dc=cn" -f users.ldif

輸入密碼

# ldapadd -x -W -D "cn=admin,dc=baidu,dc=cn" -f groups.ldif

輸入密碼

最後,使用ladp administrator軟體可以看到ldap目錄已經看到了,如下圖:

Centos下LDAP伺服器的部署安裝

注意事項

域名一定不要搞錯,配置過程要細心。

過程, 目錄, 伺服器, 協議,
相關問題答案