iptables, wie die Hostnamenauflösung umgehen

StepByStep

New Member
Hallo liebes Forum,

ich bitte vorweg meine vielleicht etwas unqualifizierte Frage zu entschuldigen,
aber ich bin aktuell immernoch etwas wackelig was die Tiefen von augenscheinlich leichten Problemen angeht. Bitte habt nachsicht mit mir... :)

Ich dachte bis letzte Nacht, das ich ein funktionierendes Iptablesscript hätte,
um illegale Zugriffe auf meinen Webspace bzw. dessen Auslöser direkt in die Iptables Rejectfilter zu verfrachten.

Nun habe ich aber nochmal selbst getestet, und siehe da, es gibt einen Hacken.

Wenn ich mich selbst zum Opfer meines Scriptes mache, löst Iptables welches die IP (in diesem Falle meine dynamische IP) in "Reinform" bekommt in den vermeintlichen Hostnamen auf.

Übergabe an IPtables (meine gestern aktuelle IP):
188.102.199.135
In den Iptables steht dann allerdings:
dslb-188-102-199-135.pools.arcor-ip.net
und blockt vielleicht diese (keine Ahnung wie ich das testen kann).

Der Witz bzw. mein Problem:
Nachdem er dslb-188-102-199-135.pools.arcor-ip.net geblockt hat,
konnte ich noch super auf den Webspace zugreifen.
Erst nach einem direkten Eintrag der reinen IP in die Iptables war es bei mir dann duster :)

So, ... also wird anscheinend, da ich die IP direkt als Iptablesregel eintragen konnte (ohne Hostnamenauflösung) irgendwo auf dem Weg die IP in den Hostnamen aufgelöst.

Code:
cat /var/log/apache2/access.log | grep "GET /phpMyAdmin" | awk '{print $1}'
Gibt mir "reine" Ipadressen aus.


Code:
 $IPTABLES  -A GUARDIAN -i venet0 -p tcp -s $ip -j REJECT --reject-with tcp-reset
Trägt mir $ip in die IPtables ein, anscheinend aber in aufgelöster Form.
(FUNKTIONIERT NICHT)

Code:
IPTABLES  -A GUARDIAN -i venet0 -p tcp -s 188.102.199.135 -j REJECT --reject-with tcp-reset
(FUNKTIONIERT)


So, es gibt also anscheinend einen Unterschied zwischen $ip und 188.102.199.135.


So sieht das jetzt bei mir im Moment aus...
hoffe ich verärgere hier niemanden mit meinen vielleicht "zueinfachen" Fragen,
aber im Moment weiß ich nicht wirklich weiter.

Code:
for ip in `cat /var/log/apache2/access.log | grep "GET /phpMyAdmin" | awk '{print $1}'` ; do
                $IPTABLES  -A GUARDIAN -i venet0 -p tcp -s $ip -j REJECT --reject-with tcp-reset
                done



Lieber Gruß
StepByStep


EDIT: Also ein -L -n macht genau das was es soll, aber wie verwende ich es um Iptables Regeln zu erstellen?
Es scheint so, als würde -L -n nur für die nachträgliche Auflistung greifen.

Ich hoffe jemand hätte mal einen Tipp für mich.
 
Last edited by a moderator:
*grmpf*

Ok, es scheint so, als wäre mein Cron hängengeblieben.
Nach einem Reboot klappt alles.... Er blockt so wie er soll....

Der Thread kann gelschlossen und eigentlich auch gelöscht werden ;)

Lieber Gruß
StepByStep
 
Back
Top