暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Openldap管理linux用户名和密码

DevOps架构实战 2021-12-30
1912

1、安装openldap

[root@slave1 bin]# yum -y install openldap openldap-clients openldap-servers

[root@slave1 bin]# chown -R ldap. /var/lib/ldap/DB_CONFIG

[root@slave1 bin]# systemctl start slapd

[root@slave1 bin]# systemctl enable slapd

[root@slave1 bin]# systemctl status slapd

[root@slave1 ~]# more pwdchange.ldif

dn: olcDatabase={0}config,cn=config

changetype: modify

add: olcRootPW

olcRootPW: {SSHA}j5ipRNJU0Rej5xdw/SsnUZUjW/Jy3bQx

[root@slave1 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f pwdchange.ldif 

2、导入基础的一些配置

[root@slave1 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif

[root@slave1 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif

[root@slave1 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif

[root@slave1 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/collective.ldif

[root@slave1 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/corba.ldif

[root@slave1 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/duaconf.ldif

[root@slave1 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/dyngroup.ldif

[root@slave1 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/java.ldif

[root@slave1 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/misc.ldif

[root@slave1 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/openldap.ldif

[root@slave1 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/pmi.ldif

[root@slave1 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/ppolicy.ldif

3、配置域名

[root@slave1 ~]# more domain.ldif

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=hahashen,dc=com" read by * none

 

dn: olcDatabase={2}hdb,cn=config

changetype: modify

replace: olcSuffix

olcSuffix: dc=hahashen,dc=com

dn: olcDatabase={2}hdb,cn=config

changetype: modify

replace: olcRootDN

olcRootDN: cn=admin,dc=hahashen,dc=com

dn: olcDatabase={2}hdb,cn=config

changetype: modify

replace: olcRootPW

olcRootPW: {SSHA}j5ipRNJU0Rej5xdw/SsnUZUjW/Jy3bQx

dn: olcDatabase={2}hdb,cn=config

changetype: modify

add: olcAccess

olcAccess: {0}to attrs=userPassword,shadowLastChange by dn="cn=admin,dc=hahashen,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=hahashen,dc=com" write by * read

 

# 执行命令,修改配置

[root@slave1 ~]# ldapmodify -Y EXTERNAL -H ldapi:/// -f domain.ldif 

启用memberof

新增refint.ldifrefint2.ldif文件

[root@slave1 ~]# more refint1.ldif

dn: cn=module{0},cn=config

add: olcmoduleload

olcmoduleload: refint

[root@slave1 ~]# more refint2.ldif

dn: olcOverlay=refint,olcDatabase={2}hdb,cn=config

objectClass: olcConfig

objectClass: olcOverlayConfig

objectClass: olcRefintConfig

objectClass: top

olcOverlay: refint

olcRefintAttribute: memberof uniqueMember  manager owner

新增配置文件base.ldif,并执行命令


4、安装phpldapadmin

yum install -y phpldapadmin

文章转载自DevOps架构实战,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论