/ / Cum să vă bateți în rețea (DD-WRT)

Cum să vă bateți în rețea (DD-WRT)

Ai vrut vreodată să ai un „cămin special”bateți cu routerul, pentru a avea „deschide ușa” doar când a fost recunoscut ciocănirea secretă? How-To Geek explică modul de instalare a demonului Knock pe DD-WRT.

Imagine de Bfick și Aviad Raviv

Dacă nu ați făcut-o deja, asigurați-vă că și consultați articolele anterioare din serie:

  • Transformați routerul dvs. de casă într-un router super-alimentat cu DD-WRT
  • Cum se instalează software suplimentar pe routerul de acasă (DD-WRT)
  • Cum să eliminați reclamele cu Pixelserv pe DD-WRT

Presupunând că sunteți familiarizați cu aceste subiecte, continuați să citiți. Rețineți că acest ghid este ceva mai tehnic, iar începătorii ar trebui să fie atenți atunci când își modifică routerul.

Prezentare generală

În mod tradițional, pentru a putea comunica cu un dispozitiv / serviciu, trebuie să inițiați o deplin conexiune de rețea cu acesta. Totuși, acest lucru expune, ceea ce se numește în epoca de securitate, o suprafață de atac. Demonul Knock este un fel de sniffer de rețea care poate reacționa atunci când este observată o secvență preconfigurată. Întrucât o conexiune nu trebuie să fie stabilită pentru ca daemonul knock să recunoască o secvență configurată, suprafața de atac este redusă păstrând funcționalitatea dorită. Într-un anumit sens, vom precondiționa routerul cu o dorit Răspunsul „doi biți” (spre deosebire de săracul Roger…).

În acest articol vom:

  • Afișează cum să folosești Knockd pentru a avea un router Wake-On-Lan un computer în rețeaua ta locală.
  • Afișează cum să declanșezi secvența Knock dintr-o aplicație Android, precum și de la un computer.

Notă: În timp ce instrucțiunile de instalare nu mai sunt relevante, puteți viziona seria de filme pe care am creat-o „drum înapoi când”, pentru a vedea întreaga rundă de configurare pentru a bate. (Doar scuzați prezentarea brută).

Implicații de securitate

Discuția despre „cât de sigur este Knockd?”, Este lungă și datează de mai multe milenii (în anii de internet), dar linia de jos este aceasta:

Knock este un strat de securitate prin obscuritate, care ar trebui să fie folosit doar pentru spori alte mijloace, cum ar fi criptarea și nu ar trebui să fie utilizate pe cont propriu, ca finalitate, toate sunt măsura de securitate.

Premise, ipoteze și recomandări

  • Se presupune că aveți un router DD-WRT activat Opkg.
  • Acest lucru poate dura ceva timp pentru a configura.
  • Este recomandat să obțineți un cont DDNS pentru IP-ul dvs. extern (de obicei dinamic).

Permite să se crape

Instalare & configurare de bază

Instalați demonul Knock deschizând un terminal la router și emitând:

opkg update ; opkg install knockd

Acum că Knockd este instalat, trebuie să configuramsecvențele de declanșare și comenzile care vor fi executate odată ce sunt declanșate. Pentru a face acest lucru, deschideți fișierul „knockd.conf” într-un editor de text. Pe router ar fi:

vi /opt/etc/knockd.conf

Faceți conținutul său să semene:

[options]
logfile = /var/log/knockd.log
UseSyslog

[wakelaptop]
sequence = 56,56,56,43,43,43,1443,1443,1443
seq_timeout = 30
command = /usr/sbin/wol aa:bb:cc:dd:ee:22 -i $( nvram get lan_ipaddr | cut -d . -f 1,2,3 ).255
tcpflags = sync

Permiteți să explicăm cele de mai sus:

  • Segmentul „opțiuni” permite configurarea unuiaparametrii globali pentru daemon. În acest exemplu, am instruit demonul să țină un jurnal atât în ​​syslog, cât și într-un fișier. Deși nu dăunează folosind împreună ambele opțiuni, ar trebui să luați în considerare păstrarea doar a uneia dintre ele.
  • Segmentul „wakelaptop”, este un exemplu de secvență care va declanșa comanda WOL la LAN pentru un computer cu adresa MAC a aa: bb: cc: dd: ee: 22.
    Notă: Comanda de mai sus, presupune comportamentul implicit al unei subrețele de clasă C.

Pentru a adăuga mai multe secvențe, pur și simplu copiați și inserați segmentul „wakelaptop” și reglați-vă cu noi parametri și / sau comenzi care vor fi executate de router.

Lansare

Pentru ca routerul să invoce demonul la pornire, adăugați mai jos scriptul „geek-init” din ghidul OPKG:

knockd -d -c /opt/etc/knockd.conf -i "$( nvram get wan_ifname )"

Aceasta va porni demonul Knock pe interfața „WAN” a routerului, astfel încât acesta să asculte pachetele de pe internet.

Bat din Android

În epoca portabilității, aproape imperativ este „să ai o aplicație pentru asta”… așa că StavFX a creat una pentru sarcină :)
Această aplicație execută secvențele ciocnitoare chiar de pe dispozitivul Android și acceptă crearea de widget-uri pe ecranele de acasă.

  • Instalați aplicația Knocker de pe piața Android (de asemenea, vă rugăm să fiți amabili și să-i acordați un rating bun).
  • Odată instalat pe dispozitiv, lansați-l. Ar trebui să fiți întâmpinați de ceva de genul:
  • Puteți apăsa mult timp pictograma exemplu pentru a o edita sau faceți clic pe „meniu” pentru a adăuga o nouă intrare. O nouă intrare ar arăta ca:
  • Adăugați linii și completați informațiile necesare pentru lovirea dvs. De exemplu, configurația WOL de mai sus ar fi:
  • Opțional schimbați pictograma apăsând mult timp pictograma de lângă numele Knock.
  • Salvează Knock.
  • Atingeți noul Knock în ecranul principal pentru a-l activa.
  • Opțional creați un widget pentru acesta pe ecranul de pornire.

