(gelöst) iptables mit dnsmasq und DNS Sperrung
Verfasst: 09.05.2019 16:05:41
Hallo,
habe hier einen Laptop (192.168.178.22) der via wlan0 eine Fritzbox ansteuert und ins Internet geht. Auf dem Laptop habe ich dnsmasq installiert, der jetzt die DNS Auflösung betreibt. In der dnsmasq.conf habe ich
server=84.200.70.40
als den DNS Anfragen auflösenden Nameserver eingetragen. Das ist DNSwatch und nicht google.
Mache ich jetzt ein
Wie kann ich DNS Anfragen sperren, die von Konsoleingaben oder irgend einer Software stammen und nicht von dnsmasq?
Zum Testen habe ich diese Mini-Firewall:
Mir ist grundsätzlich klar wie ich den DNS Port sperre. Mir ist nur nicht klar wie ich das in meine Regeln einbaue. Kann mir das bitte jemand zeigen?
habe hier einen Laptop (192.168.178.22) der via wlan0 eine Fritzbox ansteuert und ins Internet geht. Auf dem Laptop habe ich dnsmasq installiert, der jetzt die DNS Auflösung betreibt. In der dnsmasq.conf habe ich
server=84.200.70.40
als den DNS Anfragen auflösenden Nameserver eingetragen. Das ist DNSwatch und nicht google.
Mache ich jetzt ein
wird der Nameserver von google genommen, weil die Abfrage ohne dnsmasq erfolgt. Ich könnte jetzt 8.8.8.8 sperren. Aber das will ich nicht.dig +tcp google.com @8.8.8.8
Wie kann ich DNS Anfragen sperren, die von Konsoleingaben oder irgend einer Software stammen und nicht von dnsmasq?
Zum Testen habe ich diese Mini-Firewall:
Unklar im Obigen ist mir, ob der dnsmasq mit OUTPUT oder PREROUTING angesprochen werden muß und in welcher Reihenfolge diese Anweisung stehen muß.#!/bin/sh
# Flush default policies
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -t raw -F
iptables -t raw -X
# Set default policies
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
# Allow loopback traffic
iptables -I INPUT -i lo -j ACCEPT
# Test wegen Reihenfolge: blockieren
#iptables -A INPUT -s 8.8.8.8 -j DROP
#iptables -A OUTPUT -d 8.8.8.8 -j DROP
# Test wegen Reihenfolge: Portfreigabe
iptables -I INPUT -i wlan0 -p tcp --dport 51413 -j ACCEPT
iptables -I OUTPUT -o wlan0 -p tcp --sport 51413 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i wlan0 -d 192.168.178.22 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
# Test (kommt das an letzte Stelle der iptables Regeln?)
iptables -t nat -A PREROUTING -p tcp --dport 53 -j DNAT --to 127.0.0.1:53
iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to 127.0.0.1:53
iptables -t nat -A POSTROUTING -j MASQUERADE
Mir ist grundsätzlich klar wie ich den DNS Port sperre. Mir ist nur nicht klar wie ich das in meine Regeln einbaue. Kann mir das bitte jemand zeigen?