Poweradmin is a friendly web-based DNS administration tool for Bert Hubert's PowerDNS server. The interface has full support for most of the features of PowerDNS. It has full support for all zone types ( master, native and slave), for supermasters for automatic provisioning of slave zones, full support for IPv6 and comes with multi-language support.
Disclaimer
This project is not affiliated with PowerDNS.com , Open-Xchange, or any other third parties. It is independently funded and maintained. If this project does not meet your needs, please check out these other options.
Requirements
- PHP 8.1
- PHP intl extension
- PHP gettext extension
- PHP openssl extension
- PHP pdo extension
- PHP pdo-mysql, pdo-pgsql or pdo-sqlite extension
- PHP ldap extension (optional)
- MySQL 5.7.x/8.x, MariaDB, PostgreSQL or SQLite database
- PowerDNS authoritative server 4.0.0+
Tested on
Poweradmin | PHP | PowerDNS | MariaDB | MySQL | PostgreSQL | SQLite |
---|---|---|---|---|---|---|
3.6.x | 8.1.2 | 4.5.3 | 11.1.2 | 8.1.0 | 16.0 | 3.40.1 |
3.5.x | 8.1.17 | 4.5.3 | 10.11.2 | 8.0.32 | 15.2 | 3.34.1 |
3.4.x | 7.4.3 / 8.1.12 | 4.2.1 | 10.10.2 | 8.0.31 | 15.1 | 3.34.1 |
Installation
Install the following dependencies:
On Debian based Systems:
apt install php-intl
For MySQL/MariaDB
apt install php-mysqlnd
For PostgreSQL
apt install php-pgsql
For SQLite
apt install php-sqlite3
On RHEL based Systems:
yum install -y php-intl
For MySQL/MariaDB
yum install -y php-mysqlnd
For PostgreSQL
yum install -y php-pgsql
Download the project files
- Via Git:
- Clone the repository:
git clone https://github.com/poweradmin/poweradmin.git
- Select latest tag (for example v3.6.0) or skip this if you want to run from master:
git checkout tags/v3.6.0
- Clone the repository:
- Via releases:
- Get the latest file from releases
Go to the installed system in your browser
- Visit http(s)://URL/install/ and follow the installation steps
- Once the installation is complete, remove the
install
folder - Point your browser to: http(s)://URL
- Log in using the credentials created during setup
Troubleshooting
Whenever you experience a blank page or other weird behavior, check your http server logs for PHP errors. Alternatively, you can add a code block with error output to the browser (for instance, index.php if it fails):
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);