我這里使用的是CentOS完成的LDAP用戶管理,可能與網(wǎng)上的大部分教程不同,不過(guò)寫出來(lái)了,那么是肯定能用的了,不過(guò)會(huì)有部分文件,忘指教。
這里使用的 OPENLdap 配合 CentOS7 完成的用戶管理,需要配置 nssswitch 、pam 和 sssd 3個(gè)服務(wù),需要先有一定的了解才能完成本文的配置。
基礎(chǔ)配置#
1.完成yum源的配置
mkdir /root/backtar -Jcvf /root/back/yum.repos.d-`date '+(%Y.%m.%d_%H:%M:%S)'`.tar.xz /etc/yum.repos.d/rm -rf /etc/yum.repos.d/*curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repocurl -o /etc/yum,repos.d/CentOS-epel.repo http://mirrors.aliyun.com/repo/epel-7.repoyum makecache
1.安裝必要軟件
yum -y install vim bash-completion openldap-servers openldap-clients nss-pam-ldapd sssd
OPENLdap服務(wù)部分配置#
初始化過(guò)程就不再過(guò)多贅述,詳細(xì)查詢《OPENLDAP 服務(wù)搭建和后期管理》。
1.首先停止數(shù)據(jù)庫(kù)服務(wù):
systemctl stop slapd
1.然后編輯文件:
# 首先備份文件,以免無(wú)法復(fù)原mkdir /root/backtar -Jcvf /root/back/slapd.config-`date '+(%Y.%m.%d_%H:%M:%S)'`.tar.xz /etc/openldap/slapd.d/tar -Jcvf /root/back/slapd.data-`date '+(%Y.%m.%d_%H:%M:%S)'`.tar.xz /var/lib/ldap/# 然后再刪除配置文件rm -rf /etc/openldap/slapd.d/*rm -rf /var/lib/ldap/*# 復(fù)制配置文件到臨時(shí)目錄mkdir /root/ldapcd /root/ldap
1.編寫slapd的配置文件。這里的配置文件是從 /usr/share/openldap-servers/slapd.ldif 中演變而來(lái)的,主要修改了baseDN(suffix), OPENLDAPTLS,olcRootPW(密碼由 slappasswd 生成,本文中的密碼為: 123456) 和 include。
# file: /root/ldap/slapd.ldifdn: cn=configobjectClass: olcGlobalcn: configolcArgsFile: /var/run/openldap/slapd.argsolcPidFile: /var/run/openldap/slapd.pidolcTLSCertificateFile: /etc/openldap/certs/server.crtolcTLSCertificateKeyFile: /etc/openldap/certs/server.keyolcTLSCACertificateFile: /etc/openldap/cacerts/cacert.pemdn: cn=schema,cn=configobjectClass: olcSchemaConfigcn: schemainclude: file:///etc/openldap/schema/core.ldifinclude: file:///etc/openldap/schema/cosine.ldifinclude: file:///etc/openldap/schema/nis.ldifinclude: file:///etc/openldap/schema/inetorgperson.ldifdn: olcDatabase=frontend,cn=configobjectClass: olcDatabaseConfigobjectClass: olcFrontendConfigolcDatabase: frontenddn: olcDatabase=config,cn=configobjectClass: olcDatabaseConfigolcDatabase: configolcAccess: to *  by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage  by * nonedn: olcDatabase=monitor,cn=configobjectClass: olcDatabaseConfigolcDatabase: monitorolcAccess: to *  by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read  by dn.base="cn=Manager,dc=black,dc=com" read  by * nonedn: olcDatabase=hdb,cn=configobjectClass: olcDatabaseConfigobjectClass: olcHdbConfigolcDatabase: hdbolcSuffix: dc=black,dc=comolcRootDN: cn=Manager,dc=black,dc=comolcRootPW: {SSHA}l1vBI/HOMKLEiQZgcm3Co+hFQI68rH1QolcDbDirectory: /var/lib/ldapolcDbIndex: objectClass eq,presolcDbIndex: ou,cn,mail,surname,givenname eq,pres,sub
新聞熱點(diǎn)
疑難解答
圖片精選