Sauron is a free DNS/DHCP management system.
Sauron is composed of sauron "back-end" that is used by the command-line and web interfaces to access the data stored in a SQL database (PostgreSQL).
Sauron is able to dynamically generated complete DNS (BIND) and DHCP (ISC DHCP) configurations based on the data stored in the SQL-database. Sauron is written completely in Perl using standard modules and few additional modules from CPAN.
Web interface is a standalone CGI script and should work with almost any www server that supports CGI.
Database is organized as follows; a number of servers may be defined where each server may contain several zones. At server level there may be "global" definitions for DNS & DHCP settings and a Layer-2 network map (VLAN map) which is used generating necessary topology information for dhcpd.
Each server can have multiple (DNS) zones defined. Hosts belong to a zone and may contain additional information (such as asset IDs) to necessary DNS/DHCP information.
Sauron was created at the Computing Center of University of Jyväskylä. It is still under development, but has been in production use since early 2001, managing the campus area network (CAN) with over 10,000 computers.
Here are some key features of "Sauron":
· Able to manage DNS & DHCP services for multiple servers (enterprises).
· Dynamically generates complete DNS & DHCP configurations from a central SQL-database.
· Automatic generation of DNS "reverse" zones, with support for smaller than C-class reverse delegations.
· Web interface with user & group based access controls.
· Command-line interface for administrators.
· generates complete BIND (DNS) configuration file set for each server
· generates complete dhcpd (ISC's DHCP) configuration file set for each server
· automatically generates "reverse" zones
· supports smaller than class-C "reverse" zone delegations
· dynamic host aliases (both CNAME and A-record)
· support for dynamic DHCP address pools with access control (requires DHCP v3)
· DHCP failover support (requires ISC DHCP v3 or newer)
· MX and WKS record templates for hosts
· hosts may be assigned to a group that defines common attributes for it
· support for most most of the standard DNS RRs (resource records)
What's New in This Release:
· added "subgroups" for defining additional group(s) for host(s), currently subgroup memberships are used when generating DHCP class entries in dhcpd.conf.
· linking to "pages" inside Sauron now works (without frames)
· A host can now be a member of one of more "subgroups" in addition to one (main)group.
· Database connection interface changed, new configuration options DB_DSN,DB_USER,DB_PASSWORD are now used instead of old DB_CONNECT.
· CGI interface: added enable/disable buttons for easy togling between host and host reservation
· CGI interface: added ability to search by date(ranges) (by host creation/modification and last dhcp lease)
· CGI interface: now advertises "Save Defaults" command to users without saved defaults
· CGI interface: added ability to search by asset IDs
· initial "plugin" support for CGI interface (one sample/test plugin provided as an example)
· new command "Clear Defaults" in web interface patch by Michael S. Liebman
· status command now detecs also zone/server changes (previously only host changes were detected)
· import-dhcp: support for multiple host entries with same MAC and fixes to MAC address parsing by Spencer H Visick
· update-dhcp-info: now supports also logfiles generated by Solaris syslogd
· now returns all results when using "Download results in CVS format" option when searching hosts
· new configuration option SAURON_HINFO_MODE to set the behaviour of (host) HINFO fields when adding/editing hosts (see config.in for more info)
· primary and slave zone pathnames can now automatically be "hashed" by the first letter(s) of zone name, by using special tag %N in "Primary zone-file path" and/or
· "Slave zone-file path" fields in server settings.
· database format changes (1.2):
· settings: renamed column 'key' --> 'setting'
· nets: new columnd 'dummy'
· servers: new column 'lastrun'
· hosts: new column 'email'
· group_entries: new table
· new configuration valiablre SAURON_CHR that allows limiting what can be used in some host record fields (dept,location,asset_id) by server and by user group
· VLAN names now can be in mixed-case (before only lower-case was allowed)
· support for "DHCP only" entries without IP (just MAC address)
· sauron.cgi script split into several modules that are loaded only when needed (should make code more manageable and maybe a even slightly faster)
· added support for Apache (external) authentication