Koduleht » kuidas » Vabastage veelgi rohkem energiat oma kodus ruuterist DD-WRT Mod-Kit'iga

    Vabastage veelgi rohkem energiat oma kodus ruuterist DD-WRT Mod-Kit'iga


    Oleme juba näidanud, kuidas modifitseerida oma ruuterit DD-WRT alternatiivse püsivara abil, et parandada jõudlust, ja täna näitame teile, kuidas seda veelgi DD-WRT Mod-Kit'iga kasutada.

    Kui te pole veel seda teinud, siis veenduge ja tutvuge kahe eelmise artikliga seerias:

    • Pöörake oma marsruuter DD-WRT-ga supervõimsaks ruuteriks
    • Kuidas suurendada oma Wi-Fi võrgusignaali ja suurendada DD-WRT-ga valikut

    Eeldades, et olete neid teemasid tuttav, lugege seda edasi. Pidage meeles, et see juhend on natuke tehnilisem ja algajatele peaks marsruuteri modifitseerimisel olema ettevaatlik.

    Ülevaade

    See juhend annab samm-sammult ülevaate sellest, kuidas luua oma DD-WRT püsivara modifikatsioonide ja täiendustega, kasutades „püsivara muutmise komplekti“.

    Püsivara muutmise komplekt võimaldab püsivara muutmist teha ilma selle allikast kompileerimiseta. Selliste muudatuste tegemine pakutavate skriptide abil muutub lihtsaks mõnede failide allalaadimiseks, asendamiseks ja kustutamiseks.

    Kõige olulisem põhjus selle meetodi kasutamiseks on see, et viimasel ajal on DD-WRT toetus Openwrt IPKG pakettidele nihkunud ruuterite poole, millel on kõvakettad (USB kaudu), mis muudab mod-kiti ainsaks järjekindlalt toimivaks viisiks IPKG pakettide edukaks installimiseks juhtudel, kui HD pole saadaval. Lisaks sellele on selle meetodi eeliseks see, et vabastate teid JFFS-i sõltuvusest pakettide installimisest, mis ainult 4MB flash-ga marsruuteritele on tõeline probleem.

    Pilt avalikustamisest

    Eesmärgid

    Kuigi selle protseduuri juhised on üksikasjalikult DD-WRTi vikis ja arendaja saidil, püüame muuta selle juhendi koopia- ja kleepimisprotseduuriks, mida igaüks saab kasutada järgmiste eesmärkide saavutamiseks:

    • Paigaldage knockd-pakett ja selle sõltuvused.
    • Paigaldage ssmtp pakett NVRAM-i põhiste genereeritud konfiguratsioonidega.
      • Valikuliselt toel TLS smtp (a.k.a Gmaili tugi).

    Kui olete selle protseduuri järginud, peaks olema asjakohane seda kohandada teiste pakendite paigaldamiseks.

    Hoiatus: Märgistage kergelt… pidage meeles, et modifikatsioonikomplekti ebaõige kasutamine võib jätta teid ruuteriga, mis vajab telliskivistamist (nagu omakorda see kasutu telliskiviks). Kuid kui sa oled tõeline geek, siis tõenäoliselt nõustute ideoloogiaga, et see, kes suudab asja hävitada, kontrollib asja ja ainult tõelised geekid seda teevad

    Eeltingimused

    1. Selle protseduuri abil saab telliskivi marsruuterit nagu marsruuterit kasutamiskõlbmatu, me ei võta vastutust kahjude eest, mis võivad tuleneda allpool toodud protseduuride kasutamisest otseselt või muul viisil.
    2. See protseduur viidi läbi Debianil põhinevatel süsteemidel (Lenny, Squeeze ja Mint) ja alltoodud juhised eeldavad, et kasutate ka üht.
    3. Seda protseduuri soovitatakse kasutada ainult inimestele, kellel on DD-WRT-ga ruuteri vilkumise kogemus, kusjuures kõik eeldused, hoiatused ja piirangud kehtivad nende riistvara seadistamisel. hea koht alustamiseks oleks meie kodukorruti oma DD-WRT juhendiga supervõimsaks ruuteriks.
    4. Teie ruuter peab toetama vähemalt DD-WRT-i „mini” versiooni.
    5. See protseduur loodi ja testiti Linksys WRT54GS / L ruuteritel, kui te kasutate teiste müüjate marsruutereid, võib teie läbisõit olla väga.

    Seadistamine

    Vajalike pakettide installimine

    Püsivara muutmise komplektil on mõned kompileerimise ja töötamise sõltuvused. Selleks, et neid kõiki korraga installida / uuendada, väljastage see käsk terminalis:

    sudo aptitude install gcc g ++ binutils plaaster bzip2 flex bison make gettext unzip zlib1g-dev libc6 subversion

    Laadige alla mod-kit

    Loo alamkaust ja hankige komplekt ametlikust SVN-ist:

    mkdir firmware_mod_kit
    cd firmware_mod_kit
    svn checkout http://firmware-mod-kit.googlecode.com/svn/trunk/ firmware-mod-kit-read-only
    cd püsivara-mod-kit-read-only / trunk /

    Laadige alla püsivara

    Esimene asi on kaaluda, millist versiooni soovite kasutada?
    Pisipilt on: kahtluse korral kasutage “mini”. Seda seetõttu, et kui teie ruuter toetab vähemalt „mini” versiooni, annab see kõikidele kõige sagedamini kasutatavatele funktsioonidele ilma igasuguse õmblusteta. seega jätab nii protseduuride ruumi kui ka mõne JFFSi ruumi teistele kasutusviisidele enamikul juhtudel.

    Kui olete versioonist otsustanud, on soovitatav kasutada olemasolevat püsivara viimast versiooni, kuna neil on pigem palju veaparandusi kui nende „stabiilsed” kolleegid.
    Selle kirjutamise ajal oli viimane “03-17-11-r16454” ja seda versiooni kasutatakse järgmistes käskudes:.

    wget http://www.dd-wrt.com/dd-wrtv2/downloads/others/eko/BrainSlayer-V24-preSP2/2011/03-17-11-r16454/broadcom/dd-wrt.v24_mini_generic.bin

    Kasutatava versiooni jälgimise hõlbustamiseks nimetage allalaaditud fail ümber oma versiooninumbriks:

    mv dd-wrt.v24_mini_generic.bin dd-wrt.v24_mini_generic-03-17-11-r16454.bin

    See on muidugi vabatahtlik, kuid alltoodud käsud eeldavad, et olete faili ümber nimetanud.

    Püsivara väljavõtmine

    Et püsivara sees olevaid faile muuta, peame selle sisu ajutisesse kataloogi välja võtma.
    Selle käsu süntaks on:
    ./extract_firmware.sh FIRMWARE_IMAGE WORKING_DIRECTORY
    Meie puhul tõlgitakse see järgmiselt:

    ./extract_firmware.sh dd-wrt.v24_mini_generic-03-17-11-r16454.bin ./working_dir_mini1

    Märkus: selle käsu esmakordsel käivitamisel ehitab see teie süsteemi mod-kit tööriistad. see juhtub ainult üks kord ja võib võtta veidi aega ... nii et ole kannatlik…

    Pakettide installimine

    Nüüd, kui firmware on välja võetud, saame paketid sellele installida.
    Üldiselt on protseduur paketi ja selle sõltuvuste allalaadimine ipk faili kujul openWRT hoidlast. Pärast allalaadimist installige need ekstraheeritud püsivara, kasutades antud skripti.

    Koputuspakett

    Üksikasjalikud juhised Knockdi konfigureerimise ja kasutamise kohta on üksikasjalikult kirjeldatud tulevases artiklis, nii et võite selle sammu nüüd vahele jätta või teha seda tuleviku ettevalmistamiseks, kuna Knockd ei võta ikkagi palju ruumi.

    Knockd on deemon, mis kuulab järjestuste sidekihi sündmusi ja seejärel toimib neile.
    See tähendab, et sa saad seadet kasutada deemonit isegi mitte sadamates kuulata (portide skaneerimine neid ei näe avatud kujul) ja teeb selle ikka veel midagi vajalikuks, ühest käsust kuni lõpuni täielikku skripti. Seda tehnikat kasutades võite käivitada serveri mis tahes operatsiooni, mida te vajate kaugjuhtimisega (Interneti kaudu), ilma et teie koduvõrk oleks avatud.

    Knockdil on ainult üks loetletud sõltuvus, seega laadige alla pakett ja selle sõltuvus, väljastades:

    wget http://downloads.openwrt.org/backports/rc5/knockd_0.5-1_mipsel.ipk
    wget http://downloads.openwrt.org/whiterussian/packages/libpcap_0.9.4-1_mipsel.ipk

    Paigaldage "knock daemon" (knockd) ipk firmware:

    ./ipkg_install.sh knockd_0.5-1_mipsel.ipk ./working_dir_mini1/

    Paigaldage „pakettide püüdmine” (libpcap) ipk püsivara:

    ./ipkg_install.sh libpcap_0.9.4-1_mipsel.ipk ./working_dir_mini1/

    Kuna “knockd” -i saab kasutada alternatiivse konfiguratsioonifailiga (kuidas seda selgitatakse tulevases artiklis), ei ole vaja mingit muud toimingut teostada ja võite püsivara ehituse sektsiooni vahele jätta, kui selle kõik soovid installida.

    SSMTP pakett

    SSMTP-pakett võimaldab teie ruuteril saata e-kirju just nagu me näitasime, kuidas häälestada e-posti teateid Linuxis Gmaili või SMTP abil serveritele. Me lubasime teile sel ajal, et näitame, kuidas seda DD-WRT-le konfigureerida ja nüüd hakkame andma.
    See on peamiselt kasulik juhul, kui ruuteril luuakse skripte, mida soovite e-posti teel tagasisidet saada nende toimimise kohta.

    See paketi seadistamine on natuke keerulisem, kui see on tavaliste Linuxi süsteemide puhul, kuna sisseehitatud süsteem on piiratud, nii et võtke sügav hingamine ... valmis?…. lähme… :)

    Laadige pakett alla:

    wget http://downloads.openwrt.org/backports/rc5/ssmtp_2.61-1_mipsel.ipk

    Paigaldage „ssmtp” ipk püsivara:

    ./ipkg_install.sh ssmtp_2.61-1_mipsel.ipk ./working_dir_mini1/

    TLS-i tugi (valikuline)
    SSMTP ei loeta sõltuvuseks ühtegi teist paketti, aga kui soovite kasutada smtp-lüüsi, mis nõuab TLS-i autentimist (s.t.. Gmail), peate installima ka openSSL pakage.
    Märge: On suur puudus hiljem seda teha märkimisväärselt vähendatud ruumi JFFS ruuteril hiljem. See tähendab, et openSSL pakett võtab umbes 4 000 MB ruumi 4MB-st (tavalise mitte-mega-toega ruuteri jaoks), ühendi selle JFFSi üldkuluga ja avastad, et teie vasakul on, kuid väärtuslik hulk plokke tasuta JFFSi ruum (umbes 60KB WRT54GL-l).

    Kuna pole veel TLS-i, mis vajavad sealt smtp-servereid (tavaliselt teie Interneti-teenuse pakkujaid), siis soovitan aega mõelda, kui teil on tõesti vaja kasutada lüüsi, mis vajab lüüsi.

    Kui olete otsustanud TLS-i toetuse lubada, hoolimata sellest, et see on ebasoodsast olukorrast, laadige alla OpenSSL-pakett:

    wget http://downloads.openwrt.org/whiterussian/packages/libopenssl_0.9.8d-1_mipsel.ipk

    Installi programmile „openSSL” (libopenssl) ipk:

    ./ipkg_install.sh libopenssl_0.9.8d-1_mipsel.ipk ./working_dir_mini1/

    Konfiguratsioonid
    SSMTP-paketil on piirang, et seda ei ole võimalik kasutada alternatiivse konfiguratsioonifailiga.
    Kuna püsivara on ruuteril ainult lugemiseks mõeldud, tähendab see seda, et kasti väljalülitamisel saame seadistada ainult konfiguratsiooni püsivara.
    Kuid mis siis, kui me ei taha läbida kõiki püsivara muutmise samme, lihtsalt selleks, et muuta e-posti seadeid? (näiteks parooli muutmine).

    Selleks jõudsid nii Jeremy (püsivara mod-kiti looja) kui ka mina ise järeldusele (sõltumatult, kui võin alandlikult lisada), et ainus mõistlik viis seda teha oleks:

    1. Tehke konfiguratsioonifailide asukoht, mille ssmtp pakett näitab ainult kirjutuskaitstavasse asukohta, jne, osuta tmp kataloogile, mis on kirjutamise ajal võimalik.
    2. Looge skript, mis genereerib käivitamisel dünaamiliselt NVRAMi muutujatest loobunud konfiguratsioonid.

    Selle saavutamiseks on vaja mõningaid täiendavaid samme…

    Sünkroonige ssmtp konfiguratsioonikataloog
    Nagu eespool selgitatud, peame tegema selle / etc / ssmtp asukoht marsruuteril, osutage / tmp kataloog on ainus kirjutuskoht, mis meil on ruuteril töötamise ajal. Selleks kustutage ipk installeri loodud ssmtp kataloog:

    rm -rf ./working_dir_mini1/rootfs/etc/ssmtp/

    Looge uus sümboolne link, mis suunab ruuteri juurfailisüsteemi / etc / ssmtp, et osutada absoluutseks teeks / tmp / etc / ssmtp:

    ln -s / tmp / etc / ssmtp / ./working_dir_mini1/rootfs/etc/ssmtp

    Märge: Kuigi see näib praegu ebaloogiline, sest me osutame paketi konfiguratsiooniraamatusse asukohta väljaspool püsivara muutmise komplekti töökausta, kinnitan teile, et see näeb ruuterite vaatenurgast vaatamise ajal täiesti trahvi.

    Algskript
    Kuigi seda skripti ei ole võimalik püsivara sisse süstida ja seda hiljem käivitada käivitamiskriptina, tunnen, et see on asjakohane, kui see siin alles panna, kui see on ainult näide tulevikus kasutamiseks.
    Algselt lõi Jeremy skripti, mis oli kohandatud kellegi soovile, hiljem korrigeerisin seda ja suurendasin seda, et see oleks paremini kooskõlas DD-WRT ja syslogi aruandlusega.

    Loo uus init (käivitus) skript:

    vi ./working_dir_mini1/rootfs/etc/init.d/S80ssmtp

    Märkus: Te võite kasutada teist toimetajat, kasutan vi, sest see on kooskõlas ruuteril kättesaadavate andmetega…
    Tee selle sisu:

    #! / bin / sh
    #
    # pealkiri: ssmtp_nvram.sh
    # autor: Jeremy Collake ja Aviad Raviv
    # sait: http://www.bitsum.com, http://howtogeek.com
    #
    # skript, mis võimaldab konfigureerida faili nvram vars.
    # töötab kõigi konfigureerimisfailide puhul, mis kasutavad
    # var = väärtustüüpi paarid.
    #
    # kasutab nvrami muutujate eesliite.
    #
    # nt.
    # ssmtp_hostname = midagi
    # tõlkeb ssmtp.conf
    # hostname = midagi
    #
    logger_func ()

    logger -s -p local0.notice -t SSMTP_init $ 1

    logger_func "########### Alustas SSMTP init käivitamist ###########"
    logger_func "etc kataloogi loomine / tmp"
    [! -d / etc / ssmtp /] & & mkdir -p / tmp / etc / ssmtp /
    CONFIG_FILE = / etc / ssmtp / ssmtp.conf
    NVRAM_PREFIX = ssmtp_
    PACKAGE_NAME = "echo $ NVRAM_PREFIX | sed" s / _ / / "

    logger_func "$ CONFIG_FILE loomine pakendile $ PACKAGE_NAME"
    #echo $ 0: $ CONFIG_FILE genereerimine paketi $ PACKAGE_NAME jaoks
    kaja "#! / bin / sh"> $ CONFIG_FILE
    kaja "#" >> $ CONFIG_FILE
    echo "# auto genereeritud nvrami järgi $ 0" >> $ CONFIG_FILE
    kaja "#" >> $ CONFIG_FILE

    kui [-z "'nvram show | grep ssmtp'"]
    siis
    logger_func "Näib, et te pole konfigureerimisfaili genereerimiseks vajalikke NVRAMi muutujaid seadnud"
    logger_func "** Mõtle **, kasutades neid käske teie käivitusskriptis:"
    logger_func "nvram set [email protected]"
    logger_func "nvram set ssmtp_mailhub = smtp.gmail.com: 587"
    logger_func "nvram set [email protected]"
    logger_func "nvram set ssmtp_UseSTARTTLS = YES"
    logger_func "nvram set ssmtp_AuthUser = kasutajanimi"
    logger_func "nvram set ssmtp_AuthPass = parool"
    logger_func "nvram set ssmtp_FromLineOverride = YES"
    logger_func "loob NVRAM-i muutujad ja käivitab uuesti init-skripti või taaskäivitab, et seaded mõjutaksid."
    väljumine 0
    fi

    ############################################################ #########
    #
    # peatsilm
    #
    SED_COMMAND = "s / $ NVRAM_PREFIX / /"
    CONFIG_VARS = "nvram show | grep $ NVRAM_PREFIX | sed" $ SED_COMMAND ""
    i jaoks $ CONFIG_VARS; teha
    echo $ i >> $ CONFIG_FILE
    tehtud

    ############################################################ #########
    #
    # Tervisekontroll
    #
    kui [! -f "$ CONFIG_FILE"]; siis
    # echo "$ 0: ERROR - ei suutnud luua $ CONFIG_FILE. Võib-olla puudub sümbol / etc / XXXX -> / tmp / etc / XXXX?"
    logger_func "ERROR - ei suutnud luua $ CONFIG_FILE. Võib-olla ei ole sümbolit / etc / XXXX -> / tmp / etc / XXXX?"
    fi
    logger_func "########### Lõpetas SSMTP init käivitamise ###########"

    Tee see käivitatavaks:

    chmod + x ./working_dir_mini1/rootfs/etc/init.d/S80ssmtp

    Pange tähele, et skriptis on NVRAMi ootavad muutujad, meie kohus on anda neile midagi tööd teha pärast seda, kui oleme oma modifitseeritud püsivara ruuterisse installinud.

    Ehita modifitseeritud püsivara

    Nüüd, kui kõik on paigas, on aeg modifitseeritud püsivara uuesti pakendada tihendatud binaarile, mida saame ruuterile flashida.
    Skriptide “build.sh” süntaks on:
    ./build_firmware.sh OUTPUT_DIR WORKING_DIRECTORY

    Selleks kasutame kaasasolevat skripti, seega väljastage:

    ./build_firmware.sh output_mini1 ./working_dir_mini1/

    Kui „ehitamise” toiming on lõppenud, on „väljund” kataloogis kasutusel mitu püsivara pilti.

    Nüüd võite oma ruuterile faili "custom_image_00001-generic.bin" flashida, nagu tavaliselt DD-WRT püsivara.

    Märge: Ärge unustage taastada tehase vaikeseaded enne püsivara välku, selle ajal ja kohe pärast seda.

    Välklambid

    Kuna tegime SSMTP-paketi otsima NVRAM-i muutujaid, et genereerida ssmtp-i konfiguratsioonifail, peame nüüd esitama selle puuduva teabe.
    Selle saavutamiseks kasutame funktsiooni web-GUI “Run command”.

    Minge veebi-GUI-le -> „haldamine” -> „käsud” -> kleebi tekstikasti:

    nvram komplekt [email protected]
    nvram set ssmtp_mailhub = smtp.gmail.com: 587
    nvram komplekt [email protected]
    nvram set ssmtp_UseSTARTTLS = JAH
    nvram set ssmtp_AuthUser = teie-gmail-user-name (ilma @ gmail.com)
    nvram set ssmtp_AuthPass = you-gmail-parool
    nvram set ssmtp_FromLineOverride = YES
    nvram toime

    Asendage tekst võrdse (=) märgi järel oma tegeliku teabega ning seejärel klõpsake käsku „Käivita käsud”.
    Märge: kui teie tavalise, mitte TLS-i kasutava smtp-serveri kasutamine on 587 asemel 25.

    Nüüd, kui SSMTP teave on kasutamiseks valmis, peate algatama init-skripti. Nii saate ruuteri taaskäivitada, või kleepige see tekstikasti „käsud“:

    /etc/init.d/S80ssmtp

    Seejärel vajuta uuesti käsku „Käivita käsud”.
    Selle käsu väljund peaks välja nägema:

    Testige, kas saate saata e-posti
    Laadige see uuesti "käsud" tekstikasti järgmisesse käsusse oma e-posti aadressiga:

    echo "katseklaaside saatmine e-posti teel 123 qwe" | ssmtp -vvv [email protected]

    Seejärel vajuta uuesti käsku „Käivita käsud”.
    Kuna me kasutasime -vvv võimalust lisavärsuse jaoks, peaks selle käsu väljund välja nägema:

    Kui kõik läks hästi, peaksite saama mõne sekundi jooksul testi e-kirja.

    Loodame, et saate seda teavet kasutada, et suruda oma kodus ruuteri piirid veelgi kaugemale, kui sa arvasid, et see on võimalik, ja sa nüüd tõesti oma kodu marsruuterit ja DD-WRT-d ...


    Linux laiendab elu, Linux laiendab teadvust ... Linux on pakettreiside jaoks väga oluline