Der Grund, warum ich mich damit beschäftige, ist, dass mir sonderbares Verhalten an dem, von mir betreuten Asterisk aufgefallen ist. Die Diagnose hat ergeben, dass die IP, von der der Blödsinn kam, eine bekannte VoIP-Angriffsaddresse(vermietetes, in Deutschland registriertes Subnetz) war. Der Angreifer flog zwar relativ schnell nach ein paar Minuten spielen/bruteforcen durch fail2ban raus, aber nachdem das in der kürzlichen Vergangenheit gelegentlich vorkam, habe ich nach weiteren Möglichkeiten gesucht, die Sicherheit weiter zu verbessern.
Vorher waren folgende Massnahmen im Einsatz
- Nur die Länder sind freigeschaltet, die auch tatsächlich auf die Anlage zugreifen müssen
- Fail2Ban schmeisst den Angreifer nach 2 falschen Anmeldeversuchen sofort für 3 Tage raus(iptables).
- Sichere Astersik-Einstellungen(Sichere SIP-Passworte, SIP-Einstellungen: allowguest=no; alwaysreject=yes; Default-Context in asterisk ist leer)
Ein guter, kostenfreier Dienst ist hier voipbl.org. Es ist eine Blackliste, mit der IP-Addressen gepflegt werden, die versuchen in VoIP-Anlagen einzubrechen.
Das ganze läuft so ab, dass man sich die Liste der geblockten IPs herunterlädt und dann für jede eine Blockregel via iptables anlegt. Da gibt's auf deren Seite ein Script dazu.
Weiterhin wird mit der dortigen Anleitung eine Fail2Ban regel gezeigt, die fehlerhafte Anmeldungen auch gleich an deren zentralen Dienst weitergegeben werden. Auf die Art und Weise werden fehlerhafte Anmeldeversuche flächendeckend in Echtzeit registriert und BruteForce-Angreifer sind innerhalb kürzester Zeit bei Verwendung der Blockliste komplett draussen.
Das einspielen der Regeln dauert etwas. Sind ca. 18000 gelistete Hosts. Bei mir ca. 30 Minuten. (Komisch, auf einer zweiten VM war das in 60 Sekunden erledigt.)
Na, vielleicht mal einen Scripting Contest veranstalten, mit dem Ziel der Suche nach effizienten Methoden die x-Tausend Regeln effektiv einzurichten und nachzupflegen?
EDIT: Blacklisting und IPv6
Mit IPv6 wird das Blacklisting wesentlich ineffektiver. Das üblicherweise kleinste vergebene Subnetz ist ein /64. Das sind so viele Adressen, wie IPv4 insgesamt hat. Eine einzelne Adresse zu blockieren bringt da gar nichts. Ein Nutzer kann für jeden Angriff eine andere IP nehmen.
Die Tendenz, dass deswegen beim IPv6-Blacklisting ganze Bereiche geblockt werden nimmt zu:
Spamhaus: Wir blocken mal mindestens ein /64 [1]
Das man so als Kollateralschaden mal eben so mitgeblockt wird, kann also schnell mal vorkommen. D. h. man muss sich da seinen Hoster gut aussuchen. Wenn es ein Hoster ist der Spammer vielleicht duldet, dann ist man da als Spammer-Nachbar mal schnell mit dran.
[1] https://www.spamhaus.org/organization/s ... -statement"]