Анонимность proxy: информация о прозрачных , искажающих и анонимных proxy.
Обмен информацией в Internet осуществляется по модели "клиент-сервер".
Клиент посылает запрос (какие файлы ему нужны), а сервер посылает ответ
(запрошенные файлы). Для тесного взаимодействия (так сказать, "полного
взаимопонимания") между клиентом и сервером клиент посылает дополнительную
информацию о себе: версию и название операционной системы, конфигурацию
браузера (включая название и номер версии Вашего браузера) и т.д. Эта
информация может быть необходима серверу, чтобы знать какую web страницу
предоставить клиенту: для разных конфигураций браузеров могут быть разные
варианты web-страниц. Однако, поскольку обычно содержимое web страниц
не зависят
от браузеров, имеет смысл скрыть от web сервера часть этой информации.
Какая информация передается web серверу (эту информацию в основном
передает браузер, однако часть информации может добавлять от себя прокси
сервер):
- название и версия операционной системы
- название и версия браузера
- настройки браузера (разрешение экрана, глубина цвета, поддержка java
/ javascript, ...)
- IP адрес клиента (если используется proxy, то заменяется proxy сервером
на IP proxy)
- используется ли proxy сервер (если используется proxy, то IP клиента
- это IP proxy) - добавляется proxy сервером
- если используется proxy, то Ваш реальный IP адрес - добавляется proxy
сервером
- другая информация
Важнейшей частью этой информации (и "совершенно ненужной"
web серверу) является информация о IP адресе и о факте использования proxy.
Ведь используя Ваш IP, о Вас можно узнать
очень многое:
- страну, где Вы находитесь
- город
- название Вашего провайдера и его e-mail
- Ваш физический адрес! (иногда)
Информация, передаваемая клиентом серверу, доступна для сервера в виде
так называемых переменных окружения (environment variables).
Каждая единица этой информации является значением какой-либо переменной.
Если же какая-то часть информации не передается, то соответствующая ей
переменная будет пустая (ее значение будет неопределенным).
Какие бывают переменные окружения:
REMOTE_ADDR - IP адрес клиента
HTTP_VIA - если не пустая, значит
используется proxy. Значение - адрес (или несколько адресов) proxy сервера.
HTTP_X_FORWARDED_FOR - если не
пустая, значит используется proxy. Значение - реальный IP адрес клиента
(Ваш IP).
HTTP_ACCEPT_LANGUAGE - какой язык используется в браузере
по умолчанию (на каком языке лучше отображать страницу)
HTTP_USER_AGENT - так называемый "агент пользователя".
Для большинства браузеров это будет Mozilla. Кроме того, тут же указывается
название и версия браузера (например MSIE 5.5) и операционная система
(например Windows 98)
HTTP_HOST - имя web-сервера.
Здесь перечислена лишь малая часть переменных окружения. На самом деле
их гораздо больше (DOCUMENT_ROOT, HTTP_ACCEPT_ENCODING, HTTP_CACHE_CONTROL,
HTTP_CONNECTION, SERVER_ADDR, SERVER_SOFTWARE, SERVER_PROTOCOL, ...)
и их количество может зависеть от конфигурации (настроек) как сервера,
так
и клиента.
Пример значений переменных:
REMOTE_ADDR = 194.85.1.1
HTTP_ACCEPT_LANGUAGE = ru
HTTP_USER_AGENT = Mozilla/4.0 (compatible; MSIE 5.0; Windows 98)
HTTP_HOST = www.webserver.ru
HTTP_VIA = 194.85.1.1 (Squid/2.4.STABLE7)
HTTP_X_FORWARDED_FOR = 194.115.5.5
Анонимность при работе в Internet определяется тем, какие из переменных
окружения "скрываются" от web сервера.
Для фильтрования передаваемой серверу информации существуют системы, называемые
Firewall (брандмауэры). Proxy сервер также может выполнять (в определенной
степени) роль Firewall, "удаляя" информацию о IP адресе клиента.
Если proxy сервер не используется, то переменные окружения
выглядят следующим образом:
REMOTE_ADDR = Ваш IP
HTTP_VIA = не определена
HTTP_X_FORWARDED_FOR = не определена
По тому, какие переменные окружения подменяют / "скрывают"
proxy серверы, существуют несколько видов proxy.
Они не скрывают информацию о Вашем IP адресе:
REMOTE_ADDR = IP proxy
HTTP_VIA = IP или имя proxy (используется proxy сервер)
HTTP_X_FORWARDED_FOR = Ваш IP
Функцией таких proxy серверов не является повышение Вашей анонимности
в Internet. Они предназначены для кэширования информации, организации
совместного доступа в Internet нескольких компьютеров и т.д.
Все proxy серверы, тем или иным способом скрывающие IP адрес клиента,
называют анонимными. Хотя существуют несколько вариантов анонимных proxy,
как правило, говоря "анонимный proxy сервер" имеют в виду их
все, не различая подвиды.
Эти proxy серверы не скрывают того факта, что используется proxy, однако
они подменяют Ваш IP на свой:
REMOTE_ADDR = IP proxy
HTTP_VIA = IP или имя proxy (используется proxy сервер)
HTTP_X_FORWARDED_FOR = IP proxy
Эти proxy наиболее распространены из всех видов анонимных proxy серверов.
Как и простые анонимные proxy серверы, эти proxy не скрывают того факта,
что используется proxy сервер. Однако IP адрес клиента (Ваш) подменяется
на другой (в общем случае произвольный, случайный) IP:
REMOTE_ADDR = IP proxy
HTTP_VIA = IP или имя proxy (используется proxy сервер)
HTTP_X_FORWARDED_FOR = случайный IP
В отличие от других видов анонимных
proxy серверов элитные прокси скрывают даже сам факт использования прокси
сервера:
REMOTE_ADDR = IP proxy
HTTP_VIA = не определена
HTTP_X_FORWARDED_FOR = не определена
То есть значения этих переменных такие же, как и в ситуации, когда proxy
не используется, за исключением очень важной "мелочи": вместо
Вашего IP адреса стоит IP адрес proxy сервера.
В зависимости от целей, с которыми они создавались, существуют прозрачные
и анонимные proxy. Однако учтите, что используя анонимный proxy, Вы скрываете
от web сервера только Ваш IP, а вся остальная информация (о конфигурации
браузера) остается доступной!
Сайт, где есть рабочие прокси-листы: www.proxy-list.org
Читать ещё статьи:
Ваши комментарии