Welcome to BSDforge

Projects : dns/ldapdns

ldapdns

Instructions

These are NOT generic install instructions. They are a step-by-step guide to making ldapdns work for you.

Let me say first: you will be happiest if you use a package (preferably, building it yourself). rpm -e ldapdns is a whole lot easier than the alternative but if need be, ldapdns doesn't create any special libraries, using the default install:

rm -f /usr/local/bin/ldapaxfr-conf
rm -f /usr/local/bin/ldapdns-conf
rm -f /usr/local/bin/ldapaxfr
rm -f /usr/local/bin/ldapdns
rm -rf /var/lib/ldapdns

Then remove ldapdns from your startup scripts. don't know how to do that? go get an operating system with packages that I support, or find someone to help.

type "make"

decide how you want to run ldapdns;

DAEMONTOOLS - installing ala djb.
REDHAT - how to create .rpm packages
DEBIAN - how to create .deb packages
SOLARIS - why there aren't any .pkg packages
BSDISH - how to get running on a *BSD or slackware
UNIXISH - for all other unixes
WINDOWS - why there isn't a windows build procedure

DAEMONTOOLS

if you're a user of other djb software, you'll want daemontools support.

3. "make install"

4. use ldapdns-conf to create the service

5. link the service using ln -s /path/to/ldapdns/dir /service/ldapdns

6. that's it! ldapdns should startup within 5 seconds. use this time to make ldapdns useful by giving it the password to the directory. It goes in $ROOT/root/password

now go read README.configure

REDHAT

think redhat means linux?

you may want to go get RPM's for your system. if you want to build your own,

then these instructions will still be helpful.

3. STOP RIGHT HERE. go read README.using-rpm

4. create /var/lib/ldapdns/root/password - put your LDAP password in here if appropriate

5. are you going to accept AXFR/TCP requests?

create /var/lib/ldapdns/axfr with the appropriate access controls. there's a sample one in sample/axfr

then type:
chkconfig --add ldapaxfr

6. okay, you did that? now type:
chkconfig --add ldapdns

now go read README.configure

DEBIAN

3. STOP RIGHT HERE. go read README.using-debian

4. create /var/lib/ldapdns/root/password - put your LDAP password in here if appropriate

5. add /etc/init.d/ldapdns to the appropriate runlevels (usually 2)

6. if you're going to accept AXFR/TCP requests, also add /etc/init.d/ldapaxfr to the appropriate runlevels and edit /var/lib/ldapdns/axfr

if nothing worked, you didn't read README.using-debian -- I do not know what I am doing here. I have gotten many requests for debian support, so I gave up 20 minutes of my day to cobble together a debian package.

if you have too many problems, use the regular UNIXISH instructions below.

but if everything is okaay: go read README.configure

SOLARIS (and other systems using .pkg)

i cannot yet help you create solaris PKG files. the truth is that I simply do not know how. i don't own any functioning sparcs, and I have way too much respect for the x86 systems that I do have to run something as slow and cruddy as solaris on them.

i am aware that openbsd/freebsd/netbsd also support packages similar to these packages used by solaris. I do not know how they are the same and how they are different.

however, if ultralinux turns you off, then you may want to investigate how to do this. my UNIXISH guide (See below) should get you started.

BSDISH (openbsd, freebsd, slackware)

The information that follows this, is old, and largely inaccurate. The recommended way to install on a *BSD powered box, is to simply use the BSD ports system. Simply put;

$ cd /usr/ports/dns/ldapdns
$ make
$ make install clean

Now that wasn't so hard. Was it?. For more information, and the ldapdns listing. See FreeBSD ports.

...and now for the old, dated, inaccurate info:

this is not as easy as you might think. I highly recommend that all users of a bsdish system use djb's daemontools.

3. "make install"

4. take a good hard look at what I've created in sysvinit/. Add what you think is appropriate to your /etc/rc* scripts.

5. copy the sample configuration script into /etc/ldapdns.conf -- they're in sample/ldapdns.conf -- check it for configuration details

6. create your $ROOT directory. the default is /var/lib/ldapdns

7. create /var/lib/ldapdns/root/password - put your LDAP password in here if appropriate

8. are you going to accept AXFR/TCP requests?

create /var/lib/ldapdns/root/axfr with the appropriate access controls. there's a sample one in sample/axfr

9. cross your fingers... reboot your system.

this procedure requires more thinking than any other. bsdish startup scripts are awful, and anyone who says that they think they like them has never tried to maintain more than a handful of systems _or_ tried to build an installer for those systems.

now go read README.configure

UNIXISH (hp-ux, aix, etc)

don't like djb? or just afraid?
no matter. ldapdns is flexible even if you are not.

you can use ldapdns with a standardish unixish system.

3. "make install"

4. copy the sysvinit/* into /etc/init.d/

5. copy the sample configuration script into /etc/ldapdns.conf OR /etc/sysconfig/ldapdns (whichever is appropriate) -- they're in sample/ldapdns.conf -- check it for configuration details

6. create your $ROOT directory. the default is /var/lib/ldapdns

7. create /var/lib/ldapdns/root/password - put your LDAP password in here if appropriate

8. are you going to accept AXFR/TCP requests?

create /var/lib/ldapdns/root/axfr with the appropriate access controls. there's a sample one in sample/axfr

9. link /etc/init.d/ldapdns into the appropriate runlevels for starting,

this procedure will require modifications based on your unix. not all unix are created equal.

now go read README.configure

WINDOWS

i'm not going to dignify this with real instructions. come on now, you use your system because you think your systems are easy to use?

if someone were to port ldapdns to windows, I would probably be disappointed. Your efforts could have been better spent elsewhere.

with that said: if someone does infact someday get ldapdns to build under windows, I will welcome patches.

i welcome binary packages (solaris, RPM's, dpkg, zips, etc). i also welcome ldapdns being included in a binary-only distribution. feel free to contact me regarding details/changes needed for YOUR binary distribution.