Serwer Dostępowy, a właściwie "mój" komputer w pracy.

Oprogramowany przy uzyciu GNU / Linux OpenSuSE 10.0. Opis instalacji można przecztać pod tą linką na susek.info. Serwer posiada 2 dyski twarde: hda (10 GB) i hdb (40 GB). Partycje odpowiednio:
Posiada on 3 interfejsy (karty) sieciowe, umozliwiając zarządzanie i maskaradę sieci. Karty sieciowe konfigurujemy w Yast => Urządzenia sieciowe => Karta sieciowa. Do 1 interfejsu (eth0 - IP: przyznawane przez TP.SA) jest podpięty modem neostrady. Skonfigurowany jest on w trybie Bridged Ethernet zgodnie z instrukcją użytkownika dostarczaną wraz z zestawem. Konfiguracja ta tworzy zewnętrzny, dodatkowy interfejs sieciowy dsl0 (IP: 10.0.0.138). Modem neostrady ustawiamy w Yast => Urządzenia sieciowe => DSL. Dzięki tym zabiegom tworzymy połączenie typu eth0=>dsl0, będące naszym wyjściem na internet. Pzostałem 2 karty sieciowe służą do połączeń z siecią wewnętrzną. Pierwsza z nich to eth1 (IP: 192.168.1.1) a druga to eth2 (IP:192.168.2.1). Interfejs eth1 jest podpięty do huba, służącego do rozdzielania sieci, eth2 służy jako połaczenie serwisowe, zapasowe.
Firewall ustawiamy w Yast => Zabezpieczenia i użytkownicy => Firewall => Interfejsy. W zakładece interfejsy ustawiłem dsl0 jako strefę zewnętrzną, a eth0, eth1 i eth2 jako strefa wewnętrzna. Dzieki takiemu ustawieniu sieć jest chroniona od internetu zaporą, nie blokując połączeń od wewnętrznej częsci sieci.
Rozdzieleanie internetu opiera sie na maskaradzie. Przekazywanie włączamy w Yast => Urządzenia sieciowe => Karta sieciowa (zaznaczamy zewnętrzny interfejs, u mnie eth0) => Edytuj => Routing => Włącz IP forwarding oraz Yast => Zabezpieczenia i użytkownicy => Firewall => Maskarada => Maskarada sieci.
Na interfejsie eth1, w celu ułatwienia sobie pracy z konfiguracją całej sieci, działa serwer DHCP, konfigurowany w /etc/dhcpd.conf. Przykładowa konfiguracja znajduje sie tutaj. Pozwala ona na automatyczne przyznawanie adresów IP, bramki, DNS i domeny.
W moim rozwiązaniu niezbędne jest utrzymywanie 24 godzinnego połączenia internetowego. Jednak z powodu rozłączania połaczenia internetowego przez TP.SA w przypadku 45 minutowego nieaktywnego połączenia (np. z powodu braku ruchu), muszę wykorzystywać demmona cron do restartowania połączenia dsl0. Do konfiguracji crona, jak i wielu innych właściwości systemu, używam programu webmin. Dodatkowo używam skytpu info-IP powiadamiającego mnie o aktualnym adresie IP komputera. Cron ustawiony jest na uruchamianie się 3 razy na dobe (7, 16, 23 h): wyłączenie połączenia dsl0 (23 minuta, polecenie: /etc/init.d/network stop dsl0), włączenie połączenia dsl0 (24 minuta, polecenie: /etc/init.d/network start dsl0) a następnie wykonanie skryptu info-ip (25 minuta).
Do udostępniania danych zapisanych na dyskach serwera dostępowego wykorzystuje serwer proftpd. Działa on na wszytkich interfejsach sieciowych, jednak ze wzgledu bezpieczeństwa jest on zasłonięty firewallem na wejściu zewnętrznym. Zkonfigurowany jest on na działanie w trybie anonimowym oraz użytkownika.

Z racji wykorzystywania serwera dostępowego jako komputera do kontroli treści dostepnej dla dzieci stosuję "ręczne" metody zarządzania treścią. Jedną z nich jest wykorzystywanie zdalnego pulpitu, drugą wyłącznie dostępu do witryn.
Moimi klientami wykorzystywanymi do przechwytywania pulipitu są Krfb i Krdc (część KDENetwork) dostarczane wraz ze środowiskiem KDE. Zasady ich użytkowania można znaeźć w opisie konfiguracji stacji klienckich.
Wyłączanie dostępu do witryn opiera się na wykorzystaniu właściwości linuksowych iptables. Stosuję tutaj prosty skrypt ustawiony w cronie, na uruchomienie po włączeniu łącza dsl0. Metody te może wydają się dość prymitywne, jednak są skuteczne.
Jeżeli jednak chciałbyś spóbować rozwiązań automatycznych zainteresuj sie tandemem: sqiud i dansguardian.

Bielsko - Biała VIII 2006



>