Skip to content

scurvy/LDAPService

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

169 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LDAPService (mine)
------------------

This is forked from the LSSM written by Michael Stahnke. His version was posted on GitHub in a
non-working state. It looked decent, so I forked it and got it working. My version uses a better
LDAP library and at least the user self-edit stuff works. I might deal with the password reset
interface later and get that working. Right now, it's not a use-case for my job so I didn't 
spend any time on it.

Just so we get this clear, he did a lot of the heavy lifting (and looks like borrowed stuff from
other people, too). I just got it going again. You can run this stuff out of webrick now by running
helpers/server.rb. It should do OK for most moderately sized places. After all, how often are
users going to be making edits? My version uses the Ruby in-memory session DB, so it will fail
using multiple mongrel or unicorn procs. I wouldn't bother with his setup steps. Just clone this
repo, install the deps, and run the process via daemontools or init. 

This version requires Ruby, rubygems, ruby-net-ldap gem. That and you'll have to rename the config
file in config to config.yaml.example after you've customized it for your environment.

Here follow's Michael's original read me:

LDAPService (original)
----------------------

LDAP Self Service Manager or lssm as I am currently calling it, is a tool to allow for user
self-management and password recovery based a fairly typical LDAP setup.

The setup assumes you have users in an objectclass that contains 'userPassword' 
as the attribute that contains their password and that 'self-write' is enabled
on that attribute.  Most everything else is configurable in the configuration
file, which is simple YAML.

This project allows for:
* Self service of any self-writable attribute
* Password Recovery if a password is forgotten

Status
-------
Project is still pre-alpha.  It has some basic functionality, but bugs are 
probably quite common.  Also, the TODO list is growing quite long.


License
-------
GPLv2 and later.

Copyright 2009; Michael Stahnke



Setup
------
Right now this expects you check it out in /srv/lssm
Then run 'sudo rake httpd' on Fedora/RHEL/Centos
or 'sudo rake apache2' on Debian

* Install the proper Packages
* Ensure you can send email from the system
* Update your configuration file

Issue with TLS/SSL
* If you're using SSL on your directory and your system-wide ldap.conf is not world-readable
you can get odd errors that say 'unable to contact ldap server'.  If this happens, create a
.ldaprc in your web-server user's home directory.  See man ldap.conf(5).


Notes:
------
* The rakefile is a joke and only there for my test setup currently 
  (more or less)


Requiments:
-----------
RH:
 rubygems
 ruby-ldap
 rubygem-rake
 httpd

Deb:
 apache2
 libldap-ruby1.8
 rake

About

LDAP User Management Self-Service Application

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Ruby 88.7%
  • CSS 11.3%