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


Использование Kestrel с обратным прокси-сервером

Примечание.

Это не последняя версия этой статьи. В текущем выпуске см . версию .NET 8 этой статьи.

Предупреждение

Эта версия ASP.NET Core больше не поддерживается. Дополнительные сведения см. в статье о политике поддержки .NET и .NET Core. В текущем выпуске см . версию .NET 8 этой статьи.

Внимание

Эта информация относится к предварительному выпуску продукта, который может быть существенно изменен до его коммерческого выпуска. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.

В текущем выпуске см . версию .NET 8 этой статьи.

Kestrel можно использовать самостоятельно или с обратным прокси-сервером. Обратный прокси-сервер получает HTTP-запросы из сети и пересылает их в Kestrel. Примеры обратных прокси-серверов:

Kestrel используется в качестве пограничного (с выходом в Интернет) веб-сервера:

Kestrel обмен данными напрямую с Интернетом без обратного прокси-сервера

Kestrel используется в конфигурации обратного прокси-сервера.

Kestrel взаимодействует косвенно с Интернетом через обратный прокси-сервер, например IIS, Nginx или Apache.

Любая из этих конфигураций — с обратным прокси-сервером и без него — является поддерживаемой конфигурацией для размещения.

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

Даже если обратный прокси-сервер не требуется, его использование может оказаться удобным.

Обратный прокси-сервер:

  • Может ограничить общедоступную контактную зону размещенных на нем приложений.
  • Предоставляет дополнительный уровень конфигурации и глубокой кибербезопасности.
  • Может лучше интегрироваться с существующей инфраструктурой.
  • Упрощает балансировку нагрузки и настройку безопасного взаимодействия (HTTPS). Только обратный прокси-сервер требует сертификата X.509 для общедоступного домена. Этот сервер может взаимодействовать с серверами приложения во внутренней сети с помощью обычного HTTP или HTTPS с локальными управляемыми сертификатами. Внутренний ПРОТОКОЛ HTTPS повышает безопасность, но добавляет значительные издержки.

Предупреждение

Для размещения в конфигурации обратного прокси-сервера требуется фильтрация узлов.

Дополнительные ресурсы

Настройка ASP.NET Core для работы с прокси-серверами и подсистемами балансировки нагрузки