autodns 0.0.4 - A program to aid auto addition of secondary DNS.
Copyright 1999-2001 Jonathan McDowell for Project Purple.
http://www.earth.li/projectpurple/progs/autodns.html


Introduction:

AutoDNS is a simple Perl script designed to allow the easy addition of
secondary DNS zones controlled via email.

The principle is simple. AutoDNS accepts a GPG clear signed email on
stdin, so can simply be added to a .forward file or whatever. You
configure it to know about the key IDs of all the people you wish to be
able to setup secondaries on your server and add their keys to the GPG
keyring for the user it runs under.

Most of the configuration options are at the top of autodns.pl, just
after where VERSION is defined. The other bit of config that's needed is
a users file.

You'll also need a way for the script to be able to do a "ndc reconfig"
to load the info about the new secondary domains - I do this using sudo.

The format of commands to AutoDNS is very simple. It current accepts 5
commands:

BEGIN
	Indicate the beginning of a block of commands.
END
	Indicate the end of a block of commands.
ADD <domain>
	Add <domain> to the list of secondaried domains.
DEL <domain>
	Delete <domain> from the list of secondaried domains, assuming
	it's owned by the current user and is being secondaried
	currently.
LIST
	List secondaried domains.
HELP
	Show basic help.

So a typical email would contain:

BEGIN
ADD foo.bar
END

as the body, which would then be signed with gpg --clearsign and sent.
AutoDNS will reply with the results of the commands sent to it.


Users file

The users file is of a very simple format. It contains one user per
line like so:

<userid>:<gpgkeyid>:<priv>:<master server>

So an example would be:

noodles:5B430367:0:212.135.138.190

Lines beginning with a '#' are treated as comments. See autodns.users in
the tarball for an example.


Contacting the author:

I can be reached as noodles@earth.li or on Fidonet as Jonathan McDowell
@ 2:443/21

All constructive criticism about autodns is welcome.


License:

autodns is distributed under the GNU Public License, a copy of which
should have been provided with this archive as LICENSE.
