[gelöst] iptables, Domainnamen einer Webseite sperren

Alles rund um sicherheitsrelevante Fragen und Probleme.
Antworten
Benutzeravatar
Stas
Beiträge: 161
Registriert: 21.04.2014 15:52:16

[gelöst] iptables, Domainnamen einer Webseite sperren

Beitrag von Stas » 23.12.2020 20:22:46

Hallo,
ist es möglich mit Debianiptables aus Domainnamen einer Webseite zu sperren?
Für IP, sieht es in etwa ja so aus: -I OUTPUT -p tcp --dport 443 -d 104.16.200.58 -j ACCEPT
Aber wie muss das für Domainnamen als Befehl aussehen?
Zuletzt geändert von Stas am 26.12.2020 13:56:43, insgesamt 2-mal geändert.
Debian 12 || Proxmox 8 || i7-4790 || GTX 970

mat6937
Beiträge: 2925
Registriert: 09.12.2014 10:44:00

Re: iptables, Domainnamen einer Webseite sperren

Beitrag von mat6937 » 23.12.2020 21:00:22

Stas hat geschrieben: ↑ zum Beitrag ↑
23.12.2020 20:22:46
ist es möglich mit Debianiptables aus Domainnamen einer Webseite zu sperren?
Für IP, sieht es in etwa ja so aus: -I OUTPUT -p tcp --dport 443 -d 104.16.200.58 -j ACCEPT
Möglich ja, aber wenn sich die IP-Adresse ändert, ist diese iptables-Regel nicht mehr wirksam.

Benutzeravatar
Stas
Beiträge: 161
Registriert: 21.04.2014 15:52:16

Re: iptables, Domainnamen einer Webseite sperren

Beitrag von Stas » 23.12.2020 21:03:59

Wie würde der Befehl den aussehen?
Debian 12 || Proxmox 8 || i7-4790 || GTX 970

mat6937
Beiträge: 2925
Registriert: 09.12.2014 10:44:00

Re: iptables, Domainnamen einer Webseite sperren

Beitrag von mat6937 » 23.12.2020 21:20:34

Stas hat geschrieben: ↑ zum Beitrag ↑
23.12.2020 21:03:59
Wie würde der Befehl den aussehen?
Es gibt mehrere Möglichkeiten. Gut finde ich, die Verwendung von ipset.

Eine schnelle und einfache Regel wäre z. B.:

Code: Alles auswählen

iptables -I OUTPUT 1 -p tcp -d $(dig +short berlin.de) -j REJECT

Code: Alles auswählen

:~$ nc -zv berlin.de 80 443
nc: connect to berlin.de port 80 (tcp) failed: Connection refused
nc: connect to berlin.de port 443 (tcp) failed: Connection refused

Code: Alles auswählen

iptables -nvx -L OUTPUT
Chain OUTPUT (policy ACCEPT 49 packets, 3566 bytes)
    pkts      bytes target     prot opt in     out     source               destination         
       4      224 REJECT     tcp  --  *      *       0.0.0.0/0            212.45.111.17        reject-with icmp-port-unreachable
EDIT:

Man könnte mit einer iptables-Regel auch den Zugang zu einem DNS-Server blocken, wenn in der Namensauflösung der string berlin.de beinhaltet ist.

Benutzeravatar
Stas
Beiträge: 161
Registriert: 21.04.2014 15:52:16

Re: iptables, Domainnamen einer Webseite sperren

Beitrag von Stas » 23.12.2020 21:28:27

Ne bekomme Fehler:
Bad argument `+short'
Error occurred at line: 11

Ich füge das über Debianfirejail ein (--netfilter=....FilterX)

FilterX Datei:
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:0]
-F
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp --dport 80 -j DROP
-A OUTPUT -p tcp --dport 443 -j DROP
-A OUTPUT -p udp --dport 53 -j ACCEPT
-I OUTPUT -p tcp --dport 443 -d 87.230.75.2 -j ACCEPT
-I OUTPUT 1 -p tcp -d $(dig +short berlin.de) -j REJECT
COMMIT

Mit IP ist OK aber mit Domainnamen will er nicht!
Debian 12 || Proxmox 8 || i7-4790 || GTX 970

mat6937
Beiträge: 2925
Registriert: 09.12.2014 10:44:00

Re: iptables, Domainnamen einer Webseite sperren

Beitrag von mat6937 » 23.12.2020 21:31:17

Stas hat geschrieben: ↑ zum Beitrag ↑
23.12.2020 21:28:27
Ne bekomme Fehler:
Bad argument `+short'
Error occurred at line: 11

Ich füge das über Debianfirejail ein (--netfilter=....)

Mit IP ist OK aber mit Domainnamen will er nicht!
Das wird m. E. an firejail (frontend?, ... kenne ich nicht) liegen, das evtl. eine bestimmte Syntax zum eingeben der Regel verlangt.

Benutzeravatar
Stas
Beiträge: 161
Registriert: 21.04.2014 15:52:16

Re: iptables, Domainnamen einer Webseite sperren

Beitrag von Stas » 25.12.2020 20:23:38

Habe da was:
-I OUTPUT -p tcp --dport 443 -m string --string "xyxy.de" --algo kmp -j DROP
Debian 12 || Proxmox 8 || i7-4790 || GTX 970

mat6937
Beiträge: 2925
Registriert: 09.12.2014 10:44:00

Re: iptables, Domainnamen einer Webseite sperren

Beitrag von mat6937 » 26.12.2020 10:27:31

Stas hat geschrieben: ↑ zum Beitrag ↑
25.12.2020 20:23:38
Habe da was:
-I OUTPUT -p tcp --dport 443 -m string --string "xyxy.de" --algo kmp -j DROP
OK. Evtl. statt DROP als target, REJECT verwenden, denn es sind ja Regeln in der OUTPUT chain und REJECT informiert dann das eigene System, statt es im Ungewissen zu lassen.

Code: Alles auswählen

-I OUTPUT 1 -p tcp --dport 443 -m string --string "xyxy.de" --algo kmp -j REJECT
BTW: Wenn es um DNS (Namensauflösung) geht, dann als dport die 53 benutzen und 2 Regeln setzen (für udp und für tcp).

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: [gelöst] iptables, Domainnamen einer Webseite sperren

Beitrag von eggy » 26.12.2020 20:38:33

Was soll das bewirken? Und kannst Du erklären, wie das funktionieren soll?
(Wenn es das denn tut. Text wird wo erkannt? Und was ist mit der Crypto?)

Antworten