This is an archive of a project that is no longer updated. There are known security vulnerabilities in Anterius. You may want to take a look at Stork, which is under heavy development by ISC.
The Anterius project is developed as part of the Google Summer of Code '18 program, with the objective to create a GUI dashboard for the Kea DHCP server that provides monitoring and configuration capabilities to users.
The GUI and base functionality has been adapted from the GLASS dashboard created for ISC DHCP server.
Anterius functionality has been modified to support interaction with Kea servers running on remote systems, by incorporating features from the REST API exposed by the Kea Control Agent.
Anterius supports monitoring and configuration of both DHCPv4 and DHCPv6 servers (provided they are operational at the selected control agent interface).
Anterius is also designed to interface with multiple server host machines by switching between control agent destination addresses.
The home page provides a monitoring dashboard for the connected server that compiles realtime statistics and critical operating information:
Subnet Distribution & Utilization
The alerting function allows admins to set custom thresholds for subnet and shared network utilization
Alert Levels:
(Instructions for Debian/Ubuntu based systems)
~$ keactrl start -s *server*
~$ keactrl start -s *server* -c */path/to/kea-*server*.conf*
Activate the Kea Control Agent using the following command (change -c conf file path if required):
~$ kea-ctrl-agent -c /usr/local/etc/kea/kea-ctrl-agent.conf
The CA runs on port 8000 by default, defined in the CA config file. Please refer to the Kea Control Agent Documentation for setting CA parameters and addtional info.
Check status of Kea DHCPv4/v6 servers and Kea Control Agent (must be active) using the command:
~$ keactrl status
Anterius employs a set of commands from the Leases hooks library to fetch current lease information from the server via the CA API. This information would be absent from the dashboard in case this hook is not configured.
Add the following lines to the server(v4/v6) config file to enable lease hook library:
"hooks-libraries": [{ "library": "/usr/local/lib/hooks/libdhcp_lease_cmds.so" }]
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - sudo apt-get install -y nodejs
Clone source code from Github
git clone https://github.com/isc-projects/kea-anterius.git cd kea-anterius
Install node modules (application dependencies)
sudo npm install
Launch the nodejs server, browse to http://localhost:3000 to use the interface.
sudo npm start
Anterius interface can be configured to work with one or more Kea server instances running either on a remote system or the local machine.
This characteristic is defined by the address parameter set for the Kea Control Agent that provides API access to the server.
Navigate to the Kea Hostname List in the settings page to add/edit/delete server host machine details.