I bot di CoreDash: cosa richiedono e come riconoscerli

CoreDash/1.0 nei log è uno dei due bot di CoreDash, ed entrambi aprono solo le pagine richieste da un cliente CoreDash.

Chi gestisce i bot di CoreDash e perché visitano le pagine

In breve

  • CoreDash ha due bot: il controllo uptime richiede una pagina ogni 30 minuti, mentre l'audit cRUM, un test di velocità su singola pagina, la carica una volta in Chrome quando un cliente apre il report di quella pagina.
  • Entrambi inviano uno user agent che inizia con CoreDash/. I loro indirizzi si trovano in ips.json, e i clienti CoreDash ricevono anche un token segreto in un header.
  • Per farli passare, autorizza lo user agent. Se preferisci non riceverli, contatta CoreDash e le visite si fermano.

CoreDash è uno strumento di real user monitoring per i Core Web Vitals. I proprietari di siti web lo usano per verificare la velocità di caricamento delle pagine per i visitatori reali, su mobile e su desktop. CoreDash ha sede a Bergen op Zoom, nei Paesi Bassi, e gestisce direttamente entrambi i bot.

Un bot di CoreDash visita una pagina solo quando un cliente CoreDash lo richiede: aggiungendo la pagina a un monitor di uptime o aprendo l'audit di quella pagina. I bot non seguono link e non cercano mai pagine da soli. Niente di ciò che scaricano finisce in un indice di ricerca né addestra modelli di IA. I risultati vanno al cliente che li ha richiesti, e a nessun altro.

User agent di CoreDash

CoreDash/1.0 (uptime; +https://www.coredash.app/bot)
CoreDash/1.0 (audit; +https://www.coredash.app/bot)

La parola tra parentesi indica quale bot ha inviato la richiesta, e il link porta a questa pagina. Ogni strumento di CoreDash invia uno user agent che inizia con CoreDash/, compresi quelli aggiunti in seguito. Una ricerca nei log o una regola del firewall su CoreDash/ li trova tutti. Chiunque però può inviare quel nome: controlla anche l'indirizzo da cui proviene la richiesta confrontandolo con ips.json.

Il controllo uptime e l'audit cRUM

Nei log di accesso di un server, i due bot appaiono così: il controllo uptime all'ora e alla mezz'ora, e un audit che carica una pagina insieme al suo CSS e a un'immagine.

Nginx access log of www.example-shop.com: CoreDash uptime checks at 13:00, 13:30 and 14:00 asking for the home page, and a CoreDash audit loading /checkout/ with its CSS and an image, between normal visitors

Il log di accesso di www.example-shop.com.

Il controllo uptime

Un cliente aggiunge un URL a un monitor di uptime in CoreDash. Da quel momento, il controllo uptime richiede quell'URL ogni 30 minuti: un server CoreDash all'ora, l'altro alla mezz'ora. Sono 48 controlli al giorno per ciascun monitor.

Ogni controllo è una richiesta GET per l'HTML, più una per ogni redirect, fino a cinque di fila. Legge al massimo i primi 256 KB della risposta e non carica immagini, script o CSS. Se il cliente ha inserito l'indirizzo IP del server del sito, ciascun controllo invia anche una richiesta direttamente a quel server, aggirando la CDN, per verificare se il server stesso risponde. CoreDash conserva lo status code e le tempistiche, e nulla della pagina stessa.

L'audit cRUM

L'audit cRUM è il test di velocità di CoreDash su una singola pagina. Si avvia quando un cliente apre il report di quella pagina in CoreDash, e di nuovo se lo riavvia o passa da smartphone a desktop. Non c'è alcuna pianificazione: una pagina di cui nessuno apre il report non riceve mai un audit.

L'audit carica la pagina una volta in Chrome, a cache disattivata, come un visitatore al primo accesso da smartphone o da desktop. Chrome scarica poi tutto ciò che la pagina richiede — CSS, script e immagini — esattamente come per qualsiasi visitatore. Nei log vedi la richiesta per la pagina con _cache_bust= e un timestamp aggiunto al suo URL, seguita dalle richieste per i relativi file, tutte con lo user agent dell'audit.

Anche i file che la pagina carica da un altro sito, come un web font o uno script di analytics, partono con lo user agent dell'audit. Se ospiti un file del genere, CoreDash può comparire nei log per una pagina che non è tua. Ognuna di queste richieste fa parte del caricamento della pagina scelta da un cliente.

Come verificare che una richiesta arrivi da CoreDash

CoreDash pubblica gli indirizzi da cui inviano i bot su app.coredash.app/bot/ips.json. È un file JSON nel formato che Google usa per gli indirizzi dei suoi crawler, con un campo service che riporta "uptime" o "audit" per ciascun indirizzo. Una richiesta con lo user agent di CoreDash che proviene da un indirizzo non presente in quel file non arriva da CoreDash.

Questi indirizzi possono cambiare: di tanto in tanto CoreDash aggiunge o sposta server. Fai sempre riferimento alla versione attuale del file. Il suo creationTime cambia a ogni modifica dell'elenco.

I clienti CoreDash dispongono di una seconda verifica. Ogni progetto ha un proprio bot token segreto, ed entrambi i bot lo inviano nell'header X-CoreDash-Bot quando visitano il sito del progetto o uno dei suoi sottodomini. Le visite a qualsiasi altro sito non contengono alcun token. Il token si trova in CoreDash sotto Project settings, tab "CoreDash bot token".

Autorizzare i bot di CoreDash nel firewall

A volte un firewall o una CDN scambia i bot di CoreDash per bot non attendibili e li blocca. Per lasciarli passare, autorizza le richieste il cui user agent inizia con CoreDash/. Se il sito si trova nel tuo progetto CoreDash, una regola basata sul bot token è più sicura, perché solo le richieste del tuo progetto lo contengono. Autorizza gli indirizzi IP solo se non puoi fare altrimenti, e tieni presente che possono cambiare. Come autorizzare i bot di CoreDash nella CDN o nel firewall riporta i passaggi per Cloudflare e AWS WAF.

Perché i bot di CoreDash non leggono robots.txt

Il file robots.txt indica ai crawler quali pagine possono visitare quando analizzano un sito da soli. I bot di CoreDash non lo fanno mai. Ogni visita è avviata da un cliente, esattamente come quando Lighthouse carica una pagina per eseguire un test. Ecco perché nessuno dei due bot legge robots.txt, e una riga Disallow non li fermerà.

Bloccare i bot di CoreDash sul sito

Se hai domande sui bot o preferisci non riceverli sul sito, contatta CoreDash tramite la pagina di contatto. Invia l'URL e una riga di CoreDash presente nei log. CoreDash interromperà le visite al sito.

Bot di CoreDash: user agent, lista degli IP e cosa richiedono Core Web Vitals Bot di CoreDash: user agent, lista degli IP e cosa richiedono