Friday, November 17th, 2017

SSH-туннелинг или замена VPN

Published on Апрель 23, 2009 by   ·   Комментариев нет

В последнее время довольно большое распространение получила технология
VPN (Virtual Private Networks). В большинстве случаев ее используют
люди для шифрования передаваемой информации через локальную сеть
(защита от снифанья трафика, что довольно легко осуществить в сети,
даже на свичах) и/или последующей передачи информации через Интернет
(тут уже целями будет скрытие своего IP-адреса, защита от глобального
снифа трафика всей страны (aka СОРМ, он же нынешний СОРМ2) и.д.).
Многие уже давно используют данную технологию VPN, но не многие знают
об ее более дешевой и мобильной альтернативе. А называется это —
SSH-туннелинг.
070-417
070-411
Принцип данной реализации следующий. Весь сетевой софт на компе (ну
или не весь) форвардится на назначенный порт вашего локалхоста, на
котором висит сервис соединенный по SSH с сервером (а как мы знаем,
соединение по SSH протоколу шифруется) и туннелирующий все запросы,
далее весь ваш трафик (уже не в зашифрованном виде форвардится с
нашего сервера на прокси (поддерживающий туннерирование) или сокс,
который передают весь трафик к необходимым адресам. Наличие прокси или
сокса обязательно, но если нам не нужна полнейшая конспирация, то мы
можем организовать данный сервис (proxy/socks) на своем сервере, где у
нас находится SSH-аккаунт, но об этом позже.

Теперь давайте разберемся с минимальным набором инструментов и
сервисов необходимых для организации данного процесса. В первую
очередь нам нужна программа для организации туннеля по SSH-протоколу.

Для этой задачи мы можем применить VanDyke Entunnel
(http://www.vandyke.com/products/entunnel/) или Putty
(http://www.web-hack.ru/download/info.php?go=35) (вкладка
Connection\SSH\Tunnels). В наших примерах я буду использовать
Entunnel. Далее мы можем вручную прописывать в каждой программе работу
через прокси или использовать специализированную программу для
перенаправления запросов, такую как ProxyCap
(http://proxylabs.netwu.com), SocksCap (http://www.socks.nec.com),
FreeCap (http://www.freecap.ru) и т.п. В нашем примере будет
использоваться ProxyCap, как наиболее удобная софтина (кстати, через
ProxyCap мы сможем сделать туннерирование даже WebMoney, которая
известна защитой от такого вида софта, для скрытия IP). Так же нам
понадобится SSH-аккаунт (на сервере желательно расположенном за
пределами вашей страны =), который можно без проблем достать
(например, я покупаю VPS-хостинг для этого) и socks`ы.

Первым делом создаем SSH-аккаунт. Далее я предлагаю вам использовать
socks-сервер, а не proxy, т.к. не все прокси поддерживают
тунелирование. Также может оказаться, что сегодня прокси анонимный, а
завтра уже и не нет (если конечно не вы сами отвечаете за него).

Кстати, проверить свою анонимность можно здесь (http://ip.xss.ru). Как
я уж говорил, мы можем использовать сокс на удаленной машине (для
большей безопасности) и на своей (где SSH-аккаунт). Для примера я
покажу, как установить сокс-демон. Наиболее популярные и продвинутые
демоны под никсы это socks5 от Permeo/NEC
(http://freeware.sgi.com/source/socks5/), Dante
(http://www.inet.no/dante/) и отечественный продукт 3proxy
(http://www.security.nnov.ru/soft/3proxy/). Для примера я выбрал
классический демон на FreeBSD — socks5.

Для тестирования использовалась FreeBSD 5-ой ветки. Я устанавливал

write my papers

socks5 из портов (/usr/ports/net/socks5/), но и из сорцов под фряхой
тоже все хорошо собирается и ставится:

cd /usr/ports/net/socks5/
make
make install
rehash

Для нормально работы демона необходим кофиг к демону socks5.conf и
файл паролей socks5.passwd (если необходима аутификация к сокс-серверу
по паролю):

touch /usr/local/etc/socks5.conf
touch /usr/local/etc/socks5.passwd

Далее добавляем в конфиг следующие строчки:

auth - - u
permit u - - - - -
SET SOCKS5_BINDINTFC 1.2.3.4:8080
SET SOCKS5_CONFFILE /usr/local/etc/socks5.conf
SET SOCKS5_PWDFILE /usr/local/etc/socks5.passwd
SET SOCKS5_MAXCHILD 128
SET SOCKS5_NOIDENT
SET SOCKS5_NOREVERSEMAP
SET SOCKS5_NOSERVICENAME
SET SOCKS5_V4SUPPORT
SET SOCKS5_ENCRYPT
SET SOCKS5_FORCE_ENCRYPT
SET SOCKS5_UDPPORTRANGE 1023-5000

Первые две строчки указываю, что необходима аутификация по
логин/пароль. SOCKS5_BINDINTFC указывает на какой IP (если у сервера
несколько алиасов) и порт повесить демон. SOCKS5_MAXCHILD по умолчанию
64, я советую увеличить до 128, что бы всем юзерам (если их много)
хватило потоков. Далее идут строчки для ускорения работы демона.
SOCKS5_V4SUPPORT — поддержка 4-ой версии протокола. SOCKS5_ENCRYPT и
SOCKS5_FORCE_ENCRYPT поддержка шифрования, если клиент это
поддерживает. За более подробной информацией по установка обращайтесь
к файлам README и INSTALL, а за информацией по настройке к манам
socks5(1) и socks5.conf(5).

Далее заполняем файл паролей. Он имеет обычный текстовый формат и
login/password разделяются в нем пробелами:

user password
root toor

Теперь можно запускать демон и приступить к настройке клиентского
софта:

/usr/local/bin/socks5

Запускам ProxyCap
(http://forum.web-hack.ru/index.php?showtopic=29262), кликаем правой
кнопкой мыши на значке в трее, Preferences. На вкладке «Proxies»
вписываем 127.0.0.1:8080 и устанавливаем в «Require Authorization» наш
login/password на сокс. На вкладке «Rules» добавляем сначала правило
для Entunnel, указав в «Rule Type» — Force direct connetion. Далее
создаем правило, для всего остального софта, трафик от которого будет
шифроваться и туннелироваться через сокс. В правиле указываем «All
Programs», «Tunnel through proxy» и в выпадающем меню наш сокс. Так же
можно создать правило не для всего софта, а только выборочный софт
пускать через туннель или наоборот, создать правило для всего софта,
но для некоторого софта сделать прямой доступ в инет (Force direct
connetion).

Запускаем Entunnel и создаем в нем новое соединение по SSH. Далее в
свойствах соединения (Port Forwarding) добавляем наш сокс. В категории
«Local» вписываем 127.0.0.1:8080, а в категории «Remote» вписываем IP
и порт нашего сокс-сервера. Настройка закончена! Если что-то не
работает, то еще раз перечитайте все пункты настройки.

Заключение

Какие плюсы данной системы:

*) Для организации данной схемы не нужно устанавливать серверный софт
(т.к. SSH-аккаунт и сокс можно без проблем достать в инете);

*) Т.к. при SSH-соединении трафик шифруется и сжимается, то мы
получаем небольшой прирост скорости работы в инете (это верно, когда
сокс-демон находится на том же сервере);

*) В случае, когда сокс-сервер находится на другом хосте, то мы
получаем дополнительную цепочку серверов, которые повышают нам
безопасность и анонимность;
jfdghjhthit45
zp8497586rq















































































Смотрите также:

Readers Comments (Комментариев нет)

Comments are closed.

Exchange 2007

Проведение мониторинга Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 3)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Проведение мониторинга Exchange 2007 с помощью диспетчера System ... [+]

Практическое рассмотрение перехода с Exchange 2003 на Exchange 2007 (часть 1)

Введение В этой статье из нескольких частей я хочу показать вам процесс, который недавно использовал для перехода с существующей среды Exchange 2003 ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 2)

Если вы пропустили первую часть этой серии, пожалуйста, прочтите ее по ссылке Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (Часть ... [+]

Мониторинг Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 2)

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Мониторинг Exchange 2007 с помощью диспетчера System Center Operations ... [+]

Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 5)

Если вы пропустили предыдущие части этой серии статей, перейдите по ссылкам: Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 1) ... [+]

Установка и настройка Exchange 2007 из командной строки (Часть 3)

If you missed the previous parts in this article series please read: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 1)

Инструмент ExRCA Текущий выпуск инструмента предоставляется только в целях тестирования и оснащен 5 опциями: Тест подключения Outlook 2007 Autodiscover Тест подключения Outlook 2003 RPC ... [+]

Развертывание сервера Exchange 2007 Edge Transport (часть 5)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Развертывание сервера Exchange 2007 Edge Transport (часть 1) Развертывание ... [+]

Установка и настройка Exchange 2007 из командной строки (часть 2)

Если вы пропустили первую статью данного цикла, пожалуйста, перейдите по ссылке: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование интегрированных сценариев Using Exchange Server 2007 – часть 2: генерирование отчетов агента Transport AntiSpam Agent

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Использование интегрированных сценариев Using Exchange Server 2007 – часть ... [+]