Har du noen gang ønsket å ha den spesielle "sovesalbanken" med ruteren din, slik at den bare "åpner døren" når den hemmelige bankingen er blitt gjenkjent? How-To Geek forklarer hvordan du installerer Knock-demonen på DD-WRT.
Bilde av Bfick og Aviad Raviv
Hvis du ikke allerede har gjort det, må du være sikker og sjekke ut tidligere artikler i serien:
- Gjør hjemme-ruteren din til en superdrevet ruter med DD-WRT
- Slik installerer du ekstra programvare på din hjemme-router (DD-WRT)
- Slik fjerner du annonser med Pixelserv på DD-WRT
Forutsatt at du er kjent med disse emnene, fortsett å lese. Husk at denne guiden er litt mer teknisk, og nybegynnere bør være forsiktige når de modrer ruteren.
Oversikt
Tradisjonelt sett, for å kunne kommunisere med en enhet / tjeneste, må man starte en full nettverkstilkobling med den. Imidlertid avslører det som kalles i sikkerhetsalderen en angrepsoverflate. Knock-demonen er en slags a nettverkssniffer som kan reagere når en forhåndskonfigurert sekvens observeres. Som en forbindelse trenger ikke å opprettes for at banke-demon kan gjenkjenne en konfigurert sekvens, reduseres angrepsoverflaten samtidig som ønsket funksjonalitet opprettholdes. På en måte vil vi forutsette ruteren med en ønsket “ to biter ”Svar (i motsetning til stakkars Roger ...).
I denne artikkelen vil vi:
- Vis hvordan du bruker Knockd til å ha ruteren Wake-On-Lan en datamaskin på det lokale nettverket.
- Vis hvordan du utløser Knock-sekvensen fra en Android-applikasjon , samt en datamaskin.
Merk: Selv om installasjonsinstruksjonene ikke lenger er relevante, kan du se filmserien Jeg har opprettet "veien tilbake når" for å se hele oversikten av å konfigurere til banking. (Bare unnskyld den rå presentasjonen).
Sikkerhetsmessige implikasjoner
Diskusjonen om “ hvor sikker er Knockd ?”, er lang og datoer tilbake mange tusenår (i internettår) men bunnlinjen er dette:
Knock er et lag av sikkerhet ved uklarhet, som bare skal brukes til forbedre andre måter som kryptering, og bør ikke brukes alene, som et sikkerhetsmål.
Forutsetninger, antakelser og anbefalinger
- Det antas at du har en Opkg-aktivert DD-WRT-ruter .
- Noe tålmodighet da dette kan ta en stund å sette opp.
- Det anbefales på det sterkeste at du skaffer deg en DDNS-konto for din eksterne (vanligvis dynamiske) IP.
La oss få sprekker
Installasjon og grunnleggende konfigurasjon
Installer Knock-demonen ved å åpne en terminal til ruteren og utstede:
opkg oppdatering; opkg installere knockd
Nå som Knockd er installert, må vi konfigurere utløsende sekvenser og kommandoer som vil bli utført når de er utløst. For å gjøre dette, åpne "knockd.conf" -filen i et tekstredigeringsprogram. På ruteren vil dette være:
vi /opt/etc/knockd.conf
Få innholdet til å se ut som:
[options]
loggfil = /var/log/knockd.log
BrukSyslog
[wakelaptop]
sekvens = 56,56,56,43,43,43,1443,1443,1443
seq_timeout = 30
kommando = / usr / sbin / wol aa: bb: cc: dd: ee: 22 -i $ (nvram få lan_ipaddr | klipp -d. -f 1,2,3) .255
tcpflags = synkronisering
La oss forklare det ovennevnte:
- Segmentet "opsjoner" lar en konfigurere globale parametere for demonen. I dette eksemplet har vi bedt demonen om å holde en logg både i sysloggen og i en fil . Selv om det ikke skader å bruke begge alternativene sammen, bør du vurdere å beholde bare en av dem.
-
Segmentet "wakelaptop" er et eksempel på en sekvens som vil utløse WOL-kommandoen til LAN for en datamaskin med MAC-adressen til aa: bb: cc: dd: ee: 22.
Merk: Kommandoen ovenfor forutsetter standard oppførsel av å ha et klasse C subnett.
For å legge til flere sekvenser, kopier og lim inn "wakelaptop" -segmentet og juster med nye parametere og / eller kommandoer som skal utføres av ruteren.
Oppstart
For å få ruteren til å påkalle demonen ved oppstart, legg under til "geek-init" -skriptet fra OPKG guide :
knockd -d -c /opt/etc/knockd.conf -i "$ (nvram get wan_ifname)"
Dette starter Knock-demonen på "WAN" -grensesnittet på ruteren din, slik at den vil lytte til pakker fra internett.
Bank på fra Android
I en alder av bærbarhet er det nesten viktig å "ha en app for det" ... så
StavFX
opprettet en for oppgaven :)
Denne appen utfører banke-sekvensene rett fra Android-enheten din, og den støtter opprette widgets på startskjermene.
- Installer Knocker-applikasjon fra Android-markedet (vær også snill og gi den en god vurdering).
-
Når den er installert på enheten, starter du den. Du bør bli møtt av noe sånt som:
-
Du kan trykke lenge på eksempelikonet for å redigere det, eller klikke "meny" for å legge til en ny oppføring. En ny oppføring vil se ut:
-
Legg til linjer og fyll informasjonen som kreves for banking. For eksempel WOL-konfigurasjon ovenfra vil dette være:
- Du kan også endre ikonet ved å trykke lenge på ikonet ved siden av Knock-navnet.
- Save the Knock.
- Trykk enkelt på den nye banken på hovedskjermen for å aktivere den.
- Valgfritt opprette en widget for det på en startskjerm.
Husk at mens vi har konfigurert eksemplet på konfigurasjonsfilen med grupper på 3 for hver port (på grunn av Telnet-delen nedenfor), er det med denne applikasjonen ingen begrensning på antall repetisjoner (hvis i det hele tatt) for en port.
Ha det gøy å bruke appen som
StavFX
har donert :-)
Bank fra Windows / Linux
Selv om det er mulig å utføre Knocking med det enkleste nettverksverktøyet a.k.a “Telnet”, har Microsoft bestemt at Telnet er en “sikkerhetsrisiko” og deretter ikke lenger installerer det som standard på moderne vinduer. Hvis du spør meg “De som kan gi opp vesentlig frihet for å oppnå litt midlertidig sikkerhet, fortjener verken frihet eller sikkerhet. ~ Benjamin Franklin ”men jeg går bort.
Årsaken til at vi setter eksempelsekvensen til grupper på 3 for hver port, er at når telnet ikke klarer å koble til ønsket port, vil den automatisk prøve igjen to ganger til. Dette betyr at telnet faktisk vil banke 3 ganger før du gir opp. Så alt vi trenger å gjøre er å utføre telnet-kommandoen en gang for hver port i portgruppen. Det er også grunnen til at et tidsintervall på 30 sekunder har blitt valgt, ettersom vi må vente på telnets tidsavbrudd for hver port til vi utfører neste portgruppe. Det anbefales at du automatiserer denne prosedyren når du er ferdig med testfasen Parti / Bash manus.
Ved å bruke eksemplets sekvens vil dette se ut som:
- Hvis du er på windows, følg MS instruksjon om å installere Telnet .
-
Slipp til en kommandolinje og utsted:
telnet geek.dyndns-at-home.com 56
telnet geek.dyndns-at-home.com 43
telnet geek.dyndns-at-home.com 1443
Hvis alt gikk bra, burde det være det.
Feilsøking
Hvis ruteren din ikke reagerer på sekvenser, er det noen få feilsøkingstrinn du kan ta:
-
Vis loggen - Knockd vil føre en logg du kan se i sanntid for å se om bankesekvensene har kommet til demonen og om kommandoen er utført riktig.
Forutsatt at du i det minste bruker loggfilen som i eksemplet ovenfor, for å se den i sanntid, utsted i en terminal: