Uprzedzając pytanie o skrypt, podaję mój, który udostępnia dostęp do routera tylko komputerom o IP zarejestrowanych w pliku
hosts:
# --- Ustawianie regułek firewall na podstawie /etc/hosts
# czytanego linijka po linijce
# by Kipa :-)
i=8 # --- nr linii od której zaliczać hosts
s=3 # --- ile pustych lini na stop
. /etc/system.cfg
f=$s # --- liczenie pustych lini od nowa
while [ "$f" -gt 0 ]; do # --- do odczytu tylu pustych ile podaje stop
i=$(expr $i + 1) # --- nastepna linia
l=`sed -n $i,//l /etc/hosts` # --- czytaj linie
# l=`cat /etc/hosts | sed -n $i,//l` to samo
[ "$l" ] || f=$(expr $f - 1) # --- zalicz pusta
ii=0 # --- wyzeruj licznik wyrazow
for w in $l; do # --- wyrazy w linii
ii=$(expr $ii + 1) # --- kolejny wyraz
case $ii in
1)
# --- nr IP
[ "$w" = "#" ] && ii=3 # --- przeskocz komentarz
if [ "$w" -eq "$NETWORK1" ]; then else ii=3; fi # --- przeskocz inne IP
;;
2)
# --- nazwa kompa
komp=$w
lan=eth1
[ "$ROUTER" = "dialup" ] && lan=eth0
ipfwadm -I -a accept -W $lan -S $komp
f=$s # --- pełna wartosc stop, linia niepusta
;;
esac
done
done
Moje wypowiedzi dotyczą
0.2.7, dla
0.3.X będą różnice w katalogach, jeśli chodzi o położenie plików.