Router z OpenWrt
Jak wiadomo serwer powinien być uruchomiony przez całą dobę, może dałoby się więc wykorzystać do jego uruchomienia jakieś urządzenie, które zazwyczaj jest włączone bez przerwy oraz da się na nim postawić Linuxa? Router zazwyczaj zostawiamy włączony bez przerwy, więc wydaje się nadawać do tego celu idealnie! Jednak na standardowym oprogramowaniu jest mało interesujący, jesteśmy ograniczeni do funkcjonalności jakie przewidział dla niego producent a niekoniecznie wśród nich jest serwer www wraz z obsługą PHP i bazy danych… Jednak zmiana oprogramowania na OpenWrt może nam pomóc. W moim przypadku zainstalowałem na routerze TL-MR3420 system operacyjny Gargoyle, który jest oparty właśnie na OpenWrt. Kopalnie wiedzy na temat instalacji, konfiguracji i obsługi routerów pod tym systemem znajdziecie na stronie https://eko.one.pl/. Niestety, nie wszystkie routery są kompatybilne z OpenWrt/Gargoyle, zależy to w głównej mierze od podzespołów użytych przez producenta urządzenia – chip zastosowany w routerze musi posiadać sterowniki na Linuxa. Listę routerów współpracujących z OpenWrt znajdziecie tutaj: https://wiki.openwrt.org/toh/start
OpenWrt daje nowe możliwości
Co daje nam instalacja takiego systemu? Przeobraża nasz mały router w mały komputer na Linuxie, który możemy obsługiwać prawie tak jak prawdziwy serwer. Podobieństwo to wynika np. z tego, że nie podłączymy do routera monitora, tak samo jak raczej nie robi się tego z prawdziwymi serwerami 🙂 Obsługę więc przeprowadzamy głównie przez SSH, choć dostępny jest też interfejs www, dla OpenWrt nazywa się on Luci i jest opcjonalny a w Gargoyle jest domyślnie aktywny. Przypomina on standardową stronę do zarządzania routerem dostępną w oryginalnym oprogramowaniu, jednak ma wiele więcej funkcjonalności. Poprzez SSH możemy zarządzać routerem, opcjami dotyczącymi WiFi, przekierowaniami portów itp. Możemy też instalować nowe oprogramowanie znane nam z Linuxa na PC! Bardzo wiele oprogramowania zostało przeniesione na architektury, których używają routery jednak nie jest to pełne 100%. Z instalacją oprogramowania jest jeszcze jeden problem – znikoma ilość pamięci wewnętrznej routera. Jeśli posiadamy router z USB to jesteśmy w domu 🙂 Możemy podpiąć pendrive i zyskać miejsce na pliki strony oraz po wykonaniu tzw. extroot na instalację nowego oprogramowania. Jeśli Twój router nie ma USB, to chyba lepiej będzie sobie odpuścić tą zabawę.
Testowa konfiguracja
Mój router został wyposażony www Apache z PHP 5.6 oraz MySQL. Niby wszystko fajnie, jednak jego wydajność pozostawiała wiele do życzenia… 32MB RAM to było zdecydowanie za mało by poradzić sobie np. z uruchomieniem WordPressa. Wczytywanie trwało kilkadziesiąt sekund a i nie raz router potrafił się zrestartować. Zmiana Apache na lighttpd wyeliminowała restarty ale dalej o płynności nie było mowy. Jeśli router miałby serwować prostą stronę html, ewentualnie napisaną samodzielnie przez nas w PHP to jak najbardziej by się do tego nadawał, jednak CMS z prawdziwego zdarzenia przerósł jego możliwości. Oczywiście tak sytuacja wyglądała na moim starym routerze, który nie grzeszył wydajnością na innych, nowszych i szybszych może być lepiej. Obecnie posiadam Xiaomi Mi Router 3G, który rozkłada na łopatki poprzedniego TP-Linka:
- Procesor dwurdzeniowy (czterowątkowy) o takowaniu 880 MHz
- 256MB pamięci RAM DDR3
- 128MB pamięci flash
- port USB 3.0
Na tym sprzęcie serwer powinien działać o niebo lepiej, jednak tego już nie testowałem, gdyż znalazłem inną alternatywę dla mojego serwera o czym możecie przeczytać w kolejnej części tego artykułu. Natomiast o samym routerze napisałem recenzję, którą znajdziecie tutaj. Oczywiście jest więcej niedrogich routerów, które można wykorzystać do celu postawienia małego serwera www (np. Netgear R6220), dlatego warto zapoznać się z ich specyfikacją a w szczególności wsparciem dla OpenWrt/Gargoyle oraz dostępnością portu USB dla podłączenia np. pendrive lub dysku zewnętrznego zawierającego dane, które będą dostępne przez www.
0 komentarzy