Customizing DNSmanager
From ISPWiki
DNSmanager is a DNS slave server management system. It can be used both as a stand-alone software and for ISPmanager and VDSmanager integration (thus allowing you to add records to a slave name server).
Prerequisites
Install DNSmanager on the server that will be used as a slave name server. A sufficient number of IP-addresses that will be used as "Private name servers" should be allocated for this server.
You can add addresses in the IP-addresses management module or receive them from IPmanager (see the Integration with IPmanager module).
Additional IP-addresses (used for private name servers) are assigned automatically to the network interface by executing the following command:
/usr/local/ispmgr/sbin/mgrctl -m dnsmgr bindip
that runs from the /etc/rc.local file
All IP-addresses will be automatically bound to the network interface when starting DNSmanager.
BIND DNS name server
View in the configuration file is used. Each view is a separate name space with a private IP-address.
When adding a user in the User management module, he is provided with a DNS name space (it is unique within the server).
A reseller may create separate name spaces for his users or provide them with a private name space that will be shared among all the control panel users that use it.
The following record is automatically added into the DNS server configuration (named.conf)
view "ns2.example.com" {
allow-transfer { 127.0.0.1; 192.0.2.1;};
match-destinations {198.51.100.1; };
zone "example.com" {
type slave;
masters {192.0.2.1;};
file "/etc/namedb/slave/ns2.example.com/example.com";
};
}
where:
- ns2.example.com - the name of a DNS name space
- allow-transfer - zone transfer is allowed (specified in the DNS management module)
- match-destinations - the parameter that is an IP-address of the view. It is used as an address for that name server.
The record is followed by the already created zone, the slave parameter defines that this is a slave name server which is taken from 192.0.2.1 according to the masters parameter.
The following record is automatically specified in the /usr/local/ispmgr/etc/dnsmgr.passwd file of DNSmanager
p192.0.2.1:resellername:$2a$01$dZh8hjkH74xjG47XM:10:ns2.example.com:1:1000:1
Where:
- p192.0.2.1 - a user login
- resellername - the reseller associated with the user account mentioned above
- $2a$01$dZh8hjkH74xjG47XM - the password blowfish hash
- 10 - the level of access
- 1:1000:1 - the number of used, allowed and shared domains (learn more in DNSmanager configuration file)
Once the domain names have been created, the zone is transferred to the slave server . Port 53/tcp is used for data transfer. If you experience any problems, see the DNS server logs (normally /var/log/messagess).
PowerDNS
DNSmanagr can be integrated with the PowerDNS name server. For more information on the DNSmanager configuration, read Using PowerDNS with DNSmanager
