Hyperactive Directory Administrator
HAD Administrator News
June 27 2002: Version 0.4 is released!
Download the latest
version here or read the Change log.
September 13 2002: Version 0.3 is released!
July 23 2002: Version 0.2.5 is released.
June 3 2002: HDAdmin discussion mailing
list now available.
May 13 2002: Version 0.2 is released (finally)!
February 3 2002: Version 0.1.5 is released!
What is HAD Administrator?
Hyperactive Directory Administrator (HAD Administrator) is a graphical
tool for administering Users, Groups, Hosts and other objects in an LDAP
directory. It differs from other tools available such as GQ in that it is not designed to be a
general purpose directory editor and is only intended for use in an LDAP
environment (it doesn't do anything with NIS or local files). HAD
Administrator is roughly modelled
after the Microsoft Active Directory Users and Computers tool, which I
find surprisingly useful.
What can it do?
Quite a bit, actually. Even though HDAdmin isn't finished yet, you can do
all sorts of useful things:
- Connect and bind to an LDAP searver using DNs or usernames (can also
connect over SSL)
- View a Directory Tree and the objects in the tree
- Search the directory tree for any of the supported object types
- View, edit and add users, groups and hosts
- Change passwords and disable accounts
- Save objects as LDIF files
- View other objects in a not so pretty way (LDIF)
Right now, it can not:
- Create or edit other types of data such as aliases or netgroups.
- Extend the existing data types to support additional data, such as
Jabber profiles or Solaris RBAC data.
- Slice bread
That said, some day I hope it will be able to do all of these things and
more. I'm working on adding this functionality as time allows, suggestions
and comments are welcome (my email is at the bottom of the page).
What does it look like?
Here are a few screenshots to whet your appetite (sorry for the poor
What do I need to run it?
HAD Administrator is written in Pike,
a fabulous object oriented language akin to C or Java, but interpreted
like Python or Perl. You'll need a copy of Pike 7.4 (I tested the current
release using 7.4.20) from the Pike
website. You also need GTK+ and the Gnome
libraries installed before you compile Pike. Additionally, a sense of
adventure is helpful.
Where can I discuss it?
A discussion mailing list is available by sending a message containing the
subject "subscribe" to hdadmin-discuss-request at riverweb.com. The
mailing list address is hdadmin-discuss at riverweb.com.
Where can I get it?
You can download the latest source release, version 0.4, here.
This is a version known to compile on my development systems. I've tested
using a recent Pike compiled from CVS sources on Linux and Solaris. I test
against iPlanet DS 4.1. Previous versions required a bunch of patches to
Pike, but I've since gained access to the Pike CVS and so they've been
incorporated. Any release of Pike v7.4 should do just fine.
I provide this under the GPL, and make no warranties about its usefulnes
or ability to not cause serious problems for others. Use at your own risk.
How do I use it?
Assuming your Pike is up to snuff (you have all the latest patches and
GTK+ and Gnome support compiled in), just do:
pike -M. hdadmin.pike
If you've got an /etc/ldap.conf from (pam|nss)_ldap, HADA will read it
for some reasonable defaults. If not, you will need to provide login
- Server (an LDAP url of the form: ldap(s)://server:port)
- Base DN (dc=mydomain, dc=com)
- User DN or username (cn=directory administrator or hww3 as examples)
The rest should be pretty obvious, though I hope to get some actual
documentation out sometime sooner rather than later.
Note: HADA's behavior is to ensure that each object that can be
edited is a member of the proper objectclasses. If you edit a user, for
example, HADA will verify the objectclass of a user, and if necessary, add
additional objectclasses to the user. If you don't have all of the
required schemas on your directory server, you'll probably get an error.
The good news is that the schemas used are relatively standard (Person,
Also, there are new configuration files, located (optionally) in
/etc/hdadmin.conf, ~/.hdadmin and $DIST/hdadmin_defaults.conf. Copy the
default file to one of the other locations and edit to your heart's
How can I contribute?
I'm always glad to get suggestions, even happier to receive code. If you
know Pike and would like to contribute, please send me diffs against the
code distributed here, along with a description of what you've done and
why. If it makes sense to me, I'll include it in the distribution.
Last modified June 2003 by Bill Welliver <email@example.com>