Translate

субота, 16. јануар 2016.

Skripa za restart routera Telnet i SSH

Jeftiniji routeri sa kojima sam se susretao su imali tendenciju da prestanu sa radom i bilo ih je potrebno restartovati. Problem nastaje kad imate veliki broj uređaja na različitim lokacijama koje su kilometrima udaljene od vaše. Procedura kod ovakvog slučaja je sledeća - zove vas nezadovoljan korisnik kome "ništa ne radi" ili je računar "crkao" jer nema google-a. Sad je došao red na deo kad vi pokušate da mu dajete uputstva preko telefona a on vidi samo "mnoštvo žica i kutija sa trepćućim svetlima". Sa istim problemima sam se i ja susretao i postoji rešenje!
Da bi se implementiralo rešenje potreban je drugačiji pristup routeru od onog preko web UI a to se može postići preko servisa kao što su Telnet i SSH.
Nekad routeri mogu da koriste samo Telnet ili samo SSH i iz tog razloga sam napisao skripte za oba servisa.


Skripta za restart routera preko Telnet-a.

Postoji nekoliko preduslova da bi ova skripta mogla da radi ali se ispunjavanjem istih ne bih bavio u ovom tekstu.
1. Telnet mora biti instaliran na računaru sa kog se skripa pokreće.
2. Na routeru se mora dozvoliti pristup preko Telnet-a.

Otvorite nov txt u notepadu i u njega upišete sledeće komande:

Option explicit
Dim oShell
set oShell= Wscript.CreateObject("WScript.Shell")
oShell.Run "telnet"                                                                   
WScript.Sleep 3000                                                           
oShell.Sendkeys "192.168.0.1~"                                           
WScript.Sleep 3000                                                                
oShell.Sendkeys "username~"
WScript.Sleep 3000
oShell.Sendkeys "password~"
WScript.Sleep 3000
oShell.Sendkeys "system reboot~"
WScript.Sleep 3000
oShell.Sendkeys "~"
Wscript.Quit

Napomena: kod nekih routera, komanda za restartovanje je reboot a kod nekih system reboot.

Dokument je potrebno sačuvati kao .vbs (visal basic script).
Ukoliko vam skripa radi ali ne može da dobije vezu ka routeru, proverite port koji router koristi za ovaj protokol i promenite port na 22 ili 23.

Skripta za restart routera preko SSH.

Ovaj način je malo komplikovaniji pošto Windows za razliku od Linuxa, nema ugrađen servis za SSH kao što ima za Telnet i potrebno ga je instalirati.
Softver za SSH pristup po mom izboru je Putty. Preuzmite ga Ovde.

Potrebno je kreirati dva nova txt fajla. U prvi upišite sledeće:

start lokacija\putty.exe -ssh adresa routera -l username -pw password -m lokacija\imefajla.txt

Fajl sačuvajte pod nastavkom .bat.

U drugi .txt upišite "reboot" i sačuvajte ga.

Primer:

start D:\putty.exe -ssh 192.168.0.1 -l admin -pw admin -m D:\komanda.txt

Router bez Telneta ili SSH

Ukoliko imate router čiji vam firmware ne dozvoljava pristup preko ovih servisa, možete postaviti nov firmware na router (npr. OpenWrt). U ovom slučaju bi bilo poželjno da se konsultujete sa nekim ko je već radio tzv. flashovanje routera.


Нема коментара:

Постави коментар