Поделиться через


Создание прокси-сервера пересылки с помощью маршрутизации запросов приложений

Джим ван де Эрв

В этой статье показано, как использовать функции маршрутизации запросов приложений (ARR) и переопределения URL-адресов служб IIS для реализации прокси-сервера пересылки.

Общие сведения

Маршрутизация запросов приложений — это функция СЛУЖБ IIS, которая позволяет управлять интернет-трафиком с помощью прокси-сервера. Прокси-сервер выступает в качестве единой точки контакта, обслуживающей клиентов на стороне запроса или рабочих ролей веб-сервера на стороне ответа. На стороне запроса прокси-сервер принимает запрос от одного из нескольких клиентов и пересылает его в Интернет. В Интернете запрос, как представляется, поступает от прокси-сервера, а не от клиента. На стороне ответа прокси-сервер принимает запрос из Интернета и распространяет его на одну из нескольких рабочих ролей. В Интернете запрос обрабатывается, а ответ создается самим прокси-сервером, а не одной из серверных рабочих ролей.

Первый тип прокси-сервера, который обрабатывает исходящий запрос от клиента, пересылает его в Интернет и возвращает клиенту сгенерированный ответ, называется прокси-сервером пересылки. Второй тип прокси-сервера, который обрабатывает входящий запрос из Интернета, пересылает его серверной рабочей роли и возвращает ответ в Интернет, называется обратным прокси-сервером.

Прямая и обратная прокси-серверы

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

ARR в качестве прокси-сервера пересылки

Когда ARR выступает в качестве прокси-сервера пересылки, он является частью внутренней сети (или интрасети) клиентских компьютеров. Прокси-сервер использует правило переопределения URL-адресов для передачи запросов от клиентов через Интернет. ARR в качестве прокси-сервера пересылки можно использовать для повышения использования пропускной способности и производительности путем кэширования; однако он не подходит в качестве полноценного прокси-сервера коммерческого уровня.

Обратите внимание, что ARR обрабатывает только HTTP-трафик, но не другие протоколы. ARR не поддерживает команду HTTP CONNECT и, как следствие, не поддерживает перенаправление трафика HTTPS.

ARR в качестве прокси-сервера пересылки

При получении запроса от одного из клиентов, именующего целевой веб-сервер, прокси-сервер пересылки обрабатывает запрос следующим образом и пересылает его через брандмауэр в Интернет:

  1. Прокси-сервер пересылки получает запрос от клиента и проверяет его допустимость.
  2. Если запрос действителен, ARR проверяет его кэш, чтобы узнать, находится ли там уже ответ. Если он находит ответ, ARR возвращает его клиенту, не отправляя запрос в Интернет.
  3. Если ARR не находит ответ в кэше, прокси-сервер отправляет запрос через брандмауэр на подключение к Интернету и на сервер содержимого, на который есть информация.
  4. Когда запрос выполняется сервером содержимого, ответ возвращается через Интернет на прокси-сервер пересылки. ARR можно настроить для кэширования ответа.

Прокси-сервер пересылки обеспечивает следующие преимущества:

  • Повышает производительность и уменьшает сетевой трафик за счет кэширования сведений, которые запрашивают регулярно (если они включены). Он кэширует ответ для первого инициатора запроса, и когда последующие клиенты запрашивают то же содержимое, они получают содержимое из кэша. Ответ больше не запрашивается с сервера содержимого.
  • Помогает повысить безопасность сети, гарантируя, что запросы являются допустимыми.
  • Повышает производительность с помощью сжатия IIS (если включено).
  • Поддерживает фильтрацию для обеспечения соблюдения политик с использованием переопределения URL-адресов.

Установка и настройка ARR в качестве прокси-сервера пересылки

Предварительные требования

Чтобы настроить прокси-сервер пересылки с помощью ARR, необходимо следующее:

  • СЛУЖБЫ IIS 7.0 или более поздней версии в Windows 2008 (любой номер SKU) или более поздней версии со службой роли трассировки, установленной для IIS.
  • Маршрутизация запросов приложений Майкрософт версии 3 и зависимые модули
  • Минимум один рабочий сервер с рабочими сайтами и приложениями.

Установка ARR

Если служба "Маршрутизация запросов приложений" версии 3 не установлена, ее можно скачать здесь. Сайт загрузки, отображаемый по этой ссылке, содержит инструкции по установке.

Установка переопределения URL-адресов

Установите модуль переопределения URL-адресов для IIS с помощью диспетчер сервера. Дополнительные сведения см. в статье Установка IIS 8.5 на Windows Server 2012 R2.

Настройка ARR в качестве прокси-сервера пересылки

Чтобы включить ARR в качестве прокси-сервера и создать правило переопределения URL-адресов для включения ARR в качестве прокси-сервера пересылки, выполните следующие действия:

  1. Откройте диспетчер служб IIS.

  2. В области Подключения выберите сервер.

  3. На панели сервера дважды щелкните кэш маршрутизации запросов приложений. Значок кэша ARR

  4. В области Действия щелкните Параметры прокси-сервера. Параметры прокси-сервера

  5. На странице Маршрутизация запросов приложений выберите Включить прокси-сервер. Включение прокси-сервера

  6. В области Действия нажмите кнопку Применить. Это позволяет включить ARR в качестве прокси-сервера на уровне сервера. Включение ARR в качестве прокси-сервера

  7. Чтобы начать процесс превращения ARR в прокси-сервер пересылки, щелкните узел сервера на панели Подключения .

  8. В области сервера дважды щелкните url-адрес Переопределение. Переопределение URL-адресов

  9. В области Действия щелкните Добавить правила. Добавление правила

  10. В диалоговом окне Добавление правила дважды щелкните Пустое правило. Пустое правило

  11. В диалоговом окне Изменение правила для входящего трафика введите "Переадресация прокси- сервера" в поле Имя. В области Сопоставить URL-адрес введите следующее:

    • Использование: подстановочные знаки
    • Узор:*

    Снимок экрана: диалоговое окно

  12. Прокрутите вниз до области Условия диалогового окна Изменение правила входящего трафика и нажмите кнопку Добавить.... Добавить условие

  13. В диалоговом окне Добавление условия выберите или введите следующее:

    • Входные данные условия: {HTTP_HOST}
    • Тип: соответствует шаблону
    • Узор:*

    Изменение правила входящего трафика

  14. Прокрутите вниз до области Действие диалогового окна Изменение правила входящего трафика и введите следующее:

    • Тип действия: перезапись
    • Переписать URL-адрес: http://{C:1}/{R:0}

    Снимок экрана: диалоговое окно

  15. В области Действия нажмите кнопку Применить.

    Примечание

    Это правило разрешает передачу http-сообщений через прокси-сервер пересылки. Сообщения HTTPS (443) не поддерживаются на этом прокси-сервере пересылки, так как ARR не поддерживает HTTP CONNECT.

  16. Настройте параметры прокси-сервера соответствующим образом в приложениях, браузерах и т. д.