Grzegorz
Czerepak
Student, Wyższa
Szkoła Technologii
Informatycznych w
Kato...
Temat: zapobieganie przed zmianą adresu ip przez użytkownika
Witam czy orientuje się ktos co jest źle w tym skrypcie, Skrypt ma powodować blokade przez użytkownika zmiane adresu ip. Tzn. jak zmieni adres ip lub adres mac to ma mieć zabroniony dostęp do sieci.Przy wykonywaniu tego skryptu dostaje takie oto błędy:
[: 24: closing paren expected
[: 36: =: unexpected operator
#!/bin/sh
# skrypt posiada trzy parametry:
# 1) add (nowa dzierżawa DHCP) |
# del (wygasająca dzierżawa) |
# old (odnowiona dzierżawa –
# np. w wypadku restartu dnsmasq w czasie trwania dzierżawy)
# 2) adres MAC klienta
# 3) adres IP klienta otrzymany z DHCP
IPTABLES='/sbin/iptables'
EXT_INTERFACE=eth1
INT_INTERFACE=eth0
# jeśli dzierżawa jest nowa ($1 = add) lub odnowiona ($1 = old)
# i nie ma jeszcze takiej reguły w łańcuchu FORWARD
# to pozwalamy na przekazywanie pakietów w obie strony.
iptables -P FORWARD ACCEPT
if [ \( $1 = 'add' -o $1 = 'old' \) -a \
` iptables -L FORWARD | grep -i -c "$3"` -eq0 ]
then
iptables -A FORWARD -i $INT_INTERFACE -o $EXT_INTERFACE \
-m mac --mac-source $2 -s $3 -j ACCEPT
iptables -A FORWARD -o $INT_INTERFACE -i $EXT_INTERFACE \
-d $3 -j ACCEPT
fi
# jeśli dzierżawa wygasa ($1 = del)
# i istnieją reguły w łańcuchu FORWARD
# pozwalające na przekazywanie pakietów w obie strony
# to je usuwamy.
if [ $1 = 'del' -a \
` iptables -L FORWARD | grep -i -c " $3 " ` -ne 0 ]
then
iptables -D FORWARD -i $INT_INTERFACE -o $EXT_INTERFACE \
-m mac --mac-source $2 -s $3 -j ACCEPT
iptables -D FORWARD -o $INT_INTERFACE -i $EXT_INTERFACE \
-d $3 -j ACCEPT
fi
Czy jestescie w stanie mi pomóc ?