Interlock Technical Overview
Glossary
- LDAP: Lightweight Directory Access Protocol
- ADDS: Active Directory Domain Services
Overview
Interlock is an Open-Source LDAP/ADDS Management Tool created by Dylan Blanqué and was contributed to by many other people.
See below the full contributor list.
This tool consists of a Front-end and a Back-end that allow for a responsive and intuitive way to administrate LDAP and ADDS Servers from anywhere through a Web GUI.
It also allows for cool features like User Self-management (Password and Detail changes) and administration logging.
To learn more feel free to check out the other sub-sections within the Interlock Documentation.
Dependencies Used
- python3 (>= 3.8)
- python3-virtualenv (>= 20.0.17)
- python3-pip (>= 20.0.2)
- libpq-dev (>= 12.11)
- postgresql (>= 12)
- curl (>= 7)
- nginx (>= 1.18)
- openssl
- yarn (Yarn Package Repo)
- nodejs (Node Source Distributions)
Interlock Front-end Overview
The front-end is made in VueJS and Vuetify, a Java-script Framework and UI Library respectively.
It’s structure is designed with simplicity and modularity in mind to be able to easily add whatever new functionalities we might be require in the future.
Interlock Back-end Overview
The back-end was created with Python and DRF (Django Rest Framework), and is essentially the workhorse that communicates with the LDAP Server or Servers (if a server pool is used).
It uses SSL (unless explicitly disabled) and JWT Authentication to communicate with the Front-end securely.
It’s where all the magic happens: bytes, structures, and weird encoded stuff gets converted into readable data, and it’s been some tough stuff to work with as LDAP saves stuff like DNS Records and Permissions in a very cryptic, low-level way.
Full Contributor List
- Javier Blanqué
- Site: https://javier.blanque.com.ar/
- Credited for Assistance with Samba Binary Permission Parsing
- Martin Vilche
- Site: https://martinvsolutions.com/
- Credited for Calls Module and Constructors in Interlock Front-end
- Credited for Notification Bus: Assistance with Implementation
- Other Minor Fixes and Assistance
- etianen
- Credited for creating the Django-python3-ldap module
- Site: django-python3-ldap (Github)
- dirkjanm
- Credited for his amazing krbrelayx repo and scripts.
- I managed to do all the DNS Section Operations thanks to this script set.
- Repo Link: krbrelayx Github)