0d0339a316
The dashboard.domains_custom route was hardcoded to either return all the domains, or at most 100, regardless of default_domain_table_size setting. Make this limit be dependent on default_domain_table_size instead. The API will now limit to 100 or default_domain_table_size, whichever one is higher. This is done to not break any seconday use-cases that might depend on the hardcoded setting. |
||
---|---|---|
.github | ||
configs | ||
deploy | ||
docker | ||
docker-test | ||
docs | ||
migrations | ||
powerdnsadmin | ||
tests | ||
.dockerignore | ||
.gitattributes | ||
.gitignore | ||
.lgtm.yml | ||
.whitesource | ||
.yarnrc | ||
docker-compose-test.yml | ||
docker-compose.yml | ||
LICENSE | ||
package.json | ||
README.md | ||
requirements.txt | ||
run.py | ||
SECURITY.md | ||
update_accounts.py | ||
update_zones.py | ||
yarn.lock |
PowerDNS-Admin
A PowerDNS web interface with advanced features.
Features:
- Provides forward and reverse zone management
- Provides zone templating features
- Provides user management with role based access control
- Provides zone specific access control
- Provides activity logging
- Authentication:
- Local User Support
- SAML Support
- LDAP Support: OpenLDAP / Active Directory
- OAuth Support: Google / GitHub / Azure / OpenID
- Two-factor authentication support (TOTP)
- PDNS Service Configuration & Statistics Monitoring
- DynDNS 2 protocol support
- Easy IPv6 PTR record editing
- Provides an API for zone and record management among other features
- Provides full IDN/Punycode support
Running PowerDNS-Admin
There are several ways to run PowerDNS-Admin. The quickest way is to use Docker. If you are looking to install and run PowerDNS-Admin directly onto your system, check out the wiki for ways to do that.
Docker
Here are two options to run PowerDNS-Admin using Docker. To get started as quickly as possible, try option 1. If you want to make modifications to the configuration option 2 may be cleaner.
Option 1: From Docker Hub
To run the application using the latest stable release on Docker Hub, run the following command:
$ docker run -d \
-e SECRET_KEY='a-very-secret-key' \
-v pda-data:/data \
-p 9191:80 \
powerdnsadmin/pda-legacy:latest
This creates a volume named pda-data
to persist the default SQLite database with app configuration.
Option 2: Using docker-compose
-
Update the configuration
Edit thedocker-compose.yml
file to update the database connection string inSQLALCHEMY_DATABASE_URI
. Other environment variables are mentioned in the legal_envvars. To use the Docker secrets feature it is possible to append_FILE
to the environment variables and point to a file with the values stored in it.
Make sure to set the environment variableSECRET_KEY
to a long random string (https://flask.palletsprojects.com/en/1.1.x/config/#SECRET_KEY) -
Start docker container
$ docker-compose up
You can then access PowerDNS-Admin by pointing your browser to http://localhost:9191.
Screenshots
Support
Looking for help? Try taking a look at the project's Support Guide or joining our Discord Server.
Security Policy
Please see our Security Policy.
Contributing
Please see our Contribution Guide.
Code of Conduct
Please see our Code of Conduct Policy.
License
This project is released under the MIT license. For additional information, see the full license.
Donate
Like my work?
Want to sponsor me? Please visit my organization's sponsorship page.