An ACL in the context of network administration is a set of rules that control network traffic and limit access to networks and network resources based on predefined criteria. In DNS servers like ISC BIND, ACLs are used to define which clients (based on IP addresses or networks) are allowed or denied access to certain DNS services. Common uses of ACLs in DNS include:
Restricting Query Access: Defining which clients are allowed to query the DNS server.
Controlling Zone Transfers: Specifying which secondary servers are allowed to receive zone data from the primary server.
Limiting Dynamic Updates: Controlling which clients can dynamically update DNS records, often used in conjunction with TSIG for secure DDNS.
ACLs allow for the implementation of security policies by controlling who can access the DNS server and what actions they can perform, which is critical for maintaining the integrity and security of the DNS infrastructure.
ACL templates are predefined configurations that simplify the creation of Access Control Lists (ACLs) in various network services, including DNS and DHCP servers. An ACL template allows administrators to define a set of rules or criteria once and then apply them across multiple instances, reducing redundancy and potential for error in configurations.
To create Named ACLs
Go to DNS-> Config-> ACL
Click on ADD ACL button on the right.
You can choose the type of the ACL: ISC Format or Template based ACL.
For the DDI template, just enter the IPv4/IPv6 addresses one by one in the allow and Deny lists.
For the ISC format
Follow the Example below:
Here's an example of an ACL in ISC BIND format:
acl "internal-network" {
192.168.0.0/24; // An internal subnet in CIDR notation
10.15.20.0/22; // Another internal subnet in CIDR notation
localhost; // The keyword for the loopback address (127.0.0.1)
localnets; // A predefined match list for all local networks
! 192.168.0.100; // Exclude a specific IP from the ACL
2001:db8::/32; // An IPv6 subnet in CIDR notation
key "transfer-key"; // A TSIG key for secure transactions
};