The Diary
Дневникът на Jul
<- Предишен запис (2008-02-09) | Дневника | Следващ запис (2008-02-11) ->
Архив
Неделя, 10 Февруари 2008
Днес следобед звънна Габи да ме пита защо не може да подкара Matlab с служебния лиценз на лаптопа когато се е вързала в VPN-а на службата. След кратко умуване от факта, че се бави доста на старт преди да даде грешка, че не може да провери лиценза реших, че проблема е , че адресите, които раздава VPN-а са фактически от друга подмрежа на тези които дава DHCP сървъра за вътрешната мрежа и, че явно лицензния сървър е филтриран само за истинската вътрешна мрежа. Тогава се сетих за едно решение, което аз самия бях приложил зимата. Ситуацията тогава беше подобна - не можех да се вържа зимата от България с един MSSQL сървър от вкъщи, а от тук си можех, и ми хрумна да се тунелирам през ssh на гризача. По принцип и по-рано съм ползвал този трик да достигам филтрирани само за България сайтове, но там имах възможността да глася SOCKS прокси във Firefox, а на MS SQL Studio-то не поддържа прокси настройки, или поне на мен не ми е известно къде са. Затова и накратко каво правим в двата случая:
ПОЛЗВАНЕ НА SSH ЗА ПРЕОДОЛЯВАНЕ НА ФИЛТРИРАНИ ЗА КРАЙНИЯТ КЛИЕНТ УСЛУГИ -----------------------------------------------------------------------[ Добави коментар ]I Случай - когато може да настроим прокси и искаме максимална гъвкавост
В такъв случай е най-добре динамичният port forwarding, който се постига с -D опцията на ssh (в PuTTY е въведна като dynamic forwarding). Синтаксиса на командата тогава е :
ssh -D port -l user proxyhost
Това значи че на локалната машина портът зададен в командата ще слуша за връзки и ще служи като SOCKS прокси пренасочвайки всички заявки през proxyhost към крайната дестинация. Особено удобно е за браузъри, защото поддържа всички протоколи http, https, ftp (PASV) и т.н. изисква само софтуера да е запознат с SOCKS v.5 протокола. И да зададем адрес на прокси сървър localhost.
II Случай - когато не можем да избираме прокси и сме вързани за даден порт (и може би адрес)
Това е случая с лиценз сървъра и моя случай с MSSQL сървъра - те държат на конкретни портове, че и на конкретни имена на хостове. Забележете - не IP адреси а имена!
Ако е само до портове - тогава просто пренастройваме клиентската програма да ползва localhost като сървър и използваме не динамичното, а локално пренасочване на портове с този синтаксис
ssh -L localport:server_host:remoteport -l user proxyhost
Принципа е същият като в първият случай, само че връзката на портовете е твърда и не е нужен специален механизъм за указване адреса на пакетите.
Ако не може да сменим името на сървъра, и той не се търси по IP, то може да добавим в /etc/hosts или съответно \WINDOWS\System32\Drivers\Etc\HOSTS, за даденото име на сървър адрес съотвестващ на 127.0.0.1 и ще се радваме на желания ефект.
Comments, texts and pictures not signed by me are property of their respective owners.
(c) 2003-2005 by Georgi Chorbadzhiyski. Some rights reserved.
Страницата е генерирана от Glog v3.50