A brief description on how to install it

Note that this installation description is for release 1.2.100.
It likely does not apply exactly to other releases. For those see directory htdocs/ shipped in the source distribution archive.

Install receipts for specific platforms:

Run modes

web2ldap is running persistent as a multi-threaded server process under Win32 and Unix platforms:

Run mode Start script Web server
stand-alone sbin/ Python standard lib
CGI-BIN cgi-bin/web2ldap.fcgi Any web server with CGI support and fcgiwrap installed
FastCGI server fcgi/ Any web server with FastCGI support. Depending on the web server you might need spawn-fcgi.


For running web2ldap you need several modules. You can check them with script sbin/

Python 2.7.0+ (2.7.11+ recommended)
or PyPy 5.0.1 (earlier versions do not work!)
Python 3.x or PyPy3 not supported!
mandatory The programming language needed to run.
PyWebLib 1.3.8+ (1.3.12+ recommended) mandatory Module package for web application programming.
python-ldap 2.4.14+ (2.4.21+ recommended) mandatory A wrapper module for accessing the OpenLDAP libs from Python and other LDAP-related modules.
OpenLDAP 2.4.11+ client libs (2.4.42+ recommended) mandatory Required to build python-ldap.
pyasn1 and pyasn1-modules mandatory Two separate module packages for processing ASN.1 data directly.
netaddr or ipaddr-py mandatory Module package for processing IP addresses (netaddr preferred) optional For running as FastCGI server process
PyDNS (2.3.6+ recommended) optional If you want to make use of SRV RR's to automatically locate your LDAP server for a given dc-style DN you have to install this DNS module.
M2Crypto optional For displaying short overview of X.509 certificates.
paramiko optional For displaying short overview of SSH public keys.
Pillow (PIL fork, recommended) or Python Imaging Library (PIL) optional For automatically converting image data to required format (e.g. JPEGImage syntax).
pyExcelerator optional For Excel data export.


  1. Install all required software on your system.
  2. Extract content of archive web2ldap-1.2.100.tar.gz to e.g. /opt. Regarding directory names under several Unix flavours: Your mileage may vary. ;-)
  3. Rename /opt/web2ldap-1.2.100 to /opt/web2ldap.
  4. Edit configuration modules under [web2ldapdir]/etc/web2ldap/web2ldapcnf/ which contain comments about every configuration parameter. See also the documentation.
  5. Optional step to speed start-up time when starting web2ldap as user which does not have write access to web2ldap directory:
    Change current directory to the directory where you extracted web2ldap and invoke python -m compileall [web2ldapdir] and python -O -m compileall [web2ldapdir] for compiling all Python sources.
  6. Optional step when running under Unix-like systems:
    Choose the right start script for your run mode and adjust the path to the Python interpreter executable in the first line of the start script (see also python -h for usage of option -O and -OO for running with optimized bytecode generation).
  7. Configure and run WWW server:
    For a quick start as stand-alone web gateway simply invoke the script at the command-line which outputs the start URL before detaching from console.
    Simply double-click the file [web2ldapdir]/sbin/
    Any HTTP server with CGI-FCGI wrapper
    Install cgi-bin/web2ldap.fcgi to CGI-BIN directory of web server.
    Apache with mod_fastcgi
    See configuration directives in file etc/httpd/sample-mod_fastcgi.conf.
    Apache with mod_fcgid
    See configuration directives in file etc/httpd/sample-mod_fcgid.conf.