Linksys routerhackelés DD-WRT firmware-rel: 3. rész

2010-08-10 07:57:00 - Ninjaboy

A befejező részben lehetővé tesszük, hogy a torrent- és FTP-szolgáltatásokat távolról, az otthoni hálózaton kívülről is elérhessük, illetve vár ránk egy kis finomhangolás is.

Annak érdekében, hogy a DD-WRT-vel moddolt útválasztónkat távolról is könnyen elérhessük, első körben szükségünk lesz egy dinamikus DNS-szolgáltatóra, feltéve, hogy nincs fix IP-címünk. Ha nincs, akkor mindenképpen regisztráljunk egy könnyen megjegyezhető címet, hiszen soha nem tudhatjuk, hogy mikor változik meg az IP-címünk, ami elérhetetlenné teszi a szolgáltatást.


Számos ingyenes dinamikus DNS-szolgáltatók van, amelyek még több szolgáltatást kínálnak, mi továbbra is az ingyenes DynDNS.org vagy No-IP.com címeket ajánljuk, mert ezek évek óta jól bejáratott és kiválóan működő szolgáltatások. Nem mellékesen pedig megjegyeznénk, hogy az ingyenesség (legalábbis az a része, amire nekünk szükségünk van) mellett szól az is, hogy szinte minden router, amelyben van dinamikus DNS-szolgáltatástámogatás, az kompatibilis e két szolgáltató rendszerével, tehát ismeri és képes frissíteni az IP-címet mindenféle külső beavatkozás nélkül.


A Linksys WRT160NL és DD-WRT páros támogatja az általunk is használt DynDNS.org ingyenes dinamikus DNS-szolgáltatást


Adminisztrációs menü távoli elérése
Abból adódóan, hogy routerünk most már nemcsak egy egyszerű útválasztó feladatot lát el, hanem szerverként funkcionál, akkor is el kell elérjük, ha épp nem tartózkodunk a közelben, vagy nincs hozzáférésünk a helyi hálózathoz. Ekkor jön jól az adminisztrációs menü távoli elérésének bekapcsolása, ami biztonsági szempontból mindig kockázatokat rejt, de ha kellően erős felhasználónevet és jelszót használunk – plusz HTTPS-protokollt és egyedi portot –, akkor nincs okunk aggodalomra. A DD-WRT menüjében ajánlott a távoli elérésnél a Telnet-protokollt is engedélyezni, ugyanis akkor azokhoz a beállításokhoz és konfigurációkhoz is hozzáférünk, amelyeket ezen a felületen hajtunk végre. Tehát, ha szükséges, akkor távolról is újrakonfigurálhatjuk az FTP-t, a nyomtatószervert vagy akár a torrentklienst a Putty segítségével.


A megfelelő beállításokkal akkor is hozzáférhetünk a routerhez, ha nem vagyunk a helyi hálózaton, de fontos, hogy mindig válasszunk biztonságos jelszót!

PureFTPd-elérés távolról
Valójában az előző részben kissé előre is szaladtunk és engedélyeztük az FTP-elérést kívülről is, de erről konkrét említést nem tettünk. Éppen ezért ismételjük át a lépéseket (természetesen a konfiguráláshoz most is a Putty programot és Telnet-protokollt használjuk): miután hozzáadtuk a felhasználót és definiáltuk a hozzá tartozó jelszót, a külső elérést a következő paranccsal aktiválhatjuk a 21-es porton:
echo -e "pure-ftpd -E -b -B -S0.0.0.0,21 -lpuredb:/etc/pureftpd.pdbnsleep 5niptables -I INPUT -p tcp --dport 21 -j ACCEPT " > /etc/rc.pureftpd


