==== GeoLite2 ==== TODO: GeoLite2 noch nicht aktiv, und update ungeklärt Immer mehr Hacker Angriffe kommen aus China. Der Versuch, IP-Adressen aus dem fernen Land zu blocken brachte mich zu MAXMIND und deren Datenbank (GeoLite2 Country). Man muss erst ein Konto erstellen, um die Datenbank herunterladen zu können. Am Mac muss man dann noch die entsprechende Library installieren brew install libmaxminddb Dann kann man eine IP wie folgt abfragen mmdblookup --file /path/to/file.mmdb --ip 1.2.3.4 Es kommt ein JSON Ergebnis raus. Das kann man noch einschränken, z.B. auf Asien mittels mmdblookup --file /path/to/file.mmdb --ip 1.2.3.4 continent code Das wäre im Falle der 1.2.3.4 dann "OC" Jetzt muss man das nur noch irgendwo einbauen... Nachdem in OS X die hosts.deny ignoriert und durch [[https://krypted.com/mac-os-x/a-cheat-sheet-for-using-pf-in-os-x-lion-and-up/|pfctl]] ersetzt wurde, klappt nachfolgendes nicht mehr In /etc/hosts.deny add the line: sshd: ALL and in /etc/hosts.allow add the line sshd: ALL: aclexec /usr/local/bin/sshfilter.sh %a EmergencyThreads sollte ich mir anschauen, habe aber nicht die Datei gefunden, die ich einbauen kann (die angegebene ist alt). https://www.amsys.co.uk/wp-content/uploads/Using-the-Lion-pf-firewall-with-the-Emerging-Threats-list.pdf Direkt in pf geht es wohl nicht, ein script aufzurufen. Entweder eine andere Lösung, oder den Aufruf direkt in fail2ban und sshblack einbauen. Dort dann schon beim ersten Zugriff auf ssh oder html prüfen. Fehlt aber noch der regelmäßige Update der Datenbank... Stand November 2020