apt-get update apt-get upgrade -y apt-get install -y python-dev python3-dev perl build-essential python-ply libssl-dev libxml2-dev libcap-dev mkdir /downloads mkdir /scripts cd /downloads curl https://www.isc.org/downloads/file/bind-9-14-0/?version=tar-gz --output bind9-14-0.tar.gz tar -zxvf bind9-14-0.tar.gz cd /downloads/bind-9.14.0 mkdir /var/named mkdir /var/named/zones mkdir /var/log/named ./configure --sysconfdir=/etc/named --with-openssl --with-libxml2 --enable-threads make && make install named -V rndc-confgen -a dig +bufsize=1200 +norec NS . @a.root-servers.net > /etc/named/root.hints cat << EOF > /etc/named/named.conf options { directory "/var/named"; statistics-file "/etc/named/named.stats"; bindkeys-file "/etc/named/bind.keys"; dnssec-enable yes; dnssec-validation auto; dnssec-lookaside auto; }; logging { channel default_file { file "/var/log/named/default.log"; severity dynamic; print-time yes; }; channel queries_file { file "/var/log/named/queries.log"; severity dynamic; print-time yes; }; channel lame_servers { file "/var/log/named/lame_servers.log"; severity dynamic; print-time yes; }; category default { default_file; }; category queries { queries_file; }; category lame-servers { lame_servers;}; }; include "/etc/named/rndc.key"; EOF cat << EOF > /etc/systemd/system/bind9.service [Unit] Description=BIND Domain Name Server Documentation=man:named(8) After=network.target [Service] ExecStart=/usr/local/sbin/named -4 -f ExecReload=/usr/sbin/rndc reload ExecStop=/usr/sbin/rndc stop [Install] WantedBy=multi-user.target EOF mkdir /var/log/named/old cat << EOF > /etc/logrotate.d/bind.conf /var/log/named/*.log { olddir /var/log/named/old rotate 6 missingok notifempty daily create 0600 root root postrotate /usr/local/sbin/rndc reload endscript } EOF systemctl daemon-reload systemctl enable bind9.service service bind9 start service bind9 status q dig @127.0.0.1 google.dk