Introduction
Abcontrol is a suite of components that integrates
NetBox
RabbitMQ
OpenLDAP
It can optionally integrate with
BECS from PacketFront software
DNS
Freeradius
Icinga
Librenms
Oxidized
Abcontrol Homepage: https://github.com/abundo/Abcontrol
Abcontrol Documentation: https://readthedocs.org/projects/Abcontrol/
The documentation is also available when the django application is running.
Applications
Netbox
Feature: Required
Netbox is a major component of Abcontrol. It contains all devices and device IP addresses that Abcontrol manages.
Netbox homepage: https://github.com/netbox-community/netbox
OpenLDAP
Feature: Required
OpenLDAP is an opensource LDAP server.
Abcontrol uses LDAP for access control.
Other applications can be configured to use LDAP, centralizing the authentification and authorizaion.
OpenLDAP home: https://openldap.org/
PostgreSQL
Feature: Required
PostgreSQL is a relational SQL database.
Homepage: https://www.postgresql.org/
RabbitMQ
Feature: Required
RabbitMQ is a message bus. It is used for log messages and communication between different procesesses and servers.
RabbitMQ Homepage: https://www.rabbitmq.com/
Optional applications
BECS from PacketFront Software
Feature: Optional
BECS is a BSS/OSS application.
Abcontrol does not manage BECS, devices in BECS can be syncronized with NetBox. BECS integration is using the BECS EAPI.
BECS homepage: https://pfsw.com/becs/
DNS
Feature: Required for some components, recommended
Abcontrol can keep DNS up-to-date with forward and reverse entries for all devices in NetBox.
Abcontrol can also parse all device configuration files and create reverse DNS entries for all their interfaces. This makes for example a traceroute more useful, with names instead of IP addresses, describing the interfaces traversed.
Interface with the DNS software is done using the Dnsmgr program.
Dnsmgr homepage: https://github.com/abundo/dnsmgr
FreeRADIUS
Feature: Optional
FreeRADIUS is not directly part of Abcontrol. It is configured to use OpenLDAP as the database backend. Adding a user to LDAP, with the correct group enables the user in FreeRADIUS.
FreeRADIUS homepage: https://freeradius.org/
FusionDirectory
Feature: Optional
FusionDirectory is a web gui to easy administer users and groups in the LDAP server.
FusionDirectory homepage : https://www.fusiondirectory.org/en/
Icinga
Feature: Optional
Abcontrol can syncronize devices in Netbox with Icinga.
Icinga homepage: https://icinga.com/
Librenms
Feature: Optional
Abcontrol can synchonize devices in Netbox with librenms. parent relationships are also synchronzed. The LibreNMS API is used for all operations except adjusting parents due to the API missing some functionality. Parent adjustment is done by directly accessing the mariadb database.
Librenms homepage: https://www.librenms.org/
Oxidized
Feature: Optional
Oxidized is an application that can do configuration backup on routers and switches.
Abcontrol can synchronize devices in Netbox with oxidized.
Oxidized homepage: https://github.com/ytti/oxidized
Dependencies
ablib
Feature: Required
ablib is a collection of support libraries used by Abcontrol
ablib Homepage: https://github.com/abundo/ablib
Apache2
Feature: Optional, other web servers can be used
Apache2 is used on Abcontrol to show the main Web interface. It is also used to proxy HTTPs to HTTP, handling X.509 certificates.
Apache2 homepage: https://httpd.apache.org/
Dnsmgr
Feature: Optional, required if DNS integration is used
Dnmsgr is a tool to simplify the configuration of a named/bind server.
Dnsmgr homepage: https://github.com/abundo/dnsmgr