ProBIND is a web application designed for managing the DNS zones for one or more servers running the ISC BIND DNS server software. It works best for companies that need to manage a medium-sized pool of domains across a set of servers.
The application has been written using Laravel framework. It stores its data in a MySQL, Postgres database (see Laravel Database Backend) and generates configuration files for BIND on-demand.
ProBIND is meant to be a time-saving tool for busy administrators, aiding in managing the configuration of DNS zones across multiple servers. It is intended for use by those already familiar with the components of a DNS zone file and who understand DNS concepts and methods.
This software acts as a configuration repository to help keep zones well-maintained and has several helping tools to ensure that common DNS issues are minimized.
Although ProBIND uses a database to store zone data, it is not a replacement backend for ISC BIND. ProBIND merely creates the proper zone files for use with the default configuration method of BIND. If you are looking for a live SQL backend for ISC BIND, this is not one.
ProBIND is not a tool for those unfamiliar with DNS concepts. It assumes you know the differences between a CNAME and an A record. It also assumes you know about SOA records, what a lame server is, and what glue is.
ProBIND is not the ultimate solution to DNS management. It fits the needs of those who develop it, and it is hoped that others will also find it useful.
See our CHANGELOG file in order to know what changes are implemented in every version.
- PHP 7.4+ with
gmp
extension. - A supported relational database and corresponding PHP extension.
- Composer.
This will create several Docker containers to implement all ProBIND needs. An application server, a web server, a database server.
Prior this installation, you need to have installed this software:
-
Clone the repository locally
$ git clone https://github.com/pacoorozco/probind.git probind $ cd probind
-
Copy
.env.example
to.env
.NOTE: You don't need to touch anything from this file. It works with default settings.
-
Start all containers with Docker Compose
NOTE: You must export the
DOCKER_PROBIND_UID
variable if your user ID is different from1000
. This will allow the docker to get permissions over your files.$ export DOCKER_PROBIND_UID="$(id -u)" $ docker-compose build $ docker-compose up -d
-
Install dependencies with:
$ docker-compose exec app composer install
-
Seed database in order to play with some data
NOTE: Remove
--seed
if you don't want to seed sample data.$ docker-compose exec app php artisan key:generate $ docker-compose exec app php artisan migrate:fresh --seed
-
Go to
http://localhost/install
and finish ProBIND installation. Enjoy!NOTE: Default credentials are
admin/secret
.
If you have issues with ProBIND, you can report them with the GitHub issues module.
Please see CONTRIBUTING for details.
ProBIND is released as free software under GPLv3
ProBIND was originally developed by Flemming S. Johansen as part of his duties as resident DNS manager at Proventum Solutions. Later, a fork of ProBIND called ProBIND2 was developed by Alexei P. Roudnev, a senior network/software engineer, at Exigen Group LTD.
With both projects lying dormant for a number of years, Michael Johnson, Systems Administrator at PhD Computing, attempted to revive the ProBIND project. The enhancements made in ProBIND2 were merged in and development were once again resumed.
Later, in 2016, Paco Orozco recoded all this application using Laravel Framework to bring a new version of this software. It was named ProBIND v3.
See AUTHORS for a complete list of contributors.