Also: Diese Skripte sollen mod_evasive dabei helfen, IP-Adressen von (potentiellen) Angreifern zu blockieren. Das tun sie auch …
Problem: Diese vier Skripte müssen mit Root-Rechten laufen, werden aber vom Webserver mit Argumenten gestartet, die an Programme übergeben werden. Was immer heikel ist. Deshalb brauche ich eine zweite Meinung.
Das geschieht durch einen Eintrag in /etc/sudoers:
www-data ALL=NOPASSWD: /usr/sbin/fwblock4time
fwblock4time nutzt fwblock und fwunblock (welche fwlist benutzen) und wird, wie schon gesagt, von mod_evasive gerufen:
## Example for file: /etc/apache2/mods-available/evasive.conf
<IfModule mod_evasive20.c>
#…
DOSSystemCommand "sudo /usr/sbin/fwblock4time %s 10"
DOSLogDir "/tmp"
DOSWhitelist 127.0.0.* 192.168.0.*
</IfModule>
Auch beim gelegtlichen manuellen Aufruf wird mit sudo hantiert. Also sollten die Dinger schon sicher sein.