CPANEL-49988 breaks subdomain provisioning in DNS cluster setups
Hi,
After the changes introduced in CPANEL-49988, we’ve run into an issue in DNS cluster environments.
Use case:
We use a domain (e.g. freedomain.com) to provision “free” subdomain-based domains for customers, managed exclusively by root (e.g. mysite.freedomain.com).
Scenario:
- Multiple cPanel servers in a DNS cluster
- A base domain (e.g.
freedomain.com) exists on one server - From another server, root tries to create an account using
sub1.freedomain.com
Current behavior (after CPANEL-49988):
The operation fails with:
(XID 27srjg) The domain “sub1.freedomain.com” may not be created by “root” because a DNS zone already exists for the domain “freedomain.com”.
unless one of the following is used:
- “Overwrite any existing DNS zones for the account” (
forcedns=1), or - Enabling “Allow WHM users to create subdomains across accounts” in Tweak Settings
Problem:
- Using
forcedns=1may overwrite an existing DNS zone from another server in the cluster - Enabling cross-account subdomains allows resellers to use this domain, which we explicitly want to prevent
Previous behavior:
- Root could create subdomains across accounts without forcing DNS overwrite
- No risk of overwriting existing zones
- This setup allowed controlled use of shared/internal domains
Question:
Is there any plan to restore the previous behavior for root, or provide a safer alternative?
Right now, the only available options are either unsafe (forcedns=1) or too permissive (enabling "Allow WHM users to create subdomains across accounts" in tweak settings).
Thanks!
-
Hey there! I had this one on the back burner due to the MySQL drama, but I have sent this over to our DNS/Cluster team and I'm waiting to hear back from them. I *think* there is a fix in the pipeline but I'd like to confirm that before I say anything. I'll likely have something tomorrow for you!
0 -
Gday, thanks for posting it made it easier to find out why I had the exact issue.
Not a work around, there is a specific setting in WHM you can update.
Under Tweak Settings > Domains > Allow WHM users to create subdomains across accounts is set to Off by default.
I changed that to On, and can create subdomain-based accounts again as I could in the past. (both via WHM and via API calls)
Hope that helps.0 -
I'm glad that's all it took! If you're okay with that fix we can close this one!
0 -
Hi,
While enabling “Allow WHM users to create subdomains across accounts” does make it work, it’s unfortunately not a viable solution for us.
As mentioned earlier, this setting allows resellers (not just root) to create subdomains under that domain, which breaks our use case where this domain must be restricted for internal/root-only provisioning.
So effectively:
-
forcedns=1→ unsafe in DNS clusters (can overwrite zones from other servers) -
Tweak setting → Allow WHM users to create subdomains across accounts -> too permissive (allows resellers to use the domain)
That’s why we’re looking for a solution that restores the previous behavior specifically for root, without introducing these side effects.
Thanks!
1 -
-
I've talked to the team about this and it seems that your specific workflow and use case is specifically what the fix was trying to prevent, so that option no longer exists.
I've reached out to the team to see if there is a plan B available and I'm waiting to hear back from them with more information.
0
Please sign in to leave a comment.
Comments
5 comments