Skip to content
Йордан Радунчев

 Петък, 9 Юли 2010

   от Йордан Радунчев


По бензиностанции, кафенета, молове и паркове цъфнаха отворени WiFi hot-spots които ви
предлагат свободен достъп до Интернет. Всичкото това е много хубаво, но да използвате
такива точки за достъп, които не предлагат никакво криптиране на данните, си е направо
лудост. То е все едно да се изправите върху пейката в парка и да изкрещите паролата си за
достъп до фейсбук пред всички разхождащи се наоколо. Всеки, свързан с отворената безжична
мрежа, може да ви "чуе" и да си води бележки какво и с кого комуникирате. А не е
задължително да сте толкова открити с непознатите в парка.
Достатъчно е да имате достъп до ssh сървър през който да насочите целия трафик от вас към
Мрежата. Тъй като връзката между вас и сървъра се осъществява по ssh протокол, тя е
криптирана и неразбираема за съседите ви в отворената безжична мрежа на парка. Важно
уточнение - криптирана е само връзката между вас и ssh сървъра! Който може да е ваш
собствен, може да е чужд, за чието ползване плащате. Втората опция не е предмет на това
писание.
И така предполага се, че имате домашен ssh сървър (просто един Debian десктоп в
домашната ви мрежа, който е почти постоянно включен). Предполага се, че ползвате нетбук или
лаптоп с Линукс операционна система. Методът работи и с Уиндоус клиенти, но, понеже се
старая да не окуражавам използването на затворен софтуер и ОС, този вариант също не е
предмет на това писание.
Отворете терминал и изпълнете:
ssh -D 6969 -fN user@serveraddress.dyndns.org
Като естествено замените user с вашето потребителско име (ще ви бъде поискана и паролата
за него), с което сте регистрирани на домашния си ssh сървър, чиито адрес е
serveraddress.dyndns.org. Ако връзката с него е възможна (не ви е спрял тока вкъщи, или
доставчика ви не ви е спрял Интернета) вече имате отворен крипитран и защитен от чужди
погледи "тунел" помежду си.
Следващата стъпка е да настроите браузъра си да прекарва всички връзки с Интернет през
този тунел.
За Firefox: Edit -> Preferences -> Advanced tab кликате върху Settings срещу "Configure
how Firefox connects to the internet". Избирате Manual proxy configuration и въвеждате
localhost в полето SOCKS Host, а за порт въвеждате 6969 - порта, който сте дали на ssh.
Сега всички заявки за сайтове Firefox ще отправя криптирани до вашия ssh сървър, а той ще
тегли съдържанието на сайтовете от Интернет, ще го криптира и ще го връща на браузъра.
Остава само още една дупка за запушване - Firefox все още пита за адресите на сайтовете,
които искате да посетите, в чист некриптиран текст - "вика", така че околните все още
"чуват" кои сайтове посещавате, макар и да не са в състояние да "чуват" за какво си
говорите с тях. За да "запушим" устата на бъбривия браузър, отваряме в него адреса
about:config и намираме там настройката network.proxy.socks_remote_dns, задаваме й
стойност TRUE и това е всичко приятели! Сега никой от околните няма представа кои сайтове
посещавате и какво правите в тях.
За Google Chrome: в Google Chrome Options -> Under the Hood -> Network -> Change Proxy
settings -> маркирайте Manual Proxy Configuration и в Socks host въведете localhost, за
порт запишете 6969. Това е. За съжаление няма лесен начин да прекараме DNS заявките на
Google Chrome през ssh връзката. Поради което ви препоръчвам когато сте навън да
използвате Firefox.
Важното е, когато не използвате ssh тунел, да връщате настройките на браузъра си на
Direct connect...
По този начин можете за защитите трафика и на други програми, които могат да бъдат
настроени да използват socks прокси.
Успех, и не забравяйте - правете само безопасен секс, ако ще го правите с непроверени и
случайни партньори: нахлузете си socks-чето преди отпочнете забавата :)