BlockHosts + iptables

hahni

Active Member
#1
Hallo zusammen,

scheinbar läuft bei mir BlockHosts jetzt wunschgemäß! Allerdings werden die Verbindungen, die geblockt wurden, zwar in iptables hinterlegt, aber eben nicht gänzlich geblockt. So ergibt "iptables --list blockhosts --numeric" folgende Ausgabe, nach der die IP gesperrt sein müsste! Ist aber nicht der Fall:

---
Chain blockhosts (1 references)
target prot opt source destination
DROP all -- 79.209.106.127 0.0.0.0/0
---

Die Notify-E-Mail zeigt immer die "geblockte" IP an und diese wird zudem beobachtet. Allerdings zeigen die vielen weiteren Versuche, dass die IP nicht geblockt wird. Doch dies kann nichts mit BlockHosts zu tun haben, sondern der Wurm muss irgendwie in Verbindung mit iptables zu suchen sein, oder?

---
Blocking hosts:
79.209.106.127 Watching hosts:
79.209.106.127 count: 55 updated at: 2008-03-29 14:05:01 CET
Log messages:
blockhosts 2.3.1 started: 2008-03-29 14:05:01 CET ... loaded /etc/hosts.allow, starting counts: blocked 1, watched 1 ... loading log file /var/log/auth.log, offset: 848868 ... loading log file /var/log/mail.err, offset: 39734 ... discarding all host entries older than 2008-03-29 02:05:01 CET
Notice: count=55, blocking host: 79.209.106.127 ... final counts: blocked 1, watched 1
---

Vielen Dank für Eure Überlegungen zu dieser Problematik!

Hahni
 

hahni

Active Member
#2
Kann mir hier tatsächlich keiner helfen?

Auch Till und Falko nicht? ;) Immerhin kommt ja von Falko der Beitrag für die BlockHosts :rolleyes:
 

hahni

Active Member
#4
Hallo Till,

schön von dir diesbezüglich zu hören! Eigentlich nach Hausfrauenmanier ;)

Ich logge mich via SSH einfach 3-5x falsch ein. Dann warte ich ein Weilchen, weil ja Falkos CronJob aller 5x die Datenbank bereinigt.

Doch ich könnte weitere Versuche starten und werde nicht geblockt. Dies sollte (so meine ich) mit meinen Einstellungen aber nicht möglich sein!
 

hahni

Active Member
#5
iptables -L gibt übrigens folgendes zurück:

---
Chain INPUT (policy DROP)
target prot opt source destination
DROP tcp -- anywhere 127.0.0.0/8
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT all -- anywhere anywhere
DROP all -- BASE-ADDRESS.MCAST.NET/4 anywhere
PUB_IN all -- anywhere anywhere
PUB_IN all -- anywhere anywhere
PUB_IN all -- anywhere anywhere
PUB_IN all -- anywhere anywhere
DROP all -- anywhere anywhere
blockhosts all -- anywhere anywhere

Chain FORWARD (policy DROP)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
DROP all -- anywhere anywhere

Chain INT_IN (0 references)
target prot opt source destination
ACCEPT icmp -- anywhere anywhere
DROP all -- anywhere anywhere

Chain INT_OUT (0 references)
target prot opt source destination
ACCEPT icmp -- anywhere anywhere
ACCEPT all -- anywhere anywhere

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
PUB_OUT all -- anywhere anywhere
PUB_OUT all -- anywhere anywhere
PUB_OUT all -- anywhere anywhere
PUB_OUT all -- anywhere anywhere

Chain PAROLE (11 references)
target prot opt source destination
ACCEPT all -- anywhere anywhere

Chain PUB_IN (4 references)
target prot opt source destination
ACCEPT icmp -- anywhere anywhere icmp destination-unreachable
ACCEPT icmp -- anywhere anywhere icmp echo-reply
ACCEPT icmp -- anywhere anywhere icmp time-exceeded
ACCEPT icmp -- anywhere anywhere icmp echo-request
PAROLE tcp -- anywhere anywhere tcp dpt:ftp
PAROLE tcp -- anywhere anywhere tcp dpt:ssh
PAROLE tcp -- anywhere anywhere tcp dpt:smtp
PAROLE tcp -- anywhere anywhere tcp dpt:domain
PAROLE tcp -- anywhere anywhere tcp dpt:www
PAROLE tcp -- anywhere anywhere tcp dpt:pop3
PAROLE tcp -- anywhere anywhere tcp dpt:https
PAROLE tcp -- anywhere anywhere tcp dpt:10000
PAROLE tcp -- anywhere anywhere tcp dpt:22
PAROLE tcp -- anywhere anywhere tcp dpt:mysql
ACCEPT udp -- anywhere anywhere udp dpt:domain
DROP icmp -- anywhere anywhere
DROP all -- anywhere anywhere

Chain PUB_OUT (4 references)
target prot opt source destination
ACCEPT all -- anywhere anywhere

Chain blockhosts (1 references)
target prot opt source destination
---
 
#6
In Deiner INPUT Chain steht die Regel

blockhosts all -- anywhere anywhere

deutlich zu weit unten. Da wo sie jetzt steht, kann sie keine Wirkung mehr entfalten, da schon mit der Regel davor (DROP all -- anywhere anywhere) sämtliche Pakete, die es überhaupt bis dorthin geschafft haben, verworfen werden.

Sofern man eine Firewall hat, die auf iptables basiert, muss man sich für benutzerdefinierte DROP-Listen einen sinnvollen Platz in der von der Firewall vorgegebenen Prüffolge suchen (ohne Firewall packt man sie einfach als erste Regel in die INPUT-Chain). Bei Dir wäre vor der ersten pub_in-Regel ein passender Platz. Da sind bis auf die Multicast-Pakete noch alle da und es ist noch nichts an irgendwelche Anwendungen weitergereicht worden.

Wie Du die Regel an einer bestimmten Stelle in einer Chain einfügst, steht im Manual (weiß ich jetzt nicht aus dem Kopf). Die anderen Regeln werden dadurch nach unten geschoben.

Soweit es mir noch in Erinnerung ist, musst Du die Regel nach einem Neustart des Systems oder Firewall von Hand neu einfügen oder das Bastille-Script entsprechend ändern.
 

Werbung

Top