web2ldap - Installing
Author: michael@stroeder.com
Description: web2ldap: A brief description on how to install it
Keywords: LDAP, WWW, SSL gateway, Python, single sign-on, Security, Directory, PKI, LDIF, DSML

# web2ldap - Installing A brief description on how to install it | Information News Features Demo Roadmap | Support Download Feedback Related | Documentation Installing Configuration Security Changes Files

## Intro

web2ldap is designed to be very flexible. It can be installed in different modes either running persistent or non-persistent under Win32 and Unix platforms:

stand-alone
  You can start web2ldap as stand-alone web server running on a specific address and port. You can even serve some other static web pages in that mode.
CGI-BIN
  If you have already a running web server with support for CGI-BIN programs (like almost every web server has) you can use web2ldap as simple CGI-BIN program.
mod_python
  If you are running the Apache web server and want to speed things up by persistence of the Python interpreter and modules you might want to consider running web2ldap as handler under the control of mod_python.

## Requirements

For running web2ldap 0.8.x you need at least:

- Python 2.0
- python-ldap 1.8+.
  Although there are pre-compiled versions of python-ldap available (see below) I recommend checking out the recent CVS version since many memory leaks and bugs were fixed.

### Web server

Additional web server software depends on the running mode:

Running mode | web server | SSL support
--- | --- | ---
CGI-BIN | Any web server capable of calling external programs through CGI-BIN interface. | SSL support by web server. Ask the vendor of your web server.
mod_python | Apache with Apache module mod_python (apply patch found in web2ldap/mod_python/patch-header-crlf to mod_python/apache.py) | Apache SSL or Apache with mod_ssl
stand-alone | built-in | requires module M2Crypto

### Pre-compiled packages

There are some ready-to-use packages of the required software and web2ldap. Note that the requirements have changed since web2ldap 0.8.x!

#### Linux-Distributions

I'm currently not aware of Linux distributions that have packages matching the new requirements (Python 2.0 and recent python-ldap). So this section contains mostly historic information.

- The Linux distribution S.u.S.E. already has packages of Python, OpenLDAP, Apache with mod_ssl and ldapmodule (since 6.2) for Python.
- Red Hat has included the Python interpreter with their Linux distribution. You might consider to grab some pre-packaged RPMs of OpenLDAP, ldapmodule and web2ldap.
- The Debian-Release (nickname Potato) includes various packages of Python, OpenLDAP and ldapmodule for Python as well as ApacheSSL and Apache with mod_ssl.

#### FreeBSD

Oddbjorn Steffensen maintains a FreeBSD port which you can directly retrieve via CVS from the FreeBSD archive.

## Installing

### Unix platform

1. Install all required software on your system.
2. Extract content of archive web2ldap-*.tar.gz to /usr/lib.
3. Rename /usr/lib/web2ldap-<version> to /usr/lib/web2ldap.
4. Choose the right script web2ldap.py for your running mode, adjust the path to the python excutable in the web2ldap.py script and copy it to the appropriate directory:
   stand-alone
     sbin/web2ldap.py should go into /usr/sbin or /usr/local/sbin.
   CGI-BIN
     cgi-bin/web2ldap.py should go into a directory which your web server uses for executing scripts.
   mod_python
     mod_python/web2ldap.py should go into a directory which has the right mod_python directives set.
     Example:

         <Directory /usr/local/httpd/htdocs/mod_python>
         AddHandler python-program .py
         PythonHandler web2ldap
         </Directory>

5. Edit configuration modules under /usr/lib/web2ldap/etc/web2ldap/web2ldapcnf/ which contain comments about every configuration parameter. See also the documentation (which is probably outdated most times ;-).
6. Call `python sbin/compile.py` and `python -O sbin/compile.py` for compiling all sources.
7. Copy directory web2ldap/etc/web2ldap to /etc.
8. For a quick start as stand-alone web gateway simply invoke the script /usr/sbin/web2ldap.py which outputs the start URL before detaching from console.

Page last modified: Sunday, 03-Dec-2000 13:37:49 CET, © by Michael Ströder <michael@stroeder.com>