Setting up a local DNS server with Unbound
Finishing Up
When your configuration is ready, just boot your server up with the following command:
# /etc/init.d/unbound start
This command will bring up a caching DNS server with anti-advertisement, anti-malware, and anti-phishing capabilities, as well as a limited capability for validating the authenticity of the DNS responses it takes. Not bad at all.
The only task left to do is to configure the devices in your LAN to use this server. There are three main ways to do this. You can manually configure each one to use your DNS server, which is usually impractical. The second option is to configure your network router to assign your server via DHCP to each device that connects to the network. This is the easiest way, and it will work most of the time, as long as your router supports assigning custom DNS servers to the devices in your LAN.
There is a third, evil option, that I like to use when I have to deal with devices that will ignore DNS servers provided by DHCP. This method is to instruct the router to redirect queries to unauthorized DNS servers to your local DNS instance, using ds-nat
. In practice, you are performing a man-in-the-middle attack by letting your local DNS server pretend to be the DNS server the rogue device is trying to connect to. This requires a router capable of advanced firewall configuration. But such mean deeds are the subject for another article.
Infos
- What is DNSSEC? https://www.icann.org/resources/pages/dnssec-what-is-it-why-important-2019-03-05-en
- What Is the Difference between Authoritative and Recursive DNS Nameservers? https://umbrella.cisco.com/blog/2014/07/16/difference-authoritative-recursive-dns-nameservers/
- Against DNSSEC: https://sockpuppet.org/blog/2015/01/15/against-dnssec/
- Questions and Answers from "Against DNSSEC": https://sockpuppet.org/stuff/dnssec-qa.html
- DNS over TLS Wikipedia article: https://en.wikipedia.org/wiki/DNS_over_TLS
- DNSCrypt official site: https://dnscrypt.info/
- Opennic Project: https://www.opennic.org/
- DNS.WATCH official site: https://dns.watch/
- StevenBlack DNS Blacklist: https://github.com/StevenBlack/hosts
- Practical Attacks with DNS Rebinding: https://www.tripwire.com/state-of-security/vert/practical-attacks-dns-rebinding/
- Namebench: https://code.google.com/archive/p/namebench/
« Previous 1 2 3 4
Buy this article as PDF
(incl. VAT)