All Projects → jirutka → Ldap Passwd Webui

jirutka / Ldap Passwd Webui

Licence: mit
Very simple web interface for changing password stored in LDAP or Active Directory (Samba 4 AD).

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Ldap Passwd Webui

k8s-idm-lab
Kubernetes Identity Management Lab
Stars: ✭ 20 (-86.67%)
Mutual labels:  ldap, active-directory
OpenAM
OpenAM is an open access management solution that includes Authentication, SSO, Authorization, Federation, Entitlements and Web Services Security.
Stars: ✭ 476 (+217.33%)
Mutual labels:  ldap, active-directory
ldapconsole
The ldapconsole script allows you to perform custom LDAP requests to a Windows domain.
Stars: ✭ 25 (-83.33%)
Mutual labels:  ldap, active-directory
gitlab-ldap-group-sync
Manage your gitlab groups with ldap / active directory
Stars: ✭ 21 (-86%)
Mutual labels:  ldap, active-directory
Dsinternals
Directory Services Internals (DSInternals) PowerShell Module and Framework
Stars: ✭ 776 (+417.33%)
Mutual labels:  active-directory, passwords
aspnet-core-ad-authentication
ASP.NET Core Active Directory authentication use LDAP
Stars: ✭ 21 (-86%)
Mutual labels:  ldap, active-directory
cracke-dit
cracke-dit ("Cracked It") makes it easier to perform regular password audits against Active Directory environments.
Stars: ✭ 102 (-32%)
Mutual labels:  active-directory, passwords
AD-webmanager
A web interface for administration of Active Directory Domains, made in Python, with focus on easy of use and simplicity.
Stars: ✭ 26 (-82.67%)
Mutual labels:  ldap, active-directory
Laravel Enterprise Starter Kit
👔 Enterprise Web application starter kit or template using Laravel
Stars: ✭ 356 (+137.33%)
Mutual labels:  ldap, active-directory
Server-Help
💻 This VSTO Add-In allows the user to ping a list of servers and creates a file for Microsoft Remote Desktop Manager an Excel table. This is used for quickly determining which servers are offline in a list. It is written in 3 different versions as a VSTO Add-In in C# and VB.NET as well as a VBA Add-In.
Stars: ✭ 21 (-86%)
Mutual labels:  ldap, active-directory
ucsunivention
⚫ Curso GRÁTIS SAMBA-4 UCS Univention Core Free 5.x Domain Controller Active Directory Open Source
Stars: ✭ 29 (-80.67%)
Mutual labels:  samba, active-directory
Verdaccio Ldap
LDAP auth plugin for verdaccio
Stars: ✭ 39 (-74%)
Mutual labels:  ldap, active-directory
Linux-Active-Directory-join-script
Active directory Join script for Ubuntu, Debian, CentOS, Linux Mint, Fedora, Kali, Elementary OS and Raspbian with built in failchcheck and debugmode for Ubuntu. "The most advanced and updated AD join script on GITHUB for Linux"
Stars: ✭ 97 (-35.33%)
Mutual labels:  ldap, active-directory
Auth
Manage multiple user authentication databases from a central web application
Stars: ✭ 17 (-88.67%)
Mutual labels:  ldap, active-directory
ldap2json
The ldap2json script allows you to extract the whole LDAP content of a Windows domain into a JSON file.
Stars: ✭ 56 (-62.67%)
Mutual labels:  ldap, active-directory
mailad
Software to provision a mail server with users from a Windows or Samba 4 Active Directory
Stars: ✭ 21 (-86%)
Mutual labels:  samba, active-directory
adalanche
Active Directory ACL Visualizer and Explorer - who's really Domain Admin?
Stars: ✭ 862 (+474.67%)
Mutual labels:  ldap, active-directory
smbaudit
Perform various SMB-related attacks, particularly useful for testing large Active Directory environments.
Stars: ✭ 31 (-79.33%)
Mutual labels:  samba, active-directory
werther
An Identity Provider for ORY Hydra over LDAP
Stars: ✭ 103 (-31.33%)
Mutual labels:  ldap, active-directory
Eloquent Ldap
A Laravel 5.1 package that first tries to log the user against the internal database if that fails, it tries against the configured LDAP/AD server.
Stars: ✭ 19 (-87.33%)
Mutual labels:  ldap, active-directory

= Web UI for changing LDAP password Jakub Jirutka https://github.com/jirutka[@jirutka] //custom :proj-name: ldap-passwd-webui :gh-name: jirutka/{proj-name} :wikip-url: https://en.wikipedia.org/wiki :pypi-url: https://pypi.python.org/pypi

The aim of this project is to provide a very simple web form for users to be able to change their password stored in LDAP or Active Directory (Samba 4 AD). It’s built with http://bottlepy.org[Bottle], a WSGI micro web-framework for Python.

== Installation

=== Alpine Linux

. Install package ldap-passwd-webui-waitress from the Alpine’s community repository: + [source, sh] apk add ldap-passwd-webui-waitress + IMPORTANT: This package is in Alpine stable since v3.7. You can also install it from edge (unstable) branch.

. Adjust configuration in /etc/ldap-passwd-webui.ini and /etc/conf.d/.

. Start service ldap-passwd-webui: + [source] /etc/init.d/ldap-passwd-webui start

=== Manually

Clone this repository and install dependencies:

[source, sh, subs="+attributes"]

git clone [email protected]:{gh-name}.git cd {proj-name} pip install -r requirements.txt

Read the next sections to learn how to run it.

=== Requirements

  • Python 3.x
  • {pypi-url}/bottle/[bottle]
  • {pypi-url}/ldap3[ldap3] 2.x

== Configuration

Configuration is read from the file link:settings.ini.example[settings.ini]. You may change location of the settings file using the environment variable CONF_FILE.

If you have Active Directory (or Samba 4 AD), then you must use encrypted connection (i.e. LDAPS or StartTLS) – AD doesn’t allow changing password via unencrypted connection.

== Run it

There are multiple ways how to run it:

=== Run with the built-in server

Simply execute the app.py:

[source, python] python3 app.py

Then you can access the app on http://localhost:8080. The port and host may be changed in link:settings.ini.example[settings.ini].

=== Run with Waitress

[source, sh, subs="+attributes"]

cd {proj-name} waitress-serve --listen=*:8080 app:application

=== Run with uWSGI and nginx

If you have many micro-apps like this, it’s IMO kinda overkill to run each in a separate uWSGI process, isn’t it? It’s not so well known, but uWSGI allows to “mount” multiple application in a single uWSGI process and with a single socket.

[source, ini, subs="+attributes"] .Sample uWSGI configuration:

[uwsgi] plugins = python3 socket = /run/uwsgi/main.sock chdir = /var/www/scripts logger = file:/var/log/uwsgi/main.log processes = 1 threads = 2

map URI paths to applications

mount = /admin/{proj-name}={proj-name}/app.py #mount = /admin/change-world=change-world/app.py manage-script-name = true

[source, nginx] .Sample nginx configuration as a reverse proxy in front of uWSGI:

server { listen 443 ssl; server_name example.org;

ssl_certificate     /etc/ssl/nginx/nginx.crt;
ssl_certificate_key /etc/ssl/nginx/nginx.key;

# uWSGI scripts
location /admin/ {
    uwsgi_pass  unix:/run/uwsgi/main.sock;
    include     uwsgi_params;
}

}

== Screenshot

image::doc/screenshot.png[]

== License

This project is licensed under http://opensource.org/licenses/MIT/[MIT License]. For the full text of the license, see the link:LICENSE[LICENSE] file.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].