IT a bezpečnost bez starostí

OpenWRT na routeru TP-LINK TL-WR1043ND

O routeru

Router TP-LINK TL-WR1043ND v době, kdy jsem jej kupoval (11/2011) představoval dobrý poměr cena/výkon. Uměl vše, co do domácnosti potřebuji a byl za 1000 Kč (http://www.czechcomputer.cz/product.jsp?artno=68414).

CPU: Atheros AR9132@400MHz
RAM: 32 MB
Flash pamet: 8 MB
5 LAN portů a 1 WAN port
1 USB port

Tenhle návod si píšu i tak trochu sám pro sebe. Přece jen je to věc, kterou člověk jednou udělá a pak to funguje měsíce a roky. Jenže občas se stane, že dojde k fatálnímu zášlehu a proč pak zase hledat a vymýšlet řešení?

TP-LINK TL-WR1043ND

Obr. ze stránky produktu na http://cz.tp-link.com

Důvody pro alternativní firmware

Proč vůbec jiný firmware? Běžnému uživateli ten výchozí od TP-LINku bude určitě stačit. Alespoň na začátek. Mně na TP-LINKu vadí dvě věci a tou jsou výpadky WIFI. Nevím, zda jsem měl jen smůlu na zařízení, ale zatím to tak měli všechny typy, co mi prošly rukama. Jednou za cca 14 dní se prostě router musel restartovat. Dalším zklamáním bylo USB. Nastavil jsem si sdílení dat na jednom externím disku. Jenže po každém startu svého PC jsem se musel na disk přihlašovat. Nechtěl si přihlášení pamatovat.

Mezi další výhody alternativního firmware je daleko lepší správa a přehled. Dostanete se lépe na všechna nastavení, najednou půjde změnit nebo nastavit i to, co dřív prostě nešlo. A nemusíte se bát, OpenWRT má svoje GUI (grafické, přes webový prohlížeč) rozhraní. Vše se tedy nechá v základu naklikat.

Z počátku jsem přemýšlel i o firmware TOMATO, bohužel tenhle router beží na Atherosu. Takže OpenWRT je asi jediné funkční a zároveň rozumné řešení.

Přehrání firmware

Nic težkého, měl by zvládnout úplně každý. Stačí nalogovat se do webového rozhraní TP-LINKu. Vybrat flash firmware. Vybrat soubor s OpenWRT a dát upgrade. Verzi OpenWRT jsem dával „openwrt-ar71xx-tl-wr1043nd-v1-squashfs-factory“ ze stránek http://downloads.openwrt.org/backfire/10.03.1/ar71xx/Odkaz na externí web (z 21-Dec-2011 01:02).

Pro trošku pokročilé začátečníky by zde neměl být problém. Stačí pouze vybrat tu správnou verzi a do routeru ji nahrát. Po restartu nás už vítá nový firmware na bázi linuxu, ovšem s grafickým prostředím LUCI.

Pokud jste si nastavovali router s originálním firmwarem sami, zvládnete i tento. Je to ta samá klikačka a pro začátek plně stačí (net, WIFI, základní zabezpečení). Už zde jsme na tom lépe, než s originálním firmware.

První přihlášení nechce heslo, ihned si jej ale nastavte. Proklikejte a nastavte si vše potřebné (porty, WIFI, zabezpečení, IP adresy). To tu nebudu popisovat, jsou to základní věci.

Pokračujeme dále

Router TP-LINK TL-WR1043ND má jeden USB port, tak proč jej nevyužít? Jen nečekejte zázraky. Rychlost čtení z disku je cca 3,5 – 4 Mbps a zápisu pouhých 350 – 400 kbps (za 10 minut stáhnu 2,5 GB a nahraji 250 MB). Co se týká samby, tak funguje, ale film se občas seká. Navíc pokud na disk přistupuje více lidí naráz, je to téměř nepoužitelné.

Rozšíření o další funkce a jejich nastavení

Sice hodně věcí lze nastavit přes GUI LUCI, ale i tak bude potřeba abychom se připojili na router přes SSH. Osobně doporučuji program PuTTYOdkaz na externí web.

V LUCI nastavte System – Administration: Interface LAN, Allow SSH password authentication a Allow the root user to login with password.

V Putty vyplníme IP adresu routeru (výchozí 192.168.1.1, pokud jste si nezměnili), SSH a port 22. Login je stejný jako do LUCI.

putty

putty

Instalační příkazy:

Načtení dostupných instalačních balíčkůopkg update
Vyhledání určitého balíčku k instalaciopkg list | grep hledany_vyraz
Instalace balíčkůopkg install balicek

Doporučuji instalovat

opkg install mcMidnight commander - souborový manager
opkg install htoppřehled o vytížení routeru
opkg install joetextový editor (ukládání ctrl+k a pak d)
opkg install fdisksprávce disků

Pro práci s USB diskama bude potřeba:

opkg install kmod-usb2
opkg install kmod-usb-uhci
opkg install kmod-usb-core
opkg install kmod-usb-storage
opkg install kmod-fs-ext2
opkg install kmod-fs-ext3
opkg install kmod-fs-vfat
opkg install kmod-fs-ntfs
opkg install ntfs-3g

Mountování disku

Pokud do USB portu připojíme disk nebo flash disk, je potřeba ho namountovat (připojit).

Pustíme si mc a vytvoříme dle potřeby prázdnou složku. Já ji mám v /media/usb_disk. Sem nyní přimountujeme disk (místo, kam mountujeme, musí již existovat):
mount /dev/sda1 /media/usb_disk.

Takto by to mělo fungovat, pokud na disku je filesystem ext2, ext3. Já měl problémy s NTFS, takže jsem použil příkaz:
ntfs-3g /dev/sda1 /media/usb-disk -o rw,sync

Nyní když se podíváme do /media/usb_disk, uvidíme tam obsah externího disku. Po každém restartu routeru musíme mountovat disk znova. Proto dejte do souboru /etc/rc.local řádek ntfs-3g /dev/sda1 /media/externi_disk -o rw,sync

Případně přes LUCI přidáme v System – Startup - Local Startup následující:
# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.
ntfs-3g /dev/sda1 /media/externi_disk -o rw,sync
exit 0

Samba

Aby se dalo přistupovat na externí disk rovnou jako na síťový, bude potřeba nastavit Sambu. Nainstalujte potřebné balíčky.

opkg install samba3
luci-app-samba

V /etc/passwd přidejte na konec řádek newuser:*:1000:65534:newuser:/var:/bin/false, slovo newuser změňte za své, bude to login na sambu. Zde ale POZOR! Při přihlašování na sambu z PC je pak potřeba psát ten login velkými písmeny (tedy NEWUSER).

Poté nastavte uživateli newuser heslo smbpasswd newuser password

Failsafe mode

Píšu až na konec, snad nebudete potřebovat.

Pokud se stane, že si router kompletně zablokujeme (a že se mi to vážně stalo), dá se vše obnovit pomocí failsafe modu. Vypněte router, poté jej zapněte a až začne blikat kontrolka SYS, zmáčkněte a držte tlačítko QSS tak dlouho, až SYS začne blikat rychleji. Nyní se dá na router připojit, ale pouze přes telnet a na IP 192.168.1.1. Takže si nastavte IP adresu na PC třeba na 192.168.1.2 a v PuTTY nastavte telnet, port 23. Není požadován login ani heslo.

Smazání uživatelského nastavení a uvedení OpenWRT do defaultu se provede příkazem:
mtd -r erase rootfs_data 

Smazání celé  konfigurace (factory reset). Hodí se pro opravdu smazání zcela veškeré konfigurace. Třeba nastavení firewallu mi to smazalo až při tomto příkazu:
rm -r /overlay/*

UPDATE: protože použitelnost takovéhoto zapojení je tristní, pořídil jsem si NAS server, viz tento příspěvek.

UPDATE2: Upgrade zpět na originalní firmware funguje, ale musí se ořezat boot hlavička. Pomocí skriptu http://www.makovec.eu/pub/drivers/tplink/orez-firmware-tp-link.pl orezte boot hlavičku. Firmware http://www.tp-link.com/Resources/software/TL-WR1043ND_V1.0_120210.zip

UPDATE3: Zpřístupnit router z venku lze. Jděte do nastavení routeru: Network / Firewall / Traffic Rules. Níže máte k dispozici Open ports on router: zde vyplníte potřebné položky:

Name: např. HTTP WAN REMOTE
Protocol: TCP
External port: 80

UPDATE4: Při přechodu zpět na TP-Link firmware router bliká všemi kontrolkami a nejde s ním hnout ani tam ani zpět. Je nutností rozdělat router a napojit ho na konzoli přes seriový kabel (k tomu používám výhradně Windows XP, kabel od Nokie USB to Serial s 3,3V výstupem, TFTP server, PUTTY a mikropájku), jinak to totiž nejde, pač u TP-Link se samostatně TFTP server nepouští a tudíž není požnost flash data poslat jinou cestou do routru. Zde ale bacha, touto cestou lze i špatným postupem zrušit tzv. bootloader a pak už je s routrem ámen - psát řádně adresy, tak jak je psáno na wiki!. Přesný postup je zde: http://wiki.openwrt.org/toh/tp-link/tl-wr1043nd#serial

>> Líbil se Vám článek? Ohodnoťte mě <<
 

Kategorie