Amennyiben nem a 21-es portot kívánjuk használni (mondjuk biztonsági okokból), akkor a „-S0.0.0.0,21” és „dport 21” kódrészben a 21-et cseréljük tetszőleges számra, ami nincs használatban. Amennyiben ezzel megvagyunk, indítsuk újra a PureFTPd szolgáltatást a következő paranccsal:
/bin/sh /mnt/etc/rc.pureftpd
Az FTP-szolgáltatás most már az internetről is elérhető, de ne feledjük, hogy biztonságunk érdekében használjunk erős felhasználónév- és jelszópárosokat (ennek beállításáról később még szó lesz).


A Telnet-felületen a pure-pw parancsot kiadva láthatóvá válik a PureFTPd jelszókezelőjének súgó részlege. Érdemes ezt a részt tanulmányozni, majd kísérletezgetni, mert az FTP-hez itt tudunk több felhasználót hozzárendelni. Például a cikk második részében mutatott „pure-pw useradd torrent -u 1 -g 1 -d /mnt/downloads” parancs a torrent nevű felhasználót rendeli a downloads mappához. Ennek mintájára a „useradd” paranccsal felvehetünk új felhasználót, akár más mappához is – amit előbb persze létre kell hozni és mountolni – és így tovább

A Transmission Daemon torrentkliens távoli elérése
Akárcsak a PureFTPd, a korábban installált Transmission Daemon torrentkliens WebUI felülete is elérhető kívülről, itt viszont több választásunk is van. Mielőtt nekikezdünk, két fontos beállításról is gondoskodnunk kell. Amennyiben szeretnénk a torrentkliens elérési portját megváltoztatni, azt a „--dport 9091” kódrész átírásával tehetjük meg.
Amennyiben jelszavas védelmet állítunk be, az nemcsak az internet felől érkező kérésekre lesz érvényes, hanem a helyi hálózat felől érkezőkre is. A felhasználónév–jelszó páros definiálása a lejjebb megadott kódrészletben történik, méghozzá a nagybetűvel kiemelt „USER” és „PASS” szavak kicserélésével (gyk.: USER=felhasználónév; PASS=jelszó). Csak egy felhasználónév–jelszó páros adható meg, tehát minden felhasználó ugyanazzal a felhasználónévvel és jelszóval tud majd bejelentkezni, azaz érdemes alaposan elgondolkodni azon, kit engedünk majd be rendszerünkbe.
Ha csak jelszavas védelmet szeretnénk bekapcsolni, de nem akarjuk, hogy a torrentkliens elérhető legyen az internetről, hanem csak a helyi hálózatról, akkor a következő négy parancsot gépeljük be:
echo -e "transmission-daemon -a *.*.*.* -t -u USER -v PASSnsleep 5niptables -D INPUT -p tcp --dport 9091 -j ACCEPT" > /mnt/etc/rc.transmission
killall transmission-daemon
sleep 6
/bin/sh /etc/rc.transmission

Abban az esetben, ha az internetről is el szeretnénk érni a torrentek irányítását, és hitelesítést (felhasználónév–jelszó párost) is szeretnénk, akkor a következő négy parancsot használjuk:
echo -e "transmission-daemon -a *.*.*.* -t -u USER -v PASSnsleep 5niptables -I INPUT -p tcp --dport 9091 -j ACCEPT" > /mnt/etc/rc.transmission
killall transmission-daemon
sleep 6
/bin/sh /etc/rc.transmission

Abban az esetben, ha az internetről is el szeretnénk érni a torrentek vezérlését, de mindezt hitelesítés nélkül, akkor ezeket a parancsokat használjuk (figyelem, ez fokozott biztonsági kockázattal jár!):
echo -e "transmission-daemon -T -a *.*.*.*nsleep 5niptables -I INPUT -p tcp --dport 9091 -j ACCEPT" > /mnt/etc/rc.transmission
killall transmission-daemon
sleep 6
/bin/sh /etc/rc.transmission

