How to offer managed DNS service for clients? maybe as Usermin module?


I have been trying to grasp a decent deal with domain registrars, but no luck. The best I can find is one that gives me API access but has no managed DNS. It’s up to me to figure out how to provide my clients with the ability to edit their zones. Looking through webmin, there’s BIND, but seems to be all locked down to admins, or at least only available via webmin cp.

Would it be possible for new clients to register themselves on my site (webmin user db), once users buy domains via registrar api - BIND/webmin will automatically create DNS zones, and user will be able to view/modify zone & domain contacts & nameservers, etc?

any tips?

Once you’ve added a Virtual Server (ie, a domain) into Virtualmin, domain owners can make changes to their DNS using System -> DNS Domain. That’s only DNS entries in BIND, that doesn’t include the ability to edit information at the registrar.

To make updates at the registrar, you may want to look into the domain name registration plugin:,domain_registration_with_virtualmin/

The thing there is that you’re somewhat limited as to which registrars it works with.

Another idea might be to look into WHMCS, which would offer you a more complete package.

WHMCS is a billing system, which would allow users to buy service from you, register their domain names, and otherwise get everything going without you needing to get involved. You program it with how much everything costs, and it handles the rest. You can find WHMCS here:

Andreychek, thanks for all that info. I guess to specify exactly what I want to do:

  1. only host admin is myself- virtual servers created are only managed by me.
  2. enable DNS service on my VPS for my domain customers - they can edit their zones here
  3. customer credentials are managed via virtualmin - people can register themselves on my site
  4. once domains purchased, users can manage their dns zones via usermin

If not using WHMCS, or virtualmin’s registrar plugin,… would this still be possible?

or maybe someone else might know?

you could give them access to webmin with only the bind module.
Then create a special server template for this and choose the module at the Administrators Webmin Modules while denying all other modules.

sounds like an idea. i’d like to try that out.

do you know if by pointing my domain’s nameservers to my host with BIND will enable my host to act as the domain’s DNS? and reports to my TLD’s nameservers?

do you know if by pointing my domain’s nameservers to my host with BIND will enable my host to act as the domain’s DNS? and reports to my TLD’s nameservers?

Yup! That’s exactly what it does… it makes your host the DNS server for your domain.


techieguy22, your ad is irrelevant to the issue. we’re talking about DNS, not hosting.

anyway, i at least have been able to get my webmin server to handle DNS requests after registering my custom nameserver with my TLD registrar, i.e., those addresses are pointed to my webmin server’s ip.

i turned on BIND and created new master zone for any domains not currently hosted as a virtual server (in virtualmin).

so far, updating the records has worked 50% of the time. im going to try using the “apply configuration” button on top of “save”.