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 | General <Download> <News> <Demo> <Related> Support <Commercial> <Feedback> <FAQ> Documentation <Features> <Installing> <Configuration> <Compability> <Security> <Changes> <Files> <Roadmap>

## Run modes

web2ldap is designed to be very flexible. It can be installed in two different modes running persistent as a multi-threaded server process under Win32 and Unix platforms:

stand-alone
  You can start web2ldap as stand-alone web server running on a specific address (default is fully-qualified hostname) and port (default 1760). You can serve some other static web content in that mode (e.g. the .css files).
mod_fastcgi
  If you are running the Apache web server you might want to consider running web2ldap as multi-threaded FastCGIServer under mod_fastcgi.

## Requirements

For running web2ldap 0.10.0+ you need:

- Python 2.0 or later (current supported and tested version is Python 2.2) built with thread support (`configure --with-threads`).
- Module package for web application programming: PyWebLib 1.1.0+.
- python-ldap
  You have to grab a recent pre-release 2.0.0pre04 and build it against OpenLDAP 2.0.13+ libs.
- 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 PyDNS. (This is rarely needed.)

### Web server

Additional web server software depends on the running mode:

Running mode | web server | SSL support
--- | --- | ---
FastCGI server | Apache with Apache module mod_fastcgi and the Python module fcgi.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.10.x!

#### Linux-Distributions

S.u.S.E.
  Already has packages of OpenLDAP 2, Apache with mod_ssl and mod_fastcgi.
Red Hat
  - Various useful RPM packages for Red Hat 7.2
Debian
  Potato includes various packages of Python, OpenLDAP and python-ldap for Python as well as ApacheSSL and Apache with mod_ssl.

#### FreeBSD

Oddbjorn Steffensen <oddbjorn@oddbjorn.bdc.no> maintains a FreeBSD port which you can directly retrieve via CVS from the FreeBSD archive.

#### Win32

There are currently no OpenLDAP 2 libs for Win32 available. Therefore python-ldap is currently not available on Win32.

## Installing

### Unix platform

1. Install all required software on your system.
2. Extract content of archive web2ldap-*.tar.gz to e.g. /usr/local. Regarding directory names under several Unix flavours: Your mileage may vary.
3. Rename /usr/local/web2ldap-<version> to /usr/local/web2ldap.
4. Choose the right script web2ldap.py for your running mode and adjust the path to the Python interpreter executable in the first line of the web2ldap.py script (see also python -h for usage of option -O and -OO for running with optimized bytecode generation).
   stand-alone
     [web2ldapdir]/sbin/web2ldap.py.
   mod_fastcgi
     [web2ldapdir]/fcgi/web2ldap.py should reside in a directory which has the right mod_fastcgi directives set for running it as a static FastCGI server.
     Assuming you extracted web2ldap to /usr/local/web2ldap you can configure it as FastCGI server with the following mod_fastcgi directives:

         ScriptAlias /web2ldap-fcgi/ "/usr/local/web2ldap/fcgi/"
         FastCgiServer /usr/local/web2ldap/fcgi/web2ldap.py
         <Directory /usr/local/web2ldap/fcgi>
         AddHandler fastcgi-script .py
         </Directory>

     The URL for accessing this web2ldap FastCGI server would be

     `http://hostname/web2ldap-fcgi/web2ldap.py`

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

### Win32 platform (stand-alone mode)

Windows users like it simple. ;-)

1. Install all required software on your system.
2. Unpack .tar.gz archive with e.g. recent version of Winzip.
3. Double-click on [web2ldapdir]\sbin\web2ldap.py for starting web2ldap in stand-alone mode.

Page last modified: Thursday, 21-Feb-2002 12:10:47 CET, © by Michael Ströder <michael@stroeder.com>