Current Version: 1.1 What is zoneadm? ---------------- Zoneadm is a CGI application to allow a DNS hosting site to delegate simple zone change privileges to remote users via a web interface. It allows a remote user the ability to make A, CNAME, PTR, and MX record changes to a zone that the DNS site administrator has given them permission to modify. It does some sanity checking on the information entered by the user, but it may not be foolproof and assumes some knowledge of DNS resource records by the users. What is zoneadm NOT? -------------------- A tool to setup your entire DNS configuration for you. At a very minimum, you would have to have a working named.conf file, and zone files with SOA and NS records in them. Requirements ------------ - perl, and the CGI module for perl. - A Unix system and webserver that handles .htaccess style authentication. - A web browser. Having JavaScript turned on is not required. Installation ------------ 1. Create a directory named "zoneadm" under your cgi-bin directory. This "zoneadm" directory must have the ability to do .htaccess style authentication. 2. Copy the zoneadm.pl script and edit it to set the path to your perl executable if necessary. Also, edit the values of the $zoneadm_dir, $named_conf, and $bind_hup_file variables within the zoneadm.pl script if you wish. 3. Create the .htaccess file in the directory where zoneadm.pl is installed. An example .htaccess file is included in the distribution. Also, copy the given zoneadm_users file to the "AuthUserFile" directory specified in your .htaccess file. 4. Copy the zoneadm.jpg file to your webservers "icons" directory. 5. Create the directory that $zoneadm_dir is set to, and change the ownership of that directory to be owned by the same user that your httpd process runs as. 6. Change the ownership of any zone files that you wish to admin'ed with zoneadm to be owned by the same UID that your webserver runs as. 7. If you want to allow users to request a BIND restart, review and install the zoneadm_cron.sh script included in the distribution. 8. If you want to control the way that zone serial numbers get updated, edit the "serial_increase" subroutine in the zoneadm.pl script. The default is to simply increase the serial number by 1 each time a change is made. The subroutine contains an example of how to do serial number updates if the serial number is based on the date. Usage ----- Access the zoneadm.pl CGI script with your web browser. The first time you login, the "admin" password is set to "admin". You can then begin setting up users for each zone. Multiple users can have priviliges to modify a given zone. Once a user has been mapped to a zone, they can then begin administrating the A, CNAME, PTR, and MX records for that zone from their browser. See comments in the zoneadm.pl script for more information. Author and Homepage ------------------- Author: Michael Arndt Email: marndt@bulldog.tzo.org Home Page: http://bulldog.tzo.org/zoneadm/zoneadm.html Thanks to: ---------- Chip Cuccio - Beta testing, debugging, improvements. Rodolphe Galliou - Providing help with "views" support, and finding a parsing error in read_zones. Terms and conditions of this software ------------------------------------- This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.