Rețineți că în timp ce am configuratexemplu fișier de configurare cu grupuri de 3 pentru fiecare port (din cauza secțiunii Telnet de mai jos), cu această aplicație nu există nicio restricție cu privire la cantitatea de repetări (dacă este deloc) pentru un port.
Distrează-te folosind aplicația pe care StavFX a donat-o :-)

Bat din Windows / Linux

În timp ce este posibil să efectuați Knocking cucel mai simplu dintre utilitatea de rețea a.k.a „Telnet”, Microsoft a decis că Telnet este un „risc de securitate” și, ulterior, nu-l mai instalează în mod implicit pe Windows-uri moderne. Dacă mă întrebi „Cei care pot renunța la libertatea esențială pentru a obține puțină siguranță temporară, nu merită nici libertate, nici siguranță. ~ Benjamin Franklin ”, dar eu fac digress.

Motivul pentru care am stabilit secvența de exemple pe grupedin 3 pentru fiecare port, este că atunci când telnet nu se poate conecta la portul dorit, va încerca automat din nou de două ori. Asta înseamnă că telnetul va bate efectiv de 3 ori înainte de a renunța. Deci tot ce trebuie să facem este să executăm comanda telnet o dată pentru fiecare port din grupul de porturi. Este, de asemenea, motivul pentru care a fost selectat un interval de timp de 30 de secunde, deoarece trebuie să așteptăm timpul de expirare al telnetului pentru fiecare port până când executăm următorul grup de porturi. Este recomandat ca, după ce ai terminat faza de testare, să automatizezi această procedură cu un simplu script Batch / Bash.

Folosind secvența noastră de exemple, acest lucru ar arăta ca:

  • Dacă aveți Windows, urmați instrucțiunile MS pentru a instala Telnet.
  • Treceți la o linie de comandă și emiteți:
    telnet geek.dyndns-at-home.com 56
    telnet geek.dyndns-at-home.com 43
    telnet geek.dyndns-at-home.com 1443

Dacă toate au mers bine, asta ar trebui să fie.

Depanare

Dacă routerul dvs. nu reacționează la secvențe, iată câteva etape de depanare pe care le puteți face:

  • Vizualizați jurnalul - Knockd va păstra un jurnal pe care îl puteți vizualiza în timp real pentru a vedea dacă secvențele de bătaie au ajuns la demon și dacă comanda a fost executată corect.
    Presupunând că utilizați cel puțin fișierul jurnal ca în exemplul de mai sus, pentru al vedea în timp real, emite un terminal:</ P>

    tail -f /var/log/knockd.log

  • Fii atent la firewall-uri - Uneori ISP-ul tău,locul de muncă sau internet cafe, luați libertatea de a bloca comunicarea pentru dvs. Într-un astfel de caz, în timp ce routerul tău poate fi ascultat, loviturile la porturile care sunt blocate de orice parte a lanțului, nu vor ajunge la router și vor avea greutăți să reacționeze la ele. De aceea, se recomandă să încercați combinații care utilizează porturile bine cunoscute, cum ar fi 80, 443, 3389 și așa mai departe, înainte de a încerca mai multe la întâmplare. Din nou, este posibil să vizualizați jurnalul pentru a vedea ce porturi ajung la interfața WAN a routerului.
  • Încercați secvențele interne - Înainte de a implicacomplexitatea de mai sus pe care o pot introduce alte părți ale lanțului, este recomandat să încercați să executați secvențele în interior pentru a vedea că acestea A. lovesc router-ul, așa cum credeți că ar trebui să B. execute comanda / comenzile conform așteptărilor. Pentru a realiza acest lucru, puteți porni Knockd când sunteți legat de interfața LAN cu:

    knockd -d -i "$( nvram get lan_ifnameq )" -c /opt/etc/knockd.conf

    După executarea celor de mai sus, puteți direcționa clientul Knocking către IP-ul intern al routerului în locul celui extern.
    Bacsis: Deoarece knockd ascultă la nivelul „interfeței” și nu la nivelul IP, poate doriți să aveți o instanță de execuție KnockD pe interfața LAN tot timpul. Întrucât „Knocker” a fost actualizat pentru a sprijini două gazde pentru ciocănire, acest lucru va face, pentru a simplifica și consolida profilurile de bătut.

  • Amintiți-vă care este partea dvs. - Nu este posibilpentru a bate interfața WAN din interfața LAN din configurația de mai sus. Dacă doriți să puteți bate indiferent de „partea dvs.”, puteți pur și simplu să executați demonul de două ori, odată legat de WAN ca în articol și odată legat de LAN ca în pasul de depanare de sus. Nu există nicio problemă de a rula ambele împreună, prin simpla adăugare a comenzii de sus la același script geek-init.

Comentarii

În timp ce exemplul de mai sus ar putea fi realizat prin diferite alte metode, sperăm că îl puteți folosi pentru a învăța cum să realizați mai multe lucruri avansate.
O parte a doua a acestui articol care ascunde serviciul VPN în spatele unei lovituri vine, așa că rămâi la curent.

Prin Knocking, veți putea: Porturi deschise dinamic, Dezactivare / Activare servicii, calculatoare WOL de la distanță și multe altele ...