Routery cz1 - Zeroshell
10.01.2011 | aktual.: 10.01.2011 21:26
Planowałem zmianę aktualnego routera na Zeroshell już od jakiegoś czasu. Głównie miałem chęć przetestowania czegoś innego niż dotychczasowe rozwiązanie po przeczytaniu bloga Instalacja ZeroShell na dysku twardym, m0n0wall - oprogramowanie dla routerów i firewalli w zastosowaniach do... oraz m0n0wall w praktyce. Zainteresowały mnie możliwości, które były w sumie nieosiągalne przez dotychczasowe używane prze zemnie urządzenie i oprogramowanie w nim. Całość naszykowałem już sobie przed świętami, jednak zabrakło chęci na podmianę sprzętu. Niestety w ostatnią sobotę miałem okazję sprawdzić ten system w akcji. Niestety ponieważ aktualny router odmówił dalszej pracy. Jednak omówię go w następnej części, ponieważ i tak uważam, że jest warty uwagi.
Sprzęt
Komputer na router już miałem, który był w miarę małej obudowie. Sprzęt także przyzwoity 512MB RAM, Pentium 3 550MHz, 2 sloty PCI, wbudowany LAN. Wrzuciłem drugą sieciówke (jakiś stary 3Com) i kartę WiFi. Na system przeznaczyłem kartę CF 2GB i podłączyłem to przez przejściówkę CF > IDE. System wrzuciłem wg tego co było napisane na blogu o instalacji Zeroshella, ale prawie to samo jest na stronie Zeroshell w sekcji FAQ. Start bezproblemowy, wykryło cały sprzęt.
Konfiguracja
Po starcie zmieniłem IP, uruchomiłem WiFi i podłączyłem do sieci. Oczywiście od dostawcy adresu IP nie pobrało, inny MAC u dostawcy a inny karty. W sobotę to mogę sobie pomarzyć o zmianie takich danych u dostawcy także zmieniłem to programowo. Zmieniłem to następująco: W Setup > Startup/Cron > Pre Boot wpisałem: ifconfig eth1 down ifconfig eth1 hw ether 00:00:00:00:00:00 ifconfig eth1 up
Należy tutaj zwrócić uwagę, że w Zeroshell karty sieciowe po uruchomieniu systemu mają inne oznaczenia, tzn: ETH00, ETH01 itd. Przy starcie systemu pozostają oznaczenia eth0, eth1 itd, dlatego widać w tym skrypcie eth1 a nie ETH01. To taka uwaga gdyby coś nie działało. Można by to zrobić w Post Boot i skorzystać z oznaczeń ETH00 jednak byłoby to mniej poprawne. Po zmianie MACa na poprawny pobrało mi poprawny adres IP.
Udostępnienie połączenia
Na stronie Zeroshella jest całkiem sporo informacji jak skonfigurować go do pracy jako router. Część z nich jest o tym aby karty sieciowe połączyć mostkiem (opcja BRIDGE) i dodać mostek do NAT'a, jednak zauważyłem, że w ten sposób tracę możliwość kontroli konkretnej karty sieciowej. Ja wybrałem drugą opcję i dodałem do NAT'a tylko kartę sieciową z wyjściem na świat.
Ustawienia NAT zmieniamy w Router > NAT.
Firewall
Tutaj domyślnie jest wszystko na ACCEPT, co niestety ma wadę, cały router jest widoczny na zewnątrz. W moim przypadku zmieniłem INPUT na DROP i dopisałem odpowiednie reguły do Firewalla aby móc korzystać z dostępu do sieci i aby cały router nie był widoczny na zewnątrz.
UPDATE: Zgodnie z komentarzem, uzupełniam Firewalla, dokładniej zrzut ekranu, jest to całkowicie podstawowa konfiguracja i aktualnie jestem na etapie ustalania reszty. Nie ma tam ETH02, które w moim przypadku jest kartą WiFi, jest tutaj nieskonfigurowana jeszcze.
Podsumowanie
Samo oprogramowanie jest niezbyt skomplikowane (dla osób co miały już jakąś styczność z tego typu systemami, sprzętem), jeżeli chcemy uruchomić prosty router to zrobimy to w 15 minut (może nawet szybciej), jednak jeżeli chcemy go skonfigurować dokładnie pod siebie to nie jest już tak wesoło. Nie udało mi się jeszcze uruchomić filtrowania pakietów (udało się je zaktualizować), VPN i jeszcze mam problemy z Virtual Server a zawsze przydawała mi się ta funkcjonalność w routerach. Jeżeli nie uda mi się go skonfigurować tak jak chce to wypróbuję m0n0wall albo może i tak bardzo promowaną przez serwis Vyatte.