Hallo 
Hat schon mal wer eine IP-Sperre programmiert?
Ich weiß, dass die meisten User bei jedem Internet-Login eine neue IP-Adresse bekommen. Ich weiß auch, dass man IPs über anonymisierende Proxys verschleiern kann. Trotzdem würde ich gerne so eine IP-Sperre programmieren.
Lt. einem älteren heise.de-Bericht verwenden die Spamer nicht bei jedem Spam eine neue IP-Adresse. Bei einem ganz konkreten Test soll das bei 2/3 aller Spams der Fall gewesen sein. Es kann also anscheinend schon Sinn machen, eine IP-Sperre zu haben.
Allerdings frage ich mich, wie man so etwas programmiert.
Meine Überlegungen:
Es sollte die Möglichkeit geben, zwischen einer festen und einer temporären Sperre zu unterscheiden.
Tabelle ip_blacklist:
ip VARCHAR(39) UNIQUE NOT NULL
stamp DateTime NOT NULL
hours int unsigned
In stamp steht, wann man die IP-Adresse in die Tabelle eingetragen hat.
Bei hours=null handelt es sich um eine feste Sperre.
In PHP schaue ich dann sowohl bei der Registrierung als auch beim Login die IP-Adresse des Users an und vergleiche sie mit den Einträgen in der Datenbank.
Sind temporäre Sperren veraltet, lösche ich sie aus der Tabelle ip_blacklist.
Macht das Sinn? Macht man das so?

Hat schon mal wer eine IP-Sperre programmiert?
Ich weiß, dass die meisten User bei jedem Internet-Login eine neue IP-Adresse bekommen. Ich weiß auch, dass man IPs über anonymisierende Proxys verschleiern kann. Trotzdem würde ich gerne so eine IP-Sperre programmieren.
Lt. einem älteren heise.de-Bericht verwenden die Spamer nicht bei jedem Spam eine neue IP-Adresse. Bei einem ganz konkreten Test soll das bei 2/3 aller Spams der Fall gewesen sein. Es kann also anscheinend schon Sinn machen, eine IP-Sperre zu haben.
Allerdings frage ich mich, wie man so etwas programmiert.
Meine Überlegungen:
Es sollte die Möglichkeit geben, zwischen einer festen und einer temporären Sperre zu unterscheiden.
Tabelle ip_blacklist:
ip VARCHAR(39) UNIQUE NOT NULL
stamp DateTime NOT NULL
hours int unsigned
In stamp steht, wann man die IP-Adresse in die Tabelle eingetragen hat.
Bei hours=null handelt es sich um eine feste Sperre.
In PHP schaue ich dann sowohl bei der Registrierung als auch beim Login die IP-Adresse des Users an und vergleiche sie mit den Einträgen in der Datenbank.
Sind temporäre Sperren veraltet, lösche ich sie aus der Tabelle ip_blacklist.
Macht das Sinn? Macht man das so?

Kommentar