TL; DR
ASP. NET Приложение + Kestrel + Самоподписанный сертификат + Сервер, подключенный к Inte rnet = Успешные ответы
ASP. NET Приложение + Kestrel + Самозаверяющий сертификат + С прокси = Успешные ответы
ASP. NET Приложение + Kestrel + Самозаверяющий сертификат + Нет Inte rnet = Успешные ответы
ASP. NET Приложение + Kestrel + Подписанный сертификат доверенного центра + Сервер, подключенный к Inte rnet = Успешные ответы
ASP. NET Приложение + Kestrel + Подписанный сертификат доверенного органа + С прокси = Успешные ответы
ASP. NET Приложение + Kestrel + Подписанный сертификат доверенного центра + Нет Inte rnet = Неудачные ответы (Как я могу это исправить?)
Длинная версия:
Мы пытаемся запустить проект ASP. NET Core с поддержкой SSL в контейнере Docker. Мы создали сертификат, подписанный доверенным центром. Сертификат в порядке. Мы можем запустить приложение на сервере с доступом inte rnet.
Проблема заключается в следующем: когда мы пытаемся запустить это приложение на сервере без rnet доступа, запросы, которые мы делаем к этому приложение выдает таймауты (примерно через 20 секунд). Более того, в этой ситуации нет журнала ASP. NET.
У нас есть внутренний прокси-сервер для подключения к inte rnet. Когда мы устанавливаем значения среды http_proxy и https_proxy в контейнере Docker с этим прокси, наше приложение работает нормально.
Мы сделали еще одну попытку с самоподписанным сертификатом, и результат снова был успешным: мы можем делать запросы и получать ответы от нашего приложения с помощью самозаверяющего сертификата.
Думаю, Kestrel что-то просматривает через Inte rnet с сертификатом доверенного органа. Итак, мои вопросы таковы:
- Что именно Kestrel ищет через Inte rnet?
- Как я могу заставить Kestrel не требовать подключения Inte rnet? Я имею в виду, как мы можем запустить наше приложение без использования нашего прокси-сервера, а также без прямого соединения Inte rnet?