Re: grep POMOCY !!!
Witam!
Akurat 03-03-2004 (śro) o godz. 15:30 Bartosz Fenski aka fEnIo napisał(a):
> Może tak:
>
> grep -Ev "^ *#" /home/plik
>
Jeżeli to mają być regułki w stylu:
iptables -A FORWARD -s <IP_USERA> -m mac --mac-source <MAC_USERA> -j ACCEPT
to lepiej chyba zrobić to w pętli.
Przykładowo:
# Plik z IP, w którym każda linia to np.
# IP MAC NAZWISKO IMIE
users_allow=/tajny/katalog/users.allow
# Sprawdzam czy jest taki plik
[ -f $users_allow ] || exit 0
# Wyświetlam sobie dodawanych...
echo -e "\nDodaję userów: "
# Grepuję pomijając komentarze i podstawiam do zmiennych...
grep "^" $users_allow |grep -v "^#"| while read ip mac usern useri; do
if [ "$ip" != "" ]; then
# Kogo właśnie dodaję?
echo -e "\t$usern $useri ($ip)"
# Pozwalam mu na forward...
iptables -A FORWARD -s $ip -m mac --mac-source $mac -j ACCEPT
# i na dostęp do netu
# Jak maskarada
iptables -t nat -A POSTROUTING -s $ip -o ppp0 -j MASQUERADE
# a jak stałe IP
#iptables -t nat -A POSTROUTING -s $ip -o ppp0 -j SNAT --to-source <MÓJ_STAŁY_IP>
fi
done
Dzięki temu łatwo można dodawać/usuwać użytkowników. Wystarczy
zahaszować/odhaszować linijkę (ew. dodać nowy wpis) i przeładować skrypt
firewalla, w którym będzie ta pętla (warto oczywiście wcześniej wyczyścić
łańcuchy :)).
Pisałem z głowy, więc mogą być błędy.
Pozdrawiam
Tomasz Jakub Skrynnyk
--
Tomasz Jakub Skrynnyk
skrynnyk [at] post [dot] pl | GG#136500
Key fingerprint = DC3D B38A 850B 7D1B 3168 CE66 1BE6 81B8 B7B7 562D
Reply to: