FreeBSD – Crearea de tabele pentru ipfw din fisiere txt
miercuri, 21 iulie 2010 | by Bogdan Turcanu |Atunci cand folosim pf in freeBSD avem posibilitatea sa definim tabele de ip-uri in mai multe moduri, ca de ex:
table <local> persist { 192.168.10.0/24, 172.16.0.0/24 }
table <virusati> persist file "/etc/pf.conf-virusati"
In cazul cand folosim ipfw si avem nevoie sa aplicam diferite reguli unor grupuri de ip-uri, o solutie este sa avem un fisier text cu aceste ip-uri pe care sa il modificam.
Sa presupunem ca avem fisierul /etc/ipblock care contine urmatoarele linii:
192.168.0.20
192.168.0.31
192.168.0.53
192.168.0.88
Dorim sa blocam traficul dinspre aceste ip-uri. Pentru aceasta vom face un script in care scriem:
#/usr/local/bin/bash
ipfw table 0 flush;
ipfw delete 10;
echo ‘Lista de ip-uri:’;
for i in `cat /etc/ipblock`; do ipfw table 0 add $i;
echo $i;
done;
ipfw add 10 deny ip from table\(0\) to any
Setam drepturi de executie asupra fisierului care contine aceste comenzi si apoi, dupa fiecare modificare a fisierului /etc/ipblock vom rula acest script pentru a actualiza regulile din firewall.