как работает http прокси? - PullRequest
       3

как работает http прокси?

52 голосов
/ 23 августа 2011

Я искал в Интернете что-то о http-прокси. Я читаю вики-статьи о прокси-сервере. Но я все еще не понимаю, как работает http-прокси, тупой.

Вот мое предположение о том, как работает http-прокси: Если я установлю http-прокси на определенный, скажем, Proxy_A, то при запуске chrome / IE введите конкретный URL, скажем, URL_A, отправляет ли chrome / IE запрос непосредственно в Proxy_A, тогда Proxy_A отправляет запрос на реальный сервер URL_A?

Ответы [ 2 ]

67 голосов
/ 28 февраля 2012

HTTP-прокси говорит по протоколу HTTP, он специально создан для HTTP-соединений, но может использоваться и для других протоколов (что уже является своего рода стандартом)

Браузер (КЛИЕНТ) отправляет GET http://SERVER/path HTTP/1.1 ПРОКСИ
Теперь ПРОКСИ перенаправит фактический запрос на СЕРВЕР.
СЕРВЕР будет видеть ПРОКСИ только как соединение и ответ ПРОКСИ так же, как КЛИЕНТУ.
ПРОКСИ получает ответ и пересылает его обратно КЛИЕНТУ.

Это прозрачный процесс и почти как прямое общение с сервером, так что браузеру просто не нужно создавать HTTP-прокси.
Есть несколько дополнительных заголовков, которые могут быть отправлены для идентификации клиента, чтобы показать, что он использует прокси.
Прокси иногда изменяют / добавляют контент в потоке данных для различных целей.
Например, некоторые прокси включают ваш реальный IP-адрес в специальный HTTP-заголовок, который может быть зарегистрирован на стороне сервера или перехвачен в их сценариях.

CLIENT <---> PROXY <---> SERVER

Обновление:
Относительно использования прокси в качестве функции безопасности / конфиденциальности
Как вы можете видеть в ascii выше, прямой связи между КЛИЕНТОМ и СЕРВЕРОМ нет. Обе стороны просто разговаривают с ПРОКСИ между ними.
В современных мирах КЛИЕНТ часто является браузером, а СЕРВЕР часто является веб-сервером (например, Apache).

В такой среде пользователи часто доверяют ПРОКСИ, чтобы они были безопасными и не теряли свою личность.
Однако существует множество возможных способов разрушить эту модель безопасности из-за сложных программных сред, работающих в браузере.
Например, апплеты Flash или Java являются прекрасным примером того, как может быть разорвана прокси-связь, Flash и Java могут не заботиться о настройках прокси родительского приложения (браузера).
Другим примером являются запросы DNS, которые могут достигать сервера имен назначения без PROXY в зависимости от PROXY и настроек приложения.
Другим примером могут быть файлы cookie или мета-след вашего браузера (разрешение, время ответа, пользовательский агент и т. Д.), Которые могут идентифицировать вас, если веб-сервер уже знает вас из прошлого (или встретит вас снова без прокси-сервера).

И, наконец, самому доверенному лицу нужно доверять, так как он может читать все данные, проходящие через него, и, кроме того, он может даже нарушить вашу безопасность SSL (читай человека в середине) *

Где взять прокси от
Прокси можно купить как услугу, отсканировать или просто запустить самостоятельно.

Публичные прокси
Это наиболее часто используемые прокси, и обычный термин «публичный» вводит в заблуждение.
Лучшим термином будет «открытые прокси». Если вы используете прокси-сервер без брандмауэра или аутентификации, любой человек в мире сможет найти его и злоупотребить им.
Подавляющее большинство компаний, продающих прокси, просто сканируют Интернет на наличие таких прокси или используют взломанные компьютеры с Windows (бот-сети) и продают их в основном за незаконную / спам-активность. В большинстве современных стран использование открытого прокси-сервера без разрешения считается злоупотреблением, это очень распространенная вещь, но на самом деле это может привести к тюремному заключению.
Можно сканировать прокси, ища в Интернете открытые порты, типичная бесплатная программа будет https://nmap.org
В качестве предостережения: при более широкомасштабном сканировании интернет-соединение почти наверняка будет заблокировано вашим интернет-провайдером.

Платные прокси
Здесь у нас есть 4 типа прокси:
1) Платные публичные (открытые) прокси
По сути, эти продавцы продают или перепродают огромные списки прокси, которые регулярно обновляются для удаления мертвых.
Прокси-серверы злоупотребляют в огромных масштабах и обычно помещаются в черный список на большинстве сайтов, включая Google.
Дополнительные прокси обычно очень нестабильны и очень медленны.
Подавляющее большинство этих прокси просто злоупотребляют неправильно настроенными серверами. Это очень конкурентный «рынок», Google приведёт множество примеров.

2) Платные взломанные (ботнет) прокси
Это злоупотребляющие компьютеры, в основном интернет-компьютеры или рабочие столы с Windows в качестве прокси-серверов. Злоумышленники используют их в больших масштабах для различных незаконных целей.
Продавцы обычно называют их «жилыми доверенными лицами», чтобы скрыть их незаконный характер.
Использование такого прокси-сервера, без сомнения, незаконно, и злоупотребляющий пользователь может легко зарегистрировать «ваш» IP-адрес, если вы подключитесь к нему, включая возможность перехватить ваше соединение с пунктом назначения.
В зависимости от источника, эти IP-адреса не занесены в черный список, поэтому «качество» намного лучше, чем у публичных прокси.

3) Платные общие прокси
Это прокси центров обработки данных, обычно легальные и потенциальные с быстрым восходящим каналом.
Из-за того, что на эти IP-адреса распространено так много спама в электронной коммерции, они подвергаются массовому злоупотреблению и обычно содержатся в черных списках.
Типичное использование - обход ограничений или географических ограничений.

4) Платные частные / выделенные прокси
«частный» означает посвященный. Если оператор профессионал, это означает, что ваш прокси не передан другим людям.
Они часто используются для более профессиональной и юридической деятельности, особенно когда прокси-сервер IP сдается в аренду на более длительный период.
Хорошо известным оператором будет https://us -proxies.com

Собственные прокси
Запуск собственного прокси также возможен, доступны различные проекты с открытым исходным кодом.
Наиболее часто используемый прокси-сервер: https://squid -cache.org

13 голосов
/ 30 января 2016

Чтобы добавить к замечательному ответу Джона выше, одним из важных шагов является первоначальное рукопожатие CONNECT между PROXY и КЛИЕНТОМ.Из Websocket RFC

CONNECT example.com:80 HTTP/1.1
Host: example.com

Это тот же запрос, который КЛИЕНТ использует для открытия туннеля SSL, который по существу использует прокси

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...