Jak se dostat přes SSH na NAS, který je za NATem?
Ahoj,
chtěl bych přistupovat přes internet ke svému NAS disku (ZyXEL NSA325 v2), který je za NATem. Nemám možnost port forwardingu. Co ale mám, je VPS s Ubuntu 14.04, který veřejnou adresu má. Pujde to zprovoznit? Četl jsem si něco o reverzním SSH tunelu (předpokládám, že tohle potřebuju), ale moc chytrý z toho nejsem.
Nakopnete mě někdo, jak to nastavit?
Oh, tak už to mám, nebylo to zas tak složité.
viz http://www.dsl.cz/jak-na-to/5-site-a-ochrana/233-j ak-na-reverzni-ssh-tunel
Na NAS disku se ssh konfigurák nachází v /usr/local/zy-pkgs/config/SSH, restart ssh servisy uděláte přes web.
Není to ješte úplně ok. Jak docílím toho, aby tunel zůstal otevřený i když zavřu ssh session na NAS?
Jsem v situaci:
1) otevřu ssh konzoli NAS
2) zadám příkaz na vytvoření reverzního tunelu ssh -R XX:localhost:YY root@muj_server.cz
3) zadám heslo
4] tunel běží, když zavřu putty tunel se zavře taky, což nechci...
ten příkaz musíš zacyklit (např. skriptem). Tj. když skončí, musí se spustit nová instance.
edit:
například
Ok. Díky! Pak vyzkouším...
Nejde mi to.
Nejprve jsem musel vyřešit zadání hesla. To jsem "obešel" pomocí certifikátů, ale script pořád nefunguje...
Když to spustím ./tunel.sh, tak script jede ale po zavření ssh session se ukončí a k tunelu se nedá připojit. Pokud to spustím jako ./tunel.sh &, tak se vše tváří ok, ale k tunelu se nepřipojím.
http://unix.stackexchange.com/questions/17835/how- can-i-configure-a-reverse-ssh-connection-to-the-co nnecting-computer
tady to už někdo taky řešil a dospěl k totožnému řešení, co jsem vypálil z hlavy já (ale přepínače ssh v hlavě nenosím)
Takhle mi to nefungovalo...
Ale funguje mi:
a i po zavření putty, tunel jede.
Vyřešeno, díky všem za rady.
Vo všeobecnosti sa na to, aby ti zostal bežať proces aj po odpojení z terminálu používa nohup alebo screen.
Príkaz nohup dáš len pred celý príkaz a on sa postará o to, aby sa signál SIGHUP nedostal k spúšťanému procesu.
Pomocou príkazu screen si vieš vytvoriť viacero virtuálnych terminálov, ktoré zostávajú bežať aj po odpojení sa. Výhodou oproti nohup je, že sa vieš následne opäť prepnúť do toho virtuálneho terminálu, z ktorého si príkaz spustil. Takým spôsobom si vieš pozrieť, čo ten proces vypísal do štandardného výstupu, prípadne či nečaká na niečo zo štandardného vstupu. Ovláda sa to po spustení príkazu screen klávesovými skratkami. Je to také interaktívne - ja som si na to nezvykol a nohup je skrátka jednoduchší a teda lepší.
Ampersand na konci posiela proces na pozadie. Príkaz ssh má prepínač -f (automaticky implikuje -n), ktorý ho pošle na pozadie. Oproti ampersandu má malú výhodu v tom, že počká, kým nevytvorí pripojenie (resp. pri použití -o ExitOnForwardFailure=yes počká aj na vytvorenie tunela).
Ak by si chcel, tak pre automatické obnovovanie SSH pripojenia môžeš použiť autossh - používa úplne rovnaké prepínače ako ssh.
Wow. Díky za obsáhlé vysvětlení.
autossh použít nemůžu, v NASu běží BusyBox v1.17.2 a ten to nemá, asi by se to muselo doinstalovat, ale už do toho nebudu hrabat, poněvadž mi to funguje.
Daj si to spojenie do screenu, myslim, ze to je najjednoduchsie a splna to to, co pozadujes.
Kam že to?
Asi myslíš:
tunel se ale stejne zavře, když zavřu putty...
Nepoznam z hlavy screen manual, nicmenej ja som to robil tak, ze som spustil screen, spustil prislusny programy, screen zavrel (ctrl-a-d tusim), cim sa presunul do pozadia a ked chcel prgram zase vyvolat tak screen -r ak si dobre pamatam.
Takto mi fungovalo vsetko, co sa zatvaralo pri skonceni spojenia.