PD cPanel DNS for Blesta

PD cPanel DNS — cPanel/WHM Zone & Record Management for Blesta

Manage your cPanel/WHM DNS zones and records inside Blesta — fast, self-service, auto-provisioned

Made and supported by Projektif Digital Ltd. Runs inside PD Modules, the panel every module installs into.

Domains & DNS

PD cPanel DNS lets a hosting company manage the DNS zones on its own WHM server from inside Blesta, and lets its customers manage their own records without a ticket. Every zone on the server is listed against the client and service that owns it, records are edited in Blesta and written straight to WHM, and customers get a Manage DNS area in your client portal that carries your branding.

It is built for hosts who run cPanel/WHM nameservers and are tired of leaving Blesta to change a record, handing out cPanel logins just so a customer can add an MX record, or creating a zone by hand every time a domain is registered.

Why hosts choose PD cPanel DNS

One place for every zone. Connect your WHM server once and every zone already on it appears in the list, with no import or sync step. Each row shows the client, the domain or service it belongs to, its nameservers, health, DNSSEC state and when it was last backed up, and links to both on Blesta's own admin pages.

Customers stop opening DNS tickets. A customer adds, edits and deletes records on their own zones, from the DNS page under My Tools in the client portal. They see only zones bound to their own account, and they never need a cPanel or WHM login.

Nothing to go out of date. Records are read live from WHM and written back the moment you save. The module keeps no copy of your records, so what you see in Blesta is what the server is serving.

Zones that create themselves. Switch on auto-provision and a zone is created and bound to the client when a domain, or a service with a domain, is activated. A failure is logged and never interrupts the registration or the order.

Bad records stay out. The editor shows only the fields the chosen record type uses, and addresses and hostnames are checked before saving, so a malformed record never reaches your server.

Safety nets built in. Every zone is snapshotted on a schedule, and any snapshot can be downloaded as a BIND zone file or restored, with a safety snapshot taken first. A zone deleted by mistake can be recovered from its last snapshot.

How it works

  1. Connect WHM. In the module's Providers page, add your WHM hostname, a WHM user and an API token, then press Test connection. It tells you whether the account can be reached and what to fix if it cannot.
  2. See your zones. Every zone on the server is listed. Track matched zones binds each one that matches an active domain or hosting service to its client, and nothing changes on the server.
  3. Let customers in. Their zones appear on the DNS page under My Tools in the client portal. Optionally turn on auto-provision so new domains get zones on their own.
  4. Keep it tidy. Backups, health checks and reconciliation run on Blesta's own cron, so there is no extra daemon to look after.

What you get in Blesta

Zones and clients

  • Zone list that pages, searches and sorts on the server, so it stays fast with thousands of zones
  • Filter by name, provider, tracking state, status or client, with a client picker
  • Assign a zone to a client, and optionally to one of their domains or services, with a searchable picker
  • Untracked zones on the server are flagged, and Track adopts one without changing it on WHM
  • Create zone, and Delete zone behind a confirmation. Create is refused if it would take the owner over their package's zone allowance
  • Lock a zone to freeze it against the client's own changes: you keep full control and the client keeps read access
  • More than one WHM server can be connected and managed in the same interface
  • Clean up zone removes cPanel's auto-generated records from a parked or forward-only zone and keeps everything else
  • A house account you name, so a domain that no cPanel account owns can still be parked and removed cleanly

Records

  • Type-aware editor for A, AAAA, CNAME, MX, TXT, NS, SRV, CAA and the other types the server supports
  • TTL is stored as entered, raised to the server's minimum where it has one
  • Search by name or value and filter by type, with 10, 25, 50 or 100 records per page
  • Import a BIND zone file: you see how many new records it holds before anything is written, records already present are skipped and nothing existing is changed
  • Export any zone as a BIND zone file
  • Templates with merge fields such as the domain and your nameservers, applied to any zone in one click and safe to apply twice
  • DNSSEC on or off per zone with one button, with the DS record shown ready to copy for the registrar
  • Reverse DNS: add an IP range, map addresses to hostnames, and each PTR is written to the matching reverse zone

Control and limits

  • Packages cap the zones a customer may have, and optionally the records per zone and per record type, linked to your packages. The largest allowance wins, and the caps hold in the customer editor, imports, templates and the API
  • Blocked-content patterns and IP allow and deny lists refuse matching customer saves, quick set-ups and imports. Your own changes are never restricted
  • For a domain registered with you that has no hosting with you, choose full editing, view only or hidden
  • Point chosen domain extensions at your WHM server: a domain registered or transferred in one of them also has its nameservers set
  • REST API with named tokens, read or write scope, optional IP limits and 120 requests a minute, with every write recorded in Activity
  • Every zone and record action is logged with who made it, when, and whether it worked

Backups and upkeep

  • Scheduled zone snapshots, every 24 hours by default, keeping the newest 10, all adjustable
  • Back up one zone or all zones on demand, restore any snapshot, and recover a deleted zone with every record it had
  • Maintenance jobs for sync, health check, orphan check and backups, with the last result shown
  • Orphaned zones are flagged and never deleted unless you turn that on
  • Terminating a service keeps its zone on WHM by default

