Титла: Ssh reverse tunnel въпроси Публикувано от: peaceburn в Aug 14, 2006, 11:52 Здравейте, имам следната схема от машини :
<пс-та в офис> --> <рутер> --> <бтк адсл> ---> <ИНТЕРНЕТ> --> <пс с публичен ип адрес (windows)> Та значи за да мога да се свързвам с рутера зад адсл-а , съм пуснал в crontab 1 * * * * ssh -T -R 2922:localhost:22 -N -g -f -i /home/root/.ssh/username_private_key -l "user name" publiciphost.com Та значи това кара Freesco рутера който шерва нета от бтк, да направи reverse тунел като се закачи към машината publiciphost.com (моята windows машина, с openssh/cygwin) като използа priv/pub key и на ремоте машината мапва порт 2922 да отговаря на localhost:22 ... с две думи на машината с windows порт 2922 е отворен и чрез ssh publiciphost.com -p 2922 се закачам за рутера който е за бтк адсл. Та на въпроса - понеже тъпото ssh @ рутер, всеки път като се изпълни cron-а прави опит за връзка, ако тунела е активен - то му казва нещо че този порт се ползва вече, и процеса остава да виси ... и така както е нагласено - в първата минута на всеки час да го вдига тунела, става кофти че мноого процеси висят. Сложил съм в крон killall ssh което в 12:00 избива всички процеси, но е тъпо решение ... другия проблем е че на windows машината също висят толкова на брой процеси, sshd.exe :-D , и помпат по ~8mb всеки. Най-тъпото е че открих че процесите не дропват сами , дори да отпадне физическата връзка към интернет на рутера. Някакви идеи как мога да сетъпна нещата така че да се проверява дали тунела е активен (ама не с ps -aux | grep ssh , щото процеса върви дори и да е прекъсвала връзката и тунела да трябва да се стартира ... ) ? P.s. цялата дандания е необходима, понеже бтк адсл дава на рутера 192.168.1.1 и рутера си няма публично ип към което да се вържа ![]() Титла: Ssh reverse tunnel въпроси Публикувано от: Hapkoc в Aug 14, 2006, 12:15 Еми можеш да гледаш отворените портове. Ако имаш отворена TCP връзка към 22-ри порт на отдалечената машината и отворена TCP връзка към 22-ри порт на локалната значи е активен тунела.
Другия вариант е с един shell скрипт да създаваш файл, примерно /var/lock/ssh-tunnel.lock. Ако го има файла, скрипта излиза, ако го няма пуска да се вдигне тунела. И слагаш скрипта в crontab. Титла: Ssh reverse tunnel въпроси Публикувано от: peaceburn в Aug 14, 2006, 15:27 Всъщност, и аз си мислех нещо с портовете - ако прожерявам дали 2922 на ремоут машината е отворен, да не се пуска ссх ... обаче пак не ме кефи ...
с .lock файл е загубена кауза, защото процеса стои дори при прекъсната връзка .... ако мога да настроя ssh процеса да се килва при прекъсване на връзката ... май имаше нещо keep alive , ще погледна. Титла: Ssh reverse tunnel въпроси Публикувано от: morbid_viper в Aug 15, 2006, 15:50 всички бтк adsl-ли имат "външни" ip-та.
това можеш да го провериш като отвориш от вътрешната мрежа showmyip.com. всъщност имаш късмет, че бтк ти дават частно ip на интерфейса на маршрутизатора. предишната им система беше доста куца и не вървеше както трябва под линукс - тогава на интерфейса се даваше направо "външното" ip. добре, че тази практика я прекратиха ноември'2004 може да не съм разбрал правилно проблема, но това което трябва да направиш е да се обадиш в бтк и да им кажеш да ти пренасочат всички портове по всички протоколи към вътрешното ти ip - 92.168.1.2. естествено ще трябва да си настроиш някаква защитна стена :-) така ще можеш да си се връзваш както си трябва. Титла: Ssh reverse tunnel въпроси Публикувано от: peaceburn в Aug 17, 2006, 14:13 Всъщност, за мен варианта с private ip ме устройва много добре, така изобщо не се занимавам с firewall и т.н.
А за другите неща - 1-во не искам да се занимавам с бтк - по-специално да им се обаждам да ми отворят порт 22 на адсл за домашен потребител ще ги осъмни поне малко ![]() 2-ро така настроена врътката с тунелите ми върши идеално работа, само да можеха да не остават толкова много процеси ... сега се замислям че първо може да килвам ссх ,и после да правя нов кънекшън , но е тъпо пак.... Събота и неделя ще чета по въпроса пък барем открия нещо. Титла: Ssh reverse tunnel въпроси Публикувано от: morbid_viper в Aug 18, 2006, 15:19 виж сега... платил си си - ползвай си го. няма да ти коства много. просто им звъниш на контактния център и без много въпроси по някое време ти пренасочват портовете. тогава няма да се налага да правиш такива еквилибристики и измислици.
аз имам 13 адсл-а към бтк и съм се сблъсквал с туй-онуй. това, което ти казвам е работещият вариант в този случай! |