emqx/apps/emqx_auth_ldap
Zaiming Shi 7aff861f9b refactor(emqx_modules): Move emqx_modules to lib-opensource
emqx_moduels for enterprise is refactored as a lib/plugin
in order to avoid merge conflicts, we make sure they can
co-exist in the same branch, because lib-opensource is compiled
in opensource project and lib-enterprise (to be added) is
compiled in enterprise project
2021-02-08 21:35:44 +01:00
..
etc refactor(proj): Add apps 2020-12-04 22:11:53 +01:00
include refactor(proj): Add apps 2020-12-04 22:11:53 +01:00
priv refactor(proj): Add apps 2020-12-04 22:11:53 +01:00
src fix(auth_ldap): do not load plugin when no params configured 2021-01-27 12:56:13 +01:00
test refactor(emqx_modules): Move emqx_modules to lib-opensource 2021-02-08 21:35:44 +01:00
.gitignore refactor(proj): Add apps 2020-12-04 22:11:53 +01:00
README.md refactor(proj): Add apps 2020-12-04 22:11:53 +01:00
emqx.io.ldif refactor(proj): Add apps 2020-12-04 22:11:53 +01:00
emqx.schema refactor(proj): Add apps 2020-12-04 22:11:53 +01:00
rebar.config Merge branch 'umbrella-for-430-auto-sync' into umbrella-for-430 2020-12-08 22:09:59 +01:00

README.md

emqx_auth_ldap

EMQ X LDAP Authentication Plugin

Build

make

Load the Plugin

# ./bin/emqx_ctl plugins load emqx_auth_ldap

Generate Password

slappasswd -h '{ssha}' -s public

Configuration Open LDAP

vim /etc/openldap/slapd.conf

include         /etc/openldap/schema/core.schema
include         /etc/openldap/schema/cosine.schema
include         /etc/openldap/schema/inetorgperson.schema
include         /etc/openldap/schema/ppolicy.schema
include         /etc/openldap/schema/emqx.schema

database bdb
suffix "dc=emqx,dc=io"
rootdn "cn=root,dc=emqx,dc=io"
rootpw {SSHA}eoF7NhNrejVYYyGHqnt+MdKNBh4r1w3W

directory       /etc/openldap/data

If the ldap launched with error below:

Unrecognized database type (bdb)
5c4a72b9 slapd.conf: line 7: <database> failed init (bdb)
slapadd: bad configuration file!

Insert lines to the slapd.conf

modulepath /usr/lib/ldap
moduleload back_bdb.la

Import EMQX User Data

Use ldapadd

# ldapadd -x -D "cn=root,dc=emqx,dc=io" -w public -f emqx.com.ldif

Use slapadd

# sudo slapadd -l schema/emqx.io.ldif -f slapd.conf

Launch slapd

# sudo slapd -d 3

Test

After configure slapd correctly and launch slapd successfully. You could execute

# make tests

License

Apache License Version 2.0

Author

EMQ X Team.