What your customers get

  • Manage DNS in your portal. Reached from My Tools in the client menu, with each zone's pages as tabs on the page, in Blesta's client portal theme
  • The same checked editor you use, limited to their own zones
  • Quick set-ups for Google Workspace, Microsoft 365 and an SPF lockdown, added in one click, never changing a record that is already there and never adding a second SPF record
  • DNSSEC switch and copy-ready DS record, unless you locked the zone
  • Import and export of a BIND zone file, and their own snapshots they can take, download and restore
  • Email notices, if you switch them on, when a zone is set up for them or staff change their records. All notifications are off until you choose

Customer pages never show your WHM address or credentials, and never name the server behind their DNS. Every customer string can be translated, and wording overrides survive updates.

Security built in

  • The WHM token is stored with authenticated encryption and is never shown again in the provider form
  • It is used only to read and update zones and records, and the few read-only facts those need, such as which account owns a domain
  • A customer can reach only zones bound to their own account, enforced on the server by zone and record id
  • Rotate a token by editing the provider, entering the new one and testing it. The old one can then be revoked with nothing else to change

One product, every feature

PD cPanel DNS is one paid module with everything included, and there is no per-zone or per-seat fee. It installs into PD Modules, updates itself, and uninstalling removes its own tables and settings without modifying any Blesta files.

If your subscription lapses, your DNS records are never touched and WHM keeps serving every zone. Admin management locks first while customers keep their self-service, and customer pages pause later behind a neutral message. Renewing restores everything.

Requirements

  • Blesta 6.0 or later on PHP 8.2 or later, with the ionCube Loader
  • A WHM server and an API token with the DNS, zone, account-list and basic system information privileges
  • PD Modules, the free control panel every PD module installs into

Questions

Does PD cPanel DNS store my DNS records?

No. PD cPanel DNS reads records live from your cPanel/WHM server and writes changes back immediately. The cPanel/WHM server remains the authoritative source of truth. The module stores only metadata — zone ownership, backup snapshots and activity logs — in your Blesta database.

What do I need to connect a server?

A cPanel/WHM server with a WHM API token. Connect once with the WHM server host, the WHM user whose token you use (often root or a reseller), the WHM API token, and an optional port (default 2087). Create the token in WHM under Manage API Tokens. This manages DNS zones on the WHM server through the API — it is separate from per-account cPanel editing.

How is my WHM API token stored?

The token is stored encrypted in your Blesta database and masked in the interface. An API token is strongly preferred over an account password — it can be scoped and revoked in WHM without changing the account's password.

Does deleting a zone in Blesta delete it from cPanel/WHM?

No, not unless you explicitly enable the 'When cleaning an orphan, also delete the zone at the provider' setting. By default, removing a zone binding only removes the local tracking entry — the zone and all its records remain on your cPanel/WHM server.

What record types are supported?

A, AAAA, CNAME, MX, TXT, NS, SRV, CAA, PTR. Additional types may be supported depending on your cPanel/WHM version and server configuration.

Is DNSSEC supported?

Yes. DNSSEC can be enabled or disabled per zone directly from the panel. When enabled, PD cPanel DNS shows the DS record and DNSKEY details in a copy-ready block to hand to the registrar.

What happens to zones if my subscription lapses?

DNS records are never touched on subscription lapse — your cPanel/WHM zones and records stay exactly as they are. A lapsed subscription withdraws admin management and customer self-service access, but the cPanel/WHM server continues to serve the zones without interruption. Management resumes as soon as the subscription is renewed.

Can I auto-create zones when domains are registered?

Yes. Enable 'Automatically create a DNS zone on registration and new services' in Settings. You can also restrict this to specific TLDs using the TLD takeover list on your provider.

What does it cost to run, on top of the subscription?

Only what you already pay your provider. PD cPanel DNS adds no per-unit fee and takes no cut — it connects to your own account with your own credentials, so the provider bills you directly at your rates, and you set what you charge your customers. From us it is the module subscription and nothing else.

Which Blesta and PHP versions does it need?

Blesta 6.0 or later, on PHP 8.1 or later. It installs alongside whatever else you run — it adds its own tables and templates rather than modifying Blesta files, so it does not collide with other vendors' modules or with a customised template. Uninstalling removes its own tables and settings and leaves no orphans behind.

What’s new in 0.1.105

  • The navigation-link and domain-page settings, which had no effect, no longer appear.
  • A record written through the API with an "&" in its value is saved as sent.
  • AI assistants now get DNS tool descriptions that match your billing system.

Get your website online with PD Hosting

UK hosting, domains and support from a real team. From a first site to a full server.

Terms and Conditions  ·  Privacy Policy

PD Hosting is the trading name of Projektif Digital Ltd, registered in England and Wales, company number 12482555.

PD Hosting
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.