BITFOX® | LÖSUNGEN | SERVICE | LOGIN | BLOG | KONTAKT

Sonntag, 21. Februar 2021

DNS und Root-Adressen updaten


Sonntags um 03:00 Uhr - das eigene Monitoring klingelt:
Internet gibt es nur noch so halb und alles alles an Maschinerie benimmt sich sehr sehr eigenartig.

5 Minuten später ist das Problem erkannt:
Der hauseigene mini-DNSrelay hat versagt und ich schwenke erst einmal voll um auf die Fritzbox bzw. Telekom. Doch was war passiert?

Aus unerklärlichen Gründen hatte sich beim Update der DNS-Rootserer-Einträge die /var/named/named.ca "aufgelöst" und somit konnten keine DNS-Rootserver mehr gefunden werden; was natürlich die entsprechenden Folgen hatte.
Hrm....

Also - ein neues Update-Script für die Ermittlung der DNS-Rootserver....! :-)

#!/bin/bash # # update-dns-roots # Script zum Aktualisieren der DNS-Root-Adressen # # 2021-02-21 Oliver Lenz # # contab -> # 0 10 1 * * /root/bin/update-dns-roots.bash >/dev/null 2>&1 || echo "Probleme in update-dns-roots.bash" # PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin destination="69.58.179.79" # ftp.rs.internic.net dt=$(date "+%Y%m%d%H%M%S") filter="FILTER:$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)" errorlevel=255 echo "Setup Firewall for ftp-Communication with ${destination}" modprobe ip_conntrack modprobe ip_conntrack_ftp iptables -A OUTPUT -p tcp --sport 1024:65535 -d ${destination} --dport 20 -m state --state ESTABLISHED -j ACCEPT -m comment --comment "${filter}" iptables -A OUTPUT -p tcp -m tcp --sport 1024:65535 -d ${destination} --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT -m comment --comment "${filter}" iptables -A OUTPUT -p tcp --sport 1024:65535 -d ${destination} --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT -m comment --comment "${filter}" iptables -A INPUT -p tcp -s ${destination} --sport 20 --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT -m comment --comment "${filter}" iptables -A INPUT -p tcp -m tcp -m multiport -s ${destination} --sports 21,1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT -m comment --comment "${filter}" echo "Getting ca-File from ${destination}" wget -q --timeout=4 --tries=3 --waitretry=2 --user=ftp --password=ftp ftp://69.58.179.79/domain/db.cache -O /var/named/named.ca.tmp &>/dev/null if [ "$?" == "0" ]; then if cmp -s /var/named/named.ca /var/named/named.ca.tmp; then echo "No changes." rm -f /var/named/named.ca.tmp else cp -f /var/named/named.ca /var/named/named.ca.${dt} mv -f /var/named/named.ca.tmp /var/named/named.ca /usr/bin/systemctl restart named-chroot.service echo "Update ca-file successfully." fi errorlevel=0 else echo "Problems getting new ca-file via /root/bin/update-dns-roots.bash" errorlevel=1 fi echo "Remove Firewall-Rules for ftp-Communication with ${destination}." while read rule; do echo "${rule}" | xargs iptables done< <( iptables-save | grep " --comment \"${filter}\"" | sed "s/-A /-D /g" ) exit ${errorlevel}
Update: 2022-01-16 Typo in der Dateiausleitung nach /dev/null in der wget-zeile.

Keine Kommentare:

Aktuelles