PowerDNS Admin Web Frontend

From Linuxnetworks
Jump to: navigation, search

Also, there are a few existing web-based tools for administrating PowerDNS installations, none of them seem to be good enough for daily work, especially where access for end-users is required. This page should be a starting point to collect requirements from users to describe the needed features for a PowerDNS administration web frontend.

General:

  • Web-based interface
  • Should be able to work with SQL and LDAP based backends
  • SQL backend should handle all supported databases
  • DynamicDNS interface (https://www.dyndns.com/developers/specs/)
  • Allow managing multiple servers
  • Fully Translatable

Authentication/Authorization:

  • Support multiple site owners which can change their own records
  • User-management should be "under" web server (i.e. use Apache authentication methods)
  • Support different authentication and access control sources (database, LDAP, HTTP Auth, etc)
  • Hierarchical permission system

DNS records:

  • Support creation of all record types
  • Dialogs for complex records creating IANA specs/RFC based syntax (e.g. user selects NAPTR-RR and gets a drop-down box with the list of IANA protocols and a text field for the URI. The dialog function then creates the complex syntax of the NAPTR-RR).
  • Restrict DNS TTL specifiied range
  • Check all existing record types for correctness
    • Disallow duplicates
    • Enforce RFC specs on CNAMEs to ensure compatability

Usability:

  • Allow "paging" through database when it contains many thousands of zones/records
  • Search for zones/records
  • Wizard type interface for adding new domains (Asks for basic A and MX addresses, provides defaults, picks a good default SOA), and then asks for any other services hosted on this domain and hand holds the the user throu the process. Would be nice if when a new user is added to what ever backend, you can trigger a run wizard on first login.
  • Built in whois + dns query tool, to check both delegation is correct, and status of replication/zone transfers to slave servers.
  • Allow the user to use/create dns-zone templates. These zone-templates can later be used e.g. to reset to default template. Templates should be able to be passed on to from user higher in hierarchy to below.
  • Ability to 'test' that MX server actually accepts mail for that domain, and that www. points to a working webserver, mail. points to a pop3/imap server. Shows a test button next to each records, with a list of test to perform against server.

Templates:

  • Completely skinable templates for different CIs
  • Nice design

Techniques:

  • Object-oriented programming
  • Model-View-Controller architecture
  • Optional AJAX to make it "look good"
  • Use PHP > 5.1
  • Backend Interface to be exported with a RPC interface
    • User Defined Event Driven RPC's configured from admin, ie On Add/Edit/Delete/Login/Logout, etc, to update other services.
    • RPC to allow other apps (ie Other web consoles to push changes into DNS)

Standards:

  • XHTML-1.1-strict validation
  • CSS 2.1 validation
  • Must allow working with lynx/w3m on text consoles (e.g. W3C WAI-CSS-stylesheet)


Please add your own suggestions to this list or add your comment to the discussion page if you are unsure.