Перейти к основному содержимому
  1. Posts/
  2. Authentik/

Настройка Cloudflare Turnstile для защиты формы входа в Authentik без CAPTCHA

·522 слов·3 минут· loading · loading · ·
Stilicho2011
Автор
Stilicho2011
Пишу о homelab, self-hosting, автоматизации и open-source решениях
Оглавление
Authentik - This article is part of a series.
Part : This Article

Настройка Cloudflare Turnstile в Authentik
#

Cloudflare Turnstile — это современная альтернатива CAPTCHA, которая позволяет защищать формы аутентификации от ботов и атак перебора, не заставляя пользователей разгадывать картинки или вводить символы.

Note

В случае, если вы нашли данную статью полезной и считаете возможным отблагодарить автора, то это можно сделать по соответствующей ссылке на boosty

Note

Cloudflare Turnstile это аналог технологии Captcha, но для пользователей Cloudflare. Если вам нужно настроить именно Captcha, - более подробно можете ознакомиться с настройкой на странице официальной документации

Note

С 1 июля 2025 года в России вступили в силу изменения в законодательстве о персональных данных (ФЗ №152), согласно которым использование Google reCAPTCHA или их аналогов на сайтах, передающих данные за границу, становится нарушением. Необходимо учитывать это ограничение, если вы собираетесь использовать данный сервис в предпринимательской деятельности.


Зачем использовать Cloudflare Turnstile в Authentik
#

По умолчанию Authentik уже обладает неплохой защитой от:

  • brute-force атак;
  • username enumeration;
  • автоматических попыток входа.

Однако при публикации IdP в интернет этого часто бывает недостаточно.

Cloudflare Turnstile позволяет:

  • отсекать ботов ещё до выполнения flow;
  • снизить нагрузку на Authentik;
  • улучшить пользовательский опыт по сравнению с классическими CAPTCHA;
  • повысить общий уровень безопасности без усложнения логики flows.

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

Визуально это выглядит как-то так

Authentik login screen

Требования
#

Перед началом убедитесь, что:

  • у вас есть аккаунт в Cloudflare;
  • домен, на котором доступен Authentik, добавлен в Cloudflare.

К сожалению обязательные требования для использования этой технологии.


Создание Turnstile в Cloudflare
#

  1. Перейдите в панель Cloudflare.
  2. Откройте раздел Protect & Connect > Turnstile.
  3. Нажмите Add Widget.
  4. Укажите:
    • Widget name — произвольное имя (например authentik-login);
    • Add Hostname > Domains — домен, на котором работает Authentik;
    • Widget mode — Managed (рекомендуется для дома).
    • Pre-Clearance Mode - Yes
    • Level of pre-clearance - interactive
Note

Последние два пункта меняйте так как вы считаете нужным в зависимости от ваших потребностей и паранойи.

Authentik login screen

После создания вы получите:

  • Site Key
  • Secret Key

Можете их скопировать, но Cloudlfare заботливо указывает, что вы всегда сможете повторно получить к ним доступ

Authentik login screen

Создание Captcha Stage в Authentik
#

Настройка этапа в Authentik
#

Теперь переходим к настройке в Authentik.

  1. Откройте админ-панель Authentik.
  2. Перейдите в Flows and StagesStages.
  3. Нажмите Create.
  4. Выберите Captcha Stage.
Authentik login screen
  1. Задайте имя этапу
  2. В типе проверки выберите Cloudflare Turnstile.
  3. В разделе Public key и Private Key укажите значения, которые мы получили у Cloudflare.
  4. Галку Interactive можно оставить включенной, если Turnstile у вас сконфигурирован как Invisible или Managed
    Authentik login screen

В разделе Advanced Settings ничего не трогаем. В актуальной на дату написания статьи версии Authentik корректные значения уже автоматом прописаны. Раньше нужно было их вставлять руками. Более подробно можно ознакомиться на сайте с официальной документацией

Authentik login screen
  1. Finish

Интеграция Turnstile этапа в основной поток аутентификации и авторизации
#

  1. Откройте админ-панель Authentik.
  2. Перейдите в Flows and StagesFlowsdefault-authentication-flow.
  3. Выберите Stage BindingsBind Existing Stage
  4. Выбираем вновь созданный этап.
  5. Выбираем порядок обработки Turnstile этапа после этапа аутентификации, но до этапа ввода пароля.
  6. Выберите evaluate when flow is planned.
  7. Create
Authentik login screen

Теперь мы интегрировали этап “капчи” при аутентификации в Authentik.

Authentik login screen
Tip

В панели Turnstile на сайте Cloudflare вы сможете посмотреть аналитику по работе этого виджета

Authentik login screen
Authentik login screen
Authentik - This article is part of a series.
Part : This Article

Related

Черновик

Отключение паролей и двухфакторной аутентификации для локальных пользователей в Authentik

·373 слов·2 минут· loading · loading
Пошаговое руководство по отключению паролей и двухфакторной аутентификации для локальных пользователей Authentik: настройка authentication flow, stages, policies и рекомендации по безопасному использованию