12 сентября 2011 г.

Построение и использование цепочек SOCKS-proxy.

Построение и использование цепочек SOCKS-proxy.
Иногда возникает необходимость анонимного использование сети Интернет. Хотя понятие анонимности всегда относительно в силу многих причин, некоторую её степень всё же можно обеспечить. Вопросы связанные с анонимностью в Интернете возникают в поисковых системах с завидной регулярностью. И если анонимный просмотр веб-страниц (то есть работа с HTTP/HTTPS) не является сложной задачей для опытного пользователя, то полностью анонимное использование возможностей Интернета является чуть более сложной задачей.
Действительно, для анонимного веб-сёрфинга существуют сайты-анонимайзеры и специальные программы по подмене IP-адреса (Mask My Ip (Рисунок 1), HideIP и другие).

Рисунок 1.
На изображении - окно программы Mask My IP. Настоящий IP (Real IP) заменяется липовым (Fake IP). Любой Интернет-ресурс по определению IP-адреса обращающегося к нему компьютера выдаст, что пользователь находится в Судане. К тому же, комизм ситуации в том, что это может быть и Южный Судан, ставший суверенным государством с 9 июля 2011 года, то есть позже выпуска этой версии программы.

Такие программы и веб-ресурсы со сходным функционалом обеспечивают анонимный просмотр веб-страниц, облегчают работу с файлобменными ресурсами, лимитирующими количество скачиваний в некоторый промежуток времени или ещё как-либо, помогают обойти несложную защиту на некоторых ресурсах, например, в случае, если реальный IP-адрес был заблокирован к использованию на них.
Во всех случаях, описанных выше, используется HTTP/HTTPS соединение. Однако иногда возникают более общие случаи - когда необходим не только анонимный веб-сёрфинг, но и анонимное использование программ, использующих Интернет-соединение. При этом в большинстве случаев используется протокол передачи данных SOCKS (SOCKS 4 и SOCKS 5). Для анонимного соединения в рамках работы с такой программой может существовать множество причин: бан реального IP-адреса, защита от потенциальных угроз и другие виды деятельности, требующие анонимности. Далее речь пойдёт об одном из способов организации SOCKS-анонимности: построении цепочек SOCKS-proxy.
Схема построения цепочки SOCKS-прокси в общем виде:
  1. Определение числа прокси-серверов в цепочке (обычно необходимо 3-5 сервера).
  2. Поиск оптимально работающих SOCKS прокси-серверов.
  3. Проверка выбранных SOCKS прокси-серверов на работоспособность.
  4. Соединение с полученной цепочкой.
  5. Использование цепочки программами.
Для построения и использования цепочки SOCKS-прокси нужно необходимое программное обеспечение. Для выстраивания непосредственно самой цепочки будет рассмотрена программа SocksChain (в данном случае - версия 3.0, хотя на текущий момент существуют и более поздние версии). Для перехвата системных вызовов программ и направления их сетевых запросов по цепочке прокси будет рассмотрена программа  SocksCap (версия 2.40).


Первый шаг.
Определение количества прокси-серверов в цепочке зависит от целей и задач, для которых эта цепочка строится. Нужно иметь в виду, что чем больше серверов в цепочке, тем сложнее отследить исходную машину, но при этом есть и отрицательные моменты: снижение скорости передачи данных. Действительно, прокси сервера разбросаны по всему миру и имеют разные пропускные способности каналов и другие параметры. Для обеспечения анонимного веб-сёрфинга и защиты компьютера от возможных атак достаточно одного-двух прокси-серверов в цепочке. Однако если нужно обеспечить более высокую степень анонимности и есть вероятность, что цепочку будут "распутывать" в обратном порядке, с целью найти исходную машину, то желательно использовать от пяти серверов.


Второй шаг.
Несмотря на кажущуюся простоту, найти реально работающий SOCKS прокси-сервер в Интернете не так уж просто. Списков таких серверов достаточно, однако в большинстве случаев представленные в них сервера не работают. Альтернативным вариантом являются платные списки (иногда они называются элитными). Вероятность найти работающий прокси-сервер в таком списке намного выше.


Третий шаг.
В полученном списке прокси-серверов необходимо выделить работающие и не работающие. Это можно сделать как минимум двумя способами. Первый: использовать какой-либо on-line сервис по сканированию списков прокси-серверов. Вот пример достаточно функционального и удобного сервиса (на момент выхода статьи действует): http://cp1251.darkoff.ru/proxychecker/. Второй: использовать специальное программное обеспечение. В частности, в программе SocksChain версии 3.0 имеется Proxy Manager - модуль по тестированию прокси серверов (Рисунок 2).

