Hi,
hatte ähnliche Probleme mit der Seite eines bekannten. Am besten ist eine selbstgestrickte Lösung da automatische Bots damit immer überfordert sind.
Am besten Du modifizierst eine Datei die jede andere Seite verwendet bzw. baust ein Include ein. Ich weiß gerade nicht genau wie das bei Ilch 2.0 ist, aber ich meine die index.php ist der einzige Einstiegspunkt für alle Module etc., ansosten bietet sich eine Datei wie "includes.php" oder "bootstrap.php" an, sofern vorhanden.
Dort machst Du ganz oben eine Abfrage rein ob ein Cookie gesetzt ist (das ist eine sehr simple Lösung, es sind natürlich weitaus komplexere denkbar, z.B. Session, HMAC / PBKDF2 der IP / Useragent mit einem Secret-Key u.v.m.):
<?php
if(!isset($_COOKIE['not-a-bot'])) {
header('Location: /botcheck.php');
die('http://deine-domain.example/botcheck.php');
}
Was du in der botcheck.php machst kannst Du dir dann selbst ausdenken. Einfache Captcha-Scripts können die Bots locker umgehen bzw. lösen.
Für den erwähnten bekannten habe ich z.B. random eine von 15 Fragen gestellt zur Final Fantasy-Welt.
Wenn der Besucher die Frage richtig beantwortet wird der Cookie gesetzt und er kann sich frei bewegen.
Das ist aber ein Whitelist-Konzept. Das schließt leider auch den Google-Bot etc. aus.
=> Du könntest auch die Daten von Blocklist.de (
lists.blocklist.de/lists/bots.txt ) verwenden. Die haben auch eine Badbots-Blocklist. Einfach einlesen mit PHP 1x am Tag und allen gelisteten IPs entweder ein Zugangsschutz der Art wie oben beschrieben vorwerfen oder komplett aussperren.
Edit: Ich würde sogar noch die anderen Listen mit dazu nehmen. Wer SSH Brute-Force betreibt wird wohl kein seriöser Besucher sein
Grüße
Zuletzt modifiziert von BadRandolph am 08.05.2016 - 17:10:50