О мониторе Vitrina Engine

Если вы это читаете, значит нечто, представляющееся как VitrinaEngine , обращается к вашему сайту. Это монитор доступности, и почти всегда он там потому, что владелец сайта попросил нас за ним следить.

Что он делает

Vitrina Engine проверяет, отвечает ли сайт, как долго и не истекает ли его сертификат. Проверка — это один запрос по фиксированному расписанию, обычно раз в минуту и никогда чаще. Он не занимается обходом: запрашивает ровно тот URL, который ему дали, не переходит по ссылкам и ничего не индексирует.

Тот же идентификатор используется, когда мы доставляем вебхук на настроенный клиентом адрес: один POST в момент, когда что-то отслеживаемое меняет состояние.

Как убедиться, что это мы

Каждый запрос несёт этот User-Agent:

VitrinaEngine/1.0 (+https://vitrinaengine.com/bot)

User-Agent — всего лишь утверждение, и скопировать его может кто угодно. Поэтому не полагайтесь только на него: есть два способа действительно убедиться, что запрос наш.

Подписи — надёжный способ

Каждый запрос криптографически подписан по HTTP Message Signatures (RFC 9421) в том виде, в каком их определяет Web Bot Auth. Подпись несут три заголовка:

Signature-Agent: "https://vitrinaengine.com"
Signature-Input: sig1=("@authority" "signature-agent");…;tag="web-bot-auth"
Signature: sig1=:…:

Наши открытые ключи публикуются в виде JSON Web Key Set по адресу /.well-known/http-message-signatures-directory. Это предпочтительная проверка. Подпись нельзя воспроизвести против другого хоста, нельзя подделать без нашего закрытого ключа, и она не зависит от того, у кого насколько свежий DNS.

Обратный DNS — вспомогательная проверка

Наши зонды обратно разрешаются в имена под infinitycurve.com. Чтобы проверить, разрешите подключающийся адрес в имя, убедитесь, что имя оканчивается этим суффиксом, затем разрешите имя обратно и убедитесь, что получаете тот же адрес. Доказательством служит именно этот круг — обратную запись саму по себе задаёт тот, кто управляет блоком адресов.

$ dig +short -x 203.0.113.10
host1234.infinitycurve.com.

$ dig +short host1234.infinitycurve.com
203.0.113.10

Используйте, если ваш edge не умеет проверять подписи. Это подтверждение, а не доказательство, и оно зависит от записей, публикуемых оператором каждого блока адресов — это не наша система, и они есть не всегда.

Мы не публикуем список адресов и предпочли бы, чтобы вы его не составляли. Зонды переезжают между хостами, провайдерами и локациями по мере того, как мы их размещаем, поэтому всё, что вы привяжете к конкретному адресу или дата-центру, со временем перестанет совпадать, и ничто не подскажет почему. Проверяйте подпись: она верна, откуда бы ни пришёл запрос.

robots.txt

Если ваш robots.txt называет нас по имени, мы его соблюдаем. Это остановит наши проверки по этому пути в течение часа:

User-agent: VitrinaEngine
Disallow: /

Правило с подстановочным знаком мы намеренно не считаем относящимся к нам. Монитор — не поисковый робот: он запрашивает один URL, который кто-то зарегистрировал, ничего не обнаруживает и ничего не хранит. А сайты со сплошным запретом — это обычно тестовые среды, админ-панели и внутренние инструменты, то есть ровно то, за чем нас просят следить. Правило, называющее нас, однозначно; правило для поисковиков — нет.

Как его остановить

Спросите того, кто его настроил. Монитор существует потому, что кто-то ввёл ваш URL, и убрать его может именно этот человек — обычно коллега, агентство или хостинг-провайдер, действующий от вашего имени. Это самый быстрый путь.

Если не находите их, напишите на support@vitrinaengine.com с указанием проверяемого URL, и мы прекратим. Доказывать право на домен не нужно: нам предпочтительнее остановиться и получить просьбу возобновить.

Блокировка User-Agent, правило robots.txt выше или блокировка имён хостов тоже работают и от нас ничего не требуют. Учтите, что это значит: монитор сообщит о недоступности сайта, и тот, кто его настроил, это заметит.

Чего он не делает

  • Он не обходит сайт, не сканирует и не переходит по ссылкам.
  • Он не собирает контент, ничего не обучает и не хранит тела ответов.
  • Он не пытается войти, не отправляет формы и не ищет уязвимости.
  • Он не игнорирует блокировку. Отказ — это результат, и он фиксируется как результат.

Infinity Curve LLC, 76 Vazha-Pshavela Ave, 0186 Tbilisi, Georgia. Вопросы об этой странице: support@vitrinaengine.com.