web2ldap - Installing on openSUSE Linux
Author: Michael Ströder <michael@stroeder.com>
Description: web2ldap: A brief description on how to install it on openSUSE 11.4 or 12.1
Keywords: LDAP LDAPv2 LDAPv3 subschema gateway Python python-ldap Directory userCertificate PKI LDIF DSML

Important notes in advance:

- This simple install receipt requires that the machine has Internet (proxy) access to load packages from the openSUSE download repository.
- If you run with additional security packages enabled (e.g. AppArmor or SELinux) additional actions are likely needed to enable network and file access.
- Your mileage may vary!

## openSUSE packages

Some required modules are not available as openSUSE packages or the packages are too old (especially python-ldap). So we have to add the separate openSUSE repository devel:languages:python.

    zypper addrepo http://download.opensuse.org/repositories/devel:/languages:/python/openSUSE_version/devel:languages:python.repo

Install required packages:

    zypper install python python-ldap python-pyasn1 python-pyasn1-modules python-pyweblib python-netaddr

Install optional but useful modules:

    zypper install python-pydns python-imaging python-pyexcelerator python-m2crypto

## web2ldap itself

### Unpack, move and check

Grab web2ldap source, extract anywhere and it move to /opt/web2ldap:

    wget http://www.web2ldap.de/download/web2ldap-version.tar.gz
    tar xzf web2ldap-version.tar.gz
    mv web2ldap-version.tar.gz /opt/web2ldap

Check whether all software is installed - watch out for errors and warnings:

    python2.7 /opt/web2ldap/sbin/checkinst.py

Relax the IP restrictions by editing web2ldap-version/etc/web2ldap/web2ldapcnf/standalone.py

For testing start built-in HTTP server listening on all interfaces:

    python2.7 /opt/web2ldap/sbin/web2ldap.py -l 0.0.0.0:1760 -d off

Access it with your browser:

`http://your-server-hostname-or-address-here:1760/web2ldap`

### Integrate with Apache/mod_fcgid

Install packages for running as FastCGI server:

    zypper install apache2-mod_fcgid python-fcgi

Enable FastCGI in Apache by adding fcgid to APACHE_MODULES in file /etc/sysconfig/apache2.

Copy sample web2ldap's configuration and edit to suit your needs (e.g. allowed IP addresses):

    cp /opt/web2ldap/etc/httpd/sample-mod_fcgid.conf /etc/apache2/conf.d/web2ldap-fcgid.conf
    $EDITOR /etc/apache2/conf.d/web2ldap-fcgid.conf
    rcapache2 restart

Access it with your browser (takes a bit longer the first time):

`http://your-server-hostname-or-address-here/web2ldap`

or if your server already is configured with SSL enabled:

`https://your-server-hostname-or-address-here/web2ldap`