Nyugtával dicsérd a napot….
A torrentezés nemcsak tetemes sávszélességet és processzoridőt igényel, de a sok fel- és letöltési szál alaposan megterheli a hálózati kapcsolatot, ezért mindenképpen tenni kell valamit annak érdekében, hogy a hálózati forgalom ne duguljon be. A routerben található QoS-funkciót pontosan erre találták ki, de jobban járunk, ha a fontosabb és leggyakrabban használt (HTTP, FTP, Telnet, Pop3, SMTP és BitTorrent) protokollokat magunk konfiguráljuk.


A QoS egyik lehetséges konfigurációja. Érdemes próbálgatni a különböző beállításokat, ha nagyon lelassulna az internetkapcsolat!


Szkriptelve egyszerűbb!
A cikk előző részében azt írtam, hogy a router minden újraindítása után „kézzel” újra fel kell mountolni a korábban használt merevlemezt és mappákat, majd elindítani a szolgáltatásokat. A DD-WRT adminisztrációs menüjében a Commands menüpont alatt lehetőségünk van egyedi indító (startup) szkript írására, ami minden indításkor automatikusan lefut, ezzel elkerülhető az újraindítás utáni kódgépelés. Ennek a szkriptnek ugyanazt kell tartalmaznia, amit egyébként kézzel írnánk be a Telnet-felületen. Természetesen a jelen cikkben tárgyalt távoli torrent- és FTP-elérés kiválasztott kódrészleteit is érdemes belevenni ebbe az indítószkriptbe, hogy automatikusan aktiválódjanak ezek a szolgáltatások is!



Végül pedig meg szeretnénk említeni, hogy a DD-WRT-hez és a WRT160NL-hez kapcsolódó lelkes közösség időközben elkészítette a wrt160nl.org honlap magyar oldalait, ahol nem csupán a cikkben leírtak találhatók meg, hanem egy folyamatosan frissülő szkript is (köszönet érte „tema”-nak), ami nagyban megkönnyíti és automatizálja a konfigurálást. Akinek a DD-WRT felkeltette az érdeklődését, és a későbbiekben is szeretné figyelemmel kísérni a frissítésekkel és változásokkal kapcsolatos történéseket, az ezen a honlapon megteheti.

Kommentek száma: 5Címkék: router, nas, linksys, cisco, storage router, firmware, dd-wrt, qos

Webring:

Kommentek

Hozzászóláshoz be kell jelentkezned!

(0/10)

duhr (2011-04-15 20:44:16)
...válasz MaciLaci021 4. kommentre:
Hi.
Mért lehet ez a hiba?

ERROR: File not found: //usr/local/lib/ipkg/lists/whiterussian
You probably want to run `ipkg update'
ERROR: File not found: //usr/local/lib/ipkg/lists/non-free
You probably want to run `ipkg update'
ERROR: File not found: //usr/local/lib/ipkg/lists/backports
You probably want to run `ipkg update'
/bin/ipkg: line 1184: sort: not found
ERROR: File not found: //usr/local/lib/ipkg/lists/whiterussian
You probably want to run `ipkg update'
ERROR: File not found: //usr/local/lib/ipkg/lists/non-free
You probably want to run `ipkg update'
ERROR: File not found: //usr/local/lib/ipkg/lists/backports
You probably want to run `ipkg update'
ipkg_get_install: ERROR: Cannot find package transmission-demon in //usr/local/lib/ipkg/lists
ipkg_get_install: Check the spelling and maybe run `ipkg update'.

Ezt kaptam az elsö telepitési kisérletemre konzolon.


















MaciLaci021, kábé 1 perc google után itt a válasz:

http://www.dd-wrt.com/wiki/index.php/Ipkg#What_if_your_jffs_partition_is_full_.28routers_with_NO_JFFS_space_avail.29

5

(0/10)

MaciLaci021 (2011-04-13 19:10:19)
Hi.
Mért lehet ez a hiba?

ERROR: File not found: //usr/local/lib/ipkg/lists/whiterussian
You probably want to run `ipkg update'
ERROR: File not found: //usr/local/lib/ipkg/lists/non-free
You probably want to run `ipkg update'
ERROR: File not found: //usr/local/lib/ipkg/lists/backports
You probably want to run `ipkg update'
/bin/ipkg: line 1184: sort: not found
ERROR: File not found: //usr/local/lib/ipkg/lists/whiterussian
You probably want to run `ipkg update'
ERROR: File not found: //usr/local/lib/ipkg/lists/non-free
You probably want to run `ipkg update'
ERROR: File not found: //usr/local/lib/ipkg/lists/backports
You probably want to run `ipkg update'
ipkg_get_install: ERROR: Cannot find package transmission-demon in //usr/local/lib/ipkg/lists
ipkg_get_install: Check the spelling and maybe run `ipkg update'.

