LHEx 0.2a ========= This is release 0.2a of LHEx. This software is of alpha quality, and expected to contain many bugs. Please report any bugs (with fixes, if possible) to Andrew Snare (ajs@pigpond.com). What is LHEx? ------------- LHEx is an authentication service for IRC servers. It consists of two parts: 1) An iauth module (mod_lhex) that communicates with LHEx; 2) The LHEx server (this package). It allows one to report incidents via a web-interface. An incident report allows one to store logs of the incident and other information, as well as a set of bans that should be applied as a result of the ban. In this context, a ban is equivalent to and performs the same role as K-Lines currently do. An important aspect of the system is that when an incident report is made, an expiry and review-date is set. This means that the bans associated with an incident automatically expire, and periodic review can also be undertaken. Features: o Easy-to-use web interface; o Central location for storing all information pertaining to an incident; o Bans that expire or can be reviewed; o Accountability. Caveats: o LHEx can't kill clients already on IRC (like K-Lines do) when an incident report is made; o The code for reviewing incidents is not in place yet. System Requirements ------------------- LHEx is implemented purely in Python. Hence you need to have python installed. Version 1.5.2 or later is best -- earlier versions might work but have not been tested. The mod_lhex iauth module that communicates with LHEx is included in the ircd distribution from version 2.10.3a4 onwards. In addition if you wish for LHEx to be able to tell a connection that they're banned, ircd needs to be patched to recognize some new iauth protocol messages. No web-server is needed -- LHEx uses its own one. Installation ------------ Installation is fairly simple -- LHEx is designed to run straight out of the directory you unpack it into. To configure LHEx before use, edit the file lib/python/Config/config.py within the directory you unpacked LHEx into. The format of this file should be self-explanatory. Anything that is valid Python will work but it should be possible to edit this file without knowing Python. Starting LHEx ------------- The LHEx server is started by executing the LHEx script in the directory you unpacked LHEx into. Scripts are also provided to kill the LHEx server, or restart it. By default, the LHEx web-server listens on port 9673. LHEx itself also listens on port 9674 for authentication requests from iauth/mod_lhex. To start using LHEx, simply point your web-browser at http://your.host:9673/ -- using the web interface should be fairly straight forward and simple. The initial password for the admin user (name specified in the config file mentioned above) is "epr0cks". Since this is an alpha version of LHEx, a lot of information is printed by various components of the system. Most of this harmless and can be safely ignored. Acknowledgments --------------- This software makes heavy use of (and includes) software components developed by Digital Creations (http://www.digicool.com) and released as Bobo. The Bobo software has since been incorporated into Zope (formerly Principia). Anyone developing web-based applications should check out http://www.zope.org/ and be prepared for a pleasant surprise. Certainly the existence of Zope made the development of LHEx a lot easier.