Creating New Server

Sauron can manage multiple servers, where each "server" is contains its own DNS & DHCP server configuration information. This allows single Sauron system to manage multiple DNS & DHCP servers. Normally each servers are completely separate from each other, but it is possible to generate "slave" servers that use another server as a master server, and inherit it's all master zones (as slave zones), and optionally slave server can also inherit master server's access controls (for DNS server).

There are two ways to create a new server in Sauron. One is to import existing DNS & DHCP configuration into Sauron, for easier migration into use of Sauron. Another way is to start from "scratch" and create new server and zones interactively using Sauron's web interface. Following sections show example how to do this both ways (there is also section showing how to use the included demo database to take a quick look how Sauron works; the Section called Using Demonstration Database).

Using Web Interface

First, login using the web interface as an administrator into Sauron. You should now be in "Select server" dialog, with empty list of servers to choose from. Now select "Add" to add a new server. See Table 5-1 for information of the fields used in this dialog.

Next step is to define global DHCP server settings, by choosing Edit from Servers menu. Now you can add desired DHCP settings in the Global DHCP Settings field, one setting per line without the semicolon (;) at the end of line. Here's some typical global DHCP settings:
        authoritative
        allow bootp
        use-host-decl-names on
        default-lease-time 7200
        max-lease-time 38400
        option domain-name-servers ns1.middle.earth,ns2.middle.earth
        option ntp-servers ntp1.middle.earth,ntp2.middle.earth
        

After creating a server, it's time to add networks into Networks table in Nets menu. Generate net for each network that has been delegated for your use (and you're generating "reverse" zones for). You should also generate subnets within these networks that describe your network topology. If your network is split up into VLANs / Layer-2 Networks (or "Shared Networks" as DHCP calls them), add you necessary VLANs using Add vlan before, and assign each subnet into appropriate VLAN. It is also possible to create "virtual subnets" that are used only for access control purposes by setting "DHCP" setting for these subnets to false.

Next step is to add the default zones (localhost and reverse zones for 0.0.0.0/8, 127.0.0.0/8, and 255.0.0.0/8) into the server. This can be done from Zones menu using Add Default Zones, which should produce following output:
Adding zone: localhost...OK (id=1)
Adding zone: 127.in-addr.arpa...OK (id=2)
Adding zone: 0.in-addr.arpa...OK (id=3)
Adding zone: 255.in-addr.arpa...OK (id=4)
        

Now its time to add your zone(s) into the server. This can be done from Zones using the Add command. See Table 5-3 for description of the fields used in this dialog. After creating a zone, edit the zone by selecting Edit from Zones menu, and add Name server (NS) entries and other needed entries for the zone. See Table 5-4 for description of the fields used in this dialog.

Finally after creating the zone(s) you want. You may start adding hosts into your zones. Before adding hosts make sure you've selected correct server and zone (Note, you can save your current zone and server selection as defaults from Login menu using the Save Settings command). To add a new host simply select Add host from Hosts menu. If you want to make a "copy" of existing host, first select the host and press Copy button. This will fill out the new host dialog with information from the current host. See Table 5-6 for description of the fields used in this dialog.

There are also templates and groups that you may define and use when adding/modifying hosts. To makes it easier to define or change certain settings for large groups of hosts, by just modifying the related template or group. More information about these can be found in the Section called Templates Menu in Chapter 5.

Using Existing DNS/DHCP Configuration

For importing existing BIND configuration files and existing DHCP configuration file there is import and import-dhcp utilities. These utilities can be used to import new server into existing Sauron database.

First step is to import your existing BIND configuration into Sauron. This can be done as follows:
        ./import ns1 /etc/named.conf
        
Where import will read your BIND configuration from named.conf. Import will read also master zone-files from directories specified in named.conf. Use --dir=<directory> to specify alternate location for zone-file if they're not located in the directories specified in named.conf.

Since BIND configuration does not contain information about your network topology nor the hardware (Ethernet) addresses of hosts, you should also import your existing DHCP configuration file dhcpd.conf using import-dhcp. This can be done as follows:
        ./import-dhcp --global ns1 /etc/dhcpd.conf
        
This will update hosts in the server "ns1" with information from dhcpd configuration file. Option --global causes global dhcp settings to be imported into the server record.

Using Demonstration Database

There is small demonstration database included with Sauron distribution. This database is a dump of Sauron database that contains sample server, which demonstrates some features of Sauron.

To use this database dump you need to create a new database in PostgreSQL and restore this dump into it using psql utility. This can be done as follows (from the sauron top-level directory):
        cd test
        createdb sauron-demo
        psql sauron-demo -f sauron-demo.dump
        
After creating the database you need to set DB_CONNECT variable in config file to connect to this database.

This demonstration database has three user accounts already setup: