Skip to content

npenkov/ldap-passwd-webui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Web UI for LDAP changing password

WebUI Client capable of connecting to backend LDAP server and changing the users password.

Screenshot

The configuration is made with environment variables:

Env variable Default value Description
LPW_TITLE Change your global password for example.org Title that will appear on the page
LPW_HOST LDAP Host to connect to
LPW_PORT 636 LDAP Port (389
LPW_ENCRYPTED true Use enrypted communication
LPW_START_TLS false Start TLS communication
LPW_SSL_SKIP_VERIFY true Skip TLS CA verification
LPW_USER_DN uid=%s,ou=people,dc=example,dc=org Filter expression to search the user for Binding
LPW_USER_BASE ou=people,dc=example,dc=org Base to use when doing the binding

Running

dep ensure
LPW_HOST=ldap_host_ip go run main.go

Browse http://localhost:8080/

Running in docker container

docker run -d -p 8080:8080 --name ldap-passwd-webui \
    -e LPW_TITLE="Change your global password for example.org" \
    -e LPW_HOST="your_ldap_host" \
    -e LPW_PORT="636" \
    -e LPW_ENCRYPTED="true" \
    -e LPW_START_TLS="false" \
    -e LPW_SSL_SKIP_VERIFY="true" \
    -e LPW_USER_DN="uid=%s,ou=people,dc=example,dc=org" \
    -e LPW_USER_BASE="ou=people,dc=example,dc=org" \
    -e LPW_PATTERN='.{8,}' \
    -e LPW_PATTERN_INFO="Password must be at least 8 characters long." \
    npenkov/docker-ldap-passwd-webui:latest

Building and tagging

Get Godep

go get -u github.com/golang/dep/cmd/dep
make

Credits