Компьютерные сети. Принципы, технологии, протоколы - [395]

Шрифт
Интервал

Прокси-серверы прикладного уровня и уровня соединений

Прокси-серверы могут выполнять свою посредническую миссию на разных уровнях.

ПРИМЕР-АНАЛОГИЯ -

Рассмотрим пример, иллюстрирующий идею посредничества разного уровня. Для покупки акций инвестор (в нашем случае аналог клиентской части приложения) может прибегнуть к посредническим услугам брокера или 1рейдера. Брокер, точно следуя указаниям инвестора, покупает для него определенное количество акций определенного типа по определенной цене. Трейдер — это посредник более высокого уровня, которому инвестор поручает самостоятельно принимать решения о необходимых покупках, учитывая различные факторы, например состояние рынка.

Различают прокси-серверы прикладного уровня и уровня соединений.

Прокси-сервер прикладного уровня, как это следует из его названия, умеет «вклиниваться» в процедуру взаимодействия клиента и сервера по одному из прикладных протоколов, например тому же HTTP, HTTPS>> SMTP/POP, FTP или telnet. Чтобы выступать в роли посредника на прикладном уровне, прокси-сервер должен «понимать» смысл команд, «знать» форматы и последовательность сообщений, которыми обмениваются клиент и сервер соответствующей службы. Это дает возможность прокси-серверу проводить анализ содержимого сообщений, делать заключения о подозрительном характере того или иного сеанса.

Прокси-сервер уровня соединений выполняет свою посредническую миссию на транспортном уровне, контролируя TCP-соединение. Очевидно, что работая на более низком уровне, прокси-сервер обладает гораздо меньшим «интеллектом» и имеет меньше возможностей для выявления и предупреждения атак. Однако он обладает одним очень важным преимуществом перед прокси-сервером прикладного уровня — универсальностью, то есть он может быть использован любыми приложениями, работающими по протоколу TCP (а в некоторых случаях и UDP).

Примером прокси-сервера данного типа является разработанный достаточно давно, но все еще широко применяемый сервер SOCKS (от SOCKetS).

В простейшей версии протокола SOCKS V4>84> клиент обменивается с прокси-сервером SOCKS двумя сообщениями: запросом клиента SOCKS-серверу и ответом SOCKS-сервера клиенту.

□ Запрос клиента SOCKS-серверу:

О поле 1 — номер версии SOCKS, 1 байт (для этой версии — 4);

G поле 2 — код команды, 1 байт (для установки соединения TCP/IP код равен 1);

О поле 3 — номер порта, 2 байта (TCP-порт запрашиваемого пользователем ресурсного сервера, например, для 21 для FTP);

О поле 4 — 1Р-адрес, 4 байта (IP-адрес ресурсного сервера);

О поле 5 — идентификатор пользователя (строка переменной длины, завершаемая байтом null).

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

□ Ответ SOCKS-сервера клиенту:

О поле 1 — байт null;

О поле 2 — код ответа, 1 байт (применяются коды для следующих вариантов ответа: запрос разрешен, запрос отклонен или ошибочен, запрос не удался из-за проблем с идентификацией пользователя);

О несколько байтов, игнорируемых клиентом.

Если прокси-сервер сообщил в ответе, что запрос разрешен, то SOCKS-сервер начинает работать промежуточном звеном между клиентом и сервером (например, FTP), контролируя поток квитанции, которыми они обмениваются.

«Проксификация» приложений

Заметим, что не каждое приложение, построенное в архитектуре клиент-сервер, непременно должно работать через прокси-сервер, а также не каждое из них имеет возможность работать через прокси-сервер.

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

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

«Проксификация» приложения, изначально не рассчитанного на работу через проки-сервер, требует изменения исходного кода с последующей перекомпиляцией — очевидно, что такая работа не представляет сложностей для разработчиков данного приложения, но не всегда под силу обслуживающему персоналу сети. Задача последних заключается в приобретении готовых приложений, совместимых с используемым в сети прокси-сервером. Однако даже приобретение готового «проксифицированного» клиента не делает его готовым к работе — необходимо еще конфигурирование, в частности нужно сообщить клиенту адрес узла сети, на котором установлен соответствующий прокси-сервер.


Рекомендуем почитать
Россия и Дон. История донского казачества 1549—1917

Предлагаем вашему вниманию адаптированную на современный язык уникальную монографию российского историка Сергея Григорьевича Сватикова. Книга посвящена донскому казачеству и является интересным исследованием гражданской и социально-политической истории Дона. В работе было использовано издание 1924 года, выпущенное Донской Исторической комиссией. Сватиков изучил колоссальное количество монографий, общих трудов, статей и различных материалов, которые до него в отношении Дона не были проработаны. История казачества представляет громадный интерес как ценный опыт разрешения самим народом вековых задач построения жизни на началах свободы и равенства.


Император Алексей Ι Комнин и его стратегия

Монография доктора исторических наук Андрея Юрьевича Митрофанова рассматривает военно-политическую обстановку, сложившуюся вокруг византийской империи накануне захвата власти Алексеем Комнином в 1081 году, и исследует основные военные кампании этого императора, тактику и вооружение его армии. выводы относительно характера военно-политической стратегии Алексея Комнина автор делает, опираясь на известный памятник византийской исторической литературы – «Алексиаду» Анны Комниной, а также «Анналы» Иоанна Зонары, «Стратегикон» Катакалона Кекавмена, латинские и сельджукские исторические сочинения. В работе приводятся новые доказательства монгольского происхождения династии великих Сельджукидов и новые аргументы в пользу радикального изменения тактики варяжской гвардии в эпоху Алексея Комнина, рассматриваются процессы вестернизации византийской армии накануне Первого Крестового похода.


Продолжим наши игры+Кандибобер

Виктор Пронин пишет о героях, которые решают острые нравственные проблемы. В конфликтных ситуациях им приходится делать выбор между добром и злом, отстаивать свои убеждения или изменять им — тогда человек неизбежно теряет многое.


Краткая история насекомых. Шестиногие хозяева планеты

«Любая история, в том числе история развития жизни на Земле, – это замысловатое переплетение причин и следствий. Убери что-то одно, и все остальное изменится до неузнаваемости» – с этих слов и знаменитого примера с бабочкой из рассказа Рэя Брэдбери палеоэнтомолог Александр Храмов начинает свой удивительный рассказ о шестиногих хозяевах планеты. Мы отмахиваемся от мух и комаров, сражаемся с тараканами, обходим стороной муравейники, что уж говорить о вшах! Только не будь вшей, человек остался бы волосатым, как шимпанзе.


Историческое образование, наука и историки сибирской периферии в годы сталинизма

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


Технологии против Человека. Как мы будем жить, любить и думать в следующие 50 лет?

Эксперты пророчат, что следующие 50 лет будут определяться взаимоотношениями людей и технологий. Грядущие изобретения, несомненно, изменят нашу жизнь, вопрос состоит в том, до какой степени? Чего мы ждем от новых технологий и что хотим получить с их помощью? Как они изменят сферу медиа, экономику, здравоохранение, образование и нашу повседневную жизнь в целом? Ричард Уотсон призывает задуматься о современном обществе и представить, какой мир мы хотим создать в будущем. Он доступно и интересно исследует возможное влияние технологий на все сферы нашей жизни.