Назад | Перейти на главную страницу

Подтверждение происхождения с помощью CloudFlare и IIS

Я запускаю Windows Server 2012 R2 с CloudFlare впереди и пытаюсь настроить аутентификацию источника, как указано здесь -

https://support.cloudflare.com/hc/en-us/articles/204899617

Проблема, с которой я сталкиваюсь, заключается в том, что даже после выполнения шагов по включению аутентификации сертификата клиента я все еще получаю 403 Forbidden Access при попытке попасть на сайт через CloudFlare. Я использовал часть руководства здесь для настройки вещей в IIS -

https://support.microsoft.com/en-us/kb/315588

Я сделал следующие шаги:

  1. Включены аутентифицированные исходные запросы в учетной записи CloudFlare
  2. Настройки IIS SSL -> Требовать SSL + клиентские сертификаты: Требовать
  3. Редактор конфигурации -> iisClientCertificateMappingAuthentication
    1. включен -> True
    2. oneToOneMappings -> Добавить -> Действительное имя пользователя / пароль Windows + сертификат, прикрепленный к нижней части статьи поддержки CloudFlare выше

Кажется, я где-то пропустил шаг?

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

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

Чтобы действительно разрешить определенные сертификаты (подписанные сертификатом CloudFlare), должен быть какой-то другой метод, я предполагаю, что сопоставление сертификатов «многие к одному» в IIS.

Изменить 2: это сработало нормально, добавлено новое правило сопоставления «многие к одному» и сопоставлены все клиентские сертификаты, выданные доверенным корневым сертификатом CloudFlare, моему пользователю Интернета / Windows.