Рисунок 2.
Тестирование списка SOCKS-прокси в программе SoksChain. Песочные часы слева от адреса сервера означают, что сервер ещё тестируется, если они сменяются белым крестиком в красном кружке, то сервер не работает, если же вместо песочных часов появляется лампочка, то сервер можно использовать - он работает.

В программу SoksChain 3.0 можно также добавлять адреса прокси-серверов вручную (Рисунок 3).

 Рисунок 3.
Для добавления в список прокси-сервера вручную необходимо нажать кнопку "Add" в окне "Proxy manager". Появится окно "Proxy settings". В нём нужно внести необходимую информацию: IP-адрес сервера или его имя,  порт, поставить галочку напротив названий тех протоколов, которые поддерживает сервер. Затем нажать кнопку "OK". Сервер внесён в список.

Четвёртый шаг.
Соединение работающих серверов в цепочку (Рисунок 4). Для этого в программе SoksChain 3.0 в меню "Service" выбрать пункт "New" или использовать комбинацию клавиш <Ctrl>+<N>. Появится окно "Add listener". В поле "Name" нужно ввести название новой цепочки (по умолчанию Chain).  Галочку слева от надписи "Auto-creating chain" нужно снять, если планируется построение цепочки вручную. Далее, из списка серверов справа выбрать работающие (те, которые слева от себя содержат "лампочку"), при этом кнопка "<-" станет активной. При необходимости можно удалить сервер из списка (кнопка "Delete") или править его настройки (кнопка "Edit"). Когда сервера добавлены в список слева, нажать кнопку "OK". Цепочка построена и сохранена, теперь она появится в основном окне программы в левом списке, там же, где находится тестовая цепочка "Test chain".

 Рисунок 4.
Добавление серверов к цепочке.

Пятый шаг.
Использование построенной цепочки SOCKS-прокси какой-либо программой. Для того чтобы пустить трафик от какой либо программы по выстроенной цепочке прокси нужно использовать программу SocksCap. Сначала необходимо в меню "File" выбрать пункт "Settings". Откроется окно "SocksCap Settings" (Рисунок 5). В поле ввода "SOCKS Server" произвести ввод адреса 127.0.0.1 - это адрес localhost, то есть самого компьютера. В поле ввода "Port" ввести порт, выбранный ранее в программе SocksChain 3.0 для соединения с цепочкой прокси. Затем, если всё введено верно, нажать кнопку "OK". Суть в том, что SocksCap будет направлять все сетевые вызовы программы в выбранный порт на localhost, то есть на локальной машине (на самом компьютере), откуда они уже через этот порт пойдут с помощью программы SocksChain 3.0 на цепочку прокси и далее в Интернет.

 Рисунок 5.
Предварительная настройка SocksCap.

Следующим шагом будет запуск программы, сетевые вызовы которой нужно пустить через цепочку прокси, в SocksCap (Рисунок 6). Для этого нужно нажать кнопку "New". Появится окно "New application Profile". В нём нажать кнопку "Browse" и выбрать исполняемый файл нужной программы.Имя профиля по умолчанию - название исполняемого файла выбранной программы. Имя профиля можно изменить при необходимости. Далее нажать кнопку "OK".

 Рисунок 6.
Создание нового профиля программы.

Выбранная программа после этого появится в основном окне SocksCap (Рисунок 7). При её выделении активируются кнопки "Delete", "Modify" и "Run". Кнопка "Delete" позволяет удалить профиль с текущей программой, кнопка "Modify" - изменить настройки (имя профиля и путь к исполняемому файлу программы), кнопка "Run" произведёт запуск программы и теперь все её сетевые вызовы пойдут через выстроенную. цепочку SOKS-proxy.

Рисунок 7.
Выбранная программа в основном окне SocksCap, её можно запускать нажатием кнопки "Run".

Теперь, если все инструкции были выполнены правильно и SOCKS прокси-сервера работают без сбоев, анонимность обеспечена.
Стоит отметить, что есть и другие способы запуска программ с последующей анонимностью их сетевых вызовов: другое программное обеспечение и другие  методы. В качестве примера можно привести программу WideCap - в некотором роде более расширенную версию программы SocksCap, которая, в отличие от SocksCap, является shareware-программой и выполняет свои задачи полноценно только после платной регистрации.

Комментариев нет:

Отправить комментарий