Skrypt ipallow napisałem do wygodnego zarządzania maskaradą. Może się on również sprzydać osobom mającym problem z ipchains i nie potrafiącym sobie ustawić liczników pobranych danych dla użytkowników.
Skrypt był testowany na ipchains 1.3.8, 27-Oct-1998 (100KB). Mogą wystąpić jakieś różnice między poszczególnymi wersjami ipchains - nie miałem czasu tego sprawdzić.
Pobierz ipallow.tar.gz (1.5KB)
Aby zainstalować skrypt należy:
- Rozpakować archiwum.
- Skopiować zawartość katalogu etc do katalogu /etc
- Wyedytować plik /etc/deny.txt i wpisać w nim zabanowane (zabronione) numery ip (lub zostawić pusty).
- Wyedytować plik /etc/users.inet i wpisać tam numery IP komputerów lokalnych uprawnionych do łączenia się z internetem. Przykład:
192.168.1.2 ACCEPT
192.168.1.3 ACCEPT
192.168.1.4 DENY
gdzie:
- ACCEPT - oznacza zezwolenie
- DENY - oznacza zakaz łączenia
- Wyedytować /etc/users.local i identycznie jak w przypadku /etc/users.inet wpisać uprawnienia do łączenia się lokalnie z serwerem.
- sprawdzić czy ipallow działa:
/etc/rc.d/init.d/ipallow start
/etc/rc.d/init.d/ipallow status
Jeśli nie będzie problemów to skrypt wyświetli wszystkie zdefiniowane regułki.
- Jeśli wszystko poszło prawidłowo to wystarczy teraz zrobić link w katalogu /etc/rc.d/rc3.d/:
ln -s /etc/rc.d/init.d/ipallow /etc/rc.d/rc3.d/S90ipallow
gdzie:
- rc3.d - katalog zależny od poziomu startowego (initlevel). Dla systemu pracującego w trybie tekstowym z wielodostępem i z obsługą sieci najczęściej jest to rc3.d. Aby sprawdzić, jaki jest domyślny poziom w systemie trzeba zaglądnąć do pliku /etc/inittab i poszukać linijki:
id:3:initdefault:
gdzie: 3 - to poziom starowy (czyli rc3.d)
- S90 - to kolejność w jakiej zostanie uruchomiony skrypt. Ja go uruchamiam jeszcze przed uruchomieniem skryptu zestawiającego połączenie z internetem, ale możliwie pod koniec startu systemu po uruchomieniu newralgicznych usług w systemie.