Мониторинг
Cloudflare, WAF и файрволы
Как добавить проверки Tenium в белый список в Cloudflare WAF, Wordfence, Sucuri и серверных файрволах, не открывая сайт для всех.
Tenium представляется в каждом запросе:
User-Agent: Tenium-Monitor/1.0 (+https://tenium.app/bots)
На тарифах Pro и выше к каждому монитору можно добавить собственный заголовок. Рекомендуем x-tenium-secret: <random>. В правилах разрешения используйте оба вместе.
Пользовательское правило Cloudflare WAF
Security → WAF → Custom rules → Create rule, редактор выражений:
(http.user_agent contains "Tenium-Monitor/1.0") and (http.request.headers["x-tenium-secret"][0] eq "YOUR_SECRET")
Действие Skip, компоненты: All managed rules, Rate limiting rules, Bot Fight Mode. Если у вас Super Bot Fight Mode, установите для «Definitely automated» значение Allow, иначе проверки всё равно могут попадать под challenge.
При желании добавьте условие по IP из списка на странице /checker-ips:
and (ip.src in {164.92.217.216})
Ограничение частоты запросов в Cloudflare
Каждый работающий регион с интервалом 30 секунд отправляет 2 запроса в минуту на один адрес. Если монитор использует все 2 работающих регионов, это примерно 4 запросов в минуту. Если ваш лимит ниже, добавьте правило Skip, приведённое выше, или поднимите лимит для отслеживаемого адреса.
Wordfence
Firewall → Allowlisted URLs не учитывает User-Agent. Вместо этого воспользуйтесь Rate limiting → Allowlisted IPs и вставьте IP-адреса чекеров. Также установите для «If a crawler’s page views exceed» значение выше 12 в минуту или выберите «throttle» вместо «block».
Sucuri
Firewall → Access control → Allow IP addresses, вставьте IP-адреса чекеров. Или разрешите User-Agent в разделе Security → Allow user agents.
nginx / Apache / fail2ban
Разрешите IP-адреса чекеров до любого правила ограничения частоты или блокировки по геолокации. Пример для nginx:
geo $tenium { default 0; 164.92.217.216 1; }
map $tenium $limit_key { 0 $binary_remote_addr; 1 ""; }
limit_req_zone $limit_key zone=site:10m rate=10r/s;
Для fail2ban добавьте IP-адреса в ignoreip в jail.local.
Проверка
Откройте монитор, нажмите Check now и убедитесь, что каждый регион показывает ожидаемый статус. В Cloudflare раздел Security → Events с фильтром по вашему правилу показывает пропуски, которые приходят с IP-адресов чекеров.