Ezt kaptam az elsö telepitési kisérletemre konzolon.


















4

(0/10)

Gyulumulu (2010-08-10 22:57:02)
A cikk írójához intézett kérdésem az, hogy ha feltöltöm az új, külső firmware-t, van lehetőség visszaállítani a gyárit... mintha mi se történt volna?
3

(0/10)

Gyulumulu (2010-08-10 22:53:28)
...válasz kozapeti 1. kommentre:
"Ekkor jön jól az adminisztrációs menü távoli elérésének bekapcsolása, ami biztonsági szempontból mindig kockázatokat rejt, de ha kellően erős felhasználónevet és jelszót használunk – plusz HTTPS-protokollt és egyedi portot –, akkor nincs okunk aggodalomra. A DD-WRT menüjében ajánlott a távoli elérésnél a Telnet-protokollt is engedélyezni, ugyanis akkor azokhoz a beállításokhoz és konfigurációkhoz is hozzáférünk, amelyeket ezen a felületen hajtunk végre. Tehát, ha szükséges, akkor távolról is újrakonfigurálhatjuk az FTP-t, a nyomtatószervert vagy akár a torrentklienst a Putty segítségével. ..."

Egy nyílt hálózatra csatlakoztatott kiszolgálón, amin FTP és Telnet fut felesleges HTTPS-t és erős jelszót használni, akár a kezdőlapra is kiírhatnánk, hogy "Kedves betörő, kérlek kíméld az ablakot, a kulcs a lábtörlő alatt!"

FTP és Telnet használatára buzdítani valakit FELELŐTLENSÉG!!! (gyk.: SSH)



kozapeti, ezt részleteznéd? Úgy érted, hogy hiábavaló lenne az említett szolgáltatásokhoz bonyolult jelszavak megválasztása, mivel...?
A Telnet és az FTP komoly biztonsági kockázatot jelent? Ezen leírás alapján van ötleted, hogy e két szolgáltatás megtartásával hogyan lehet az általad felvetett kockázatot minimálisra csökkenteni? Köszi!
2

(0/10)

kozapeti (2010-08-10 14:53:19)
"Ekkor jön jól az adminisztrációs menü távoli elérésének bekapcsolása, ami biztonsági szempontból mindig kockázatokat rejt, de ha kellően erős felhasználónevet és jelszót használunk – plusz HTTPS-protokollt és egyedi portot –, akkor nincs okunk aggodalomra. A DD-WRT menüjében ajánlott a távoli elérésnél a Telnet-protokollt is engedélyezni, ugyanis akkor azokhoz a beállításokhoz és konfigurációkhoz is hozzáférünk, amelyeket ezen a felületen hajtunk végre. Tehát, ha szükséges, akkor távolról is újrakonfigurálhatjuk az FTP-t, a nyomtatószervert vagy akár a torrentklienst a Putty segítségével. ..."

Egy nyílt hálózatra csatlakoztatott kiszolgálón, amin FTP és Telnet fut felesleges HTTPS-t és erős jelszót használni, akár a kezdőlapra is kiírhatnánk, hogy "Kedves betörő, kérlek kíméld az ablakot, a kulcs a lábtörlő alatt!"

FTP és Telnet használatára buzdítani valakit FELELŐTLENSÉG!!! (gyk.: SSH)



1