Ssh tunnel

Fórumok

Sziasztok!

Egy problémával kapcsolatban kérnm a segítségetek, van egy debian szerver, amit távolról elérek és van mellette egy router ami a szervernek is oszt ipcímet, szeretnék kapcsolódni a router webes felületére böngészővel () . Ssh tunnelra gondoltam és odáig sikerült is megvalóstanom, h kiépítettem a szerver felé a kapcsolatot és a firefoxal elérem az oldalakat a szerveren keresztül, viszont azt nem tudom, h miért nem érem el router ip-jét, ha próbálkozok.

Más alternatíva is érdekel. :)

U.i: A router távelérésével ez könnyen megvalósítható, de ez most nem érdekel.

Üdv Szép Napot

Hozzászólások

Kicsit zavaros, amit írsz, de amúgy szerintem tunnelt szeretnél kiépíteni a router felé.

Valami ilyesmi paraméterre van szükséged az ssh kapcsolat felépítésekor: -L8080:router_ip:80
Ezzel a gépeden localhost:8080 (127.0.0.1:8080) weboldalt megnézve a routered oldalát fogod látni (ezzel feltételezem, hogy egyedül a 80-as porton hallgat a router).

Nem tudom, a Firefox-szal miként éred ez az oldalakat a szerveren keresztül, de ha valamiféle proxy-t csináltál, akkor el kell érni, hogy azon keresztül látsszon az eszköz...

Elvben VaZso lokális porttovábbítása is jó kell legyen, de csinálhatod másként is:
tsocks / dante(-client) / proxychains / stb. telepít. Kihúzod az ssh-tunnelt, de mellékesen csinálsz belőle SOCKS5-proxyt:
helyigep$ ssh -fND 1080 user@tavoligep

Felkonfiguralod a fentiekben telepített eszközt. tsocks-nál kb ennyi:

# vi /etc/tsocks.conf
server = 127.0.0.1
server_port = 1080
server_type = 5

Majd pedig bármit amivel el akarod érni a routert, így indítasz el:

$ tsocks bármi

Az eredmény az, hogy a "bármi" a távoli gépről fog csatlakozni arra a címre, amit el akar érni.

(Amúgy ha böngészővel akarod csak elérni a routert, FF/Chrome/Opera natívan kezel SOCKS-proxyt, még a tsocks telepítése se kell.)

SSH tunnelnél (már ha jól csináltad), local IP-n éred el a távoli gépet.

Pl.
ssh someuser@tavoligep -L tavoliip:tavoliport:localip:localport

Ekkor a távoli IP távoli portját a local IP local portján éred el.
Ha pl. a távoli rendszerben az ssh tunneles gép a 1.2.3.4 publikus ip-n érhető el root userrel, a router a 192.168.0.254-es IP van, a router portja meg a 8080-as, a Te munkaállomásod IP-je meg 192.168.1.10, akkor ezt csináld:

ssh root@1.2.3.4 -L 192.168.0.254:8080:192.168.1.10:80
És az ablak nyitva tartása mellett a http://192.168.1.10 címen éred el a gépeden indított böngészővel a webfelületet.

Tehát a router IP-jét közvetlenül nem is kell elérned - nem is tudom, egyáltalán mivel próbálkozol...
--
PtY - www.onlinedemo.hu

legjobb megoldás szerintem az sshuttle ilyen célra.... kényelmes gyors, nem kell tekergetni proxy-t, s csak kliens oldalon kell telepíteni, s csak ssh kell a szerveren.
ubuntu kliens alatt (Debian-ban lehet plussz repo kell...)
apt-get install sshuttle

csak tcp kapcsolatot kezel le, így icmp-t (ping) valamint udp-t (pl iptelefon) ne akarj vele.

minden forgalom a tunnelbe terelve:
sshuttle -r username@sshserver 0.0.0.0/0

ha a router-ed 192.168.1.1 akkor csak azt:
sshuttle -r username@sshserver 192.168.1.1

ha a router-ed és más is abban a tartományban 192.168.1.0/24:
sshuttle -r username@sshserver 192.168.1.0/24

Üdv:
Csabka