關於 Vitrina Engine 監控程式
如果您正在讀這段文字,表示有個自稱為 VitrinaEngine 的程式正在請求您的網站。它是一個可用性監控項目,而且幾乎都是因為網站本身的擁有者要求我們監看它才會存在。
它做什麼
Vitrina Engine 會檢查網站是否正常、回應需要多久,以及憑證是否即將到期。一次檢查就是依固定排程發出的單一請求 — 最常見的是每分鐘一次,而且絕不會更頻繁。它不爬取:只請求給定的那個 URL,不跟隨任何連結,也不建立索引。
當我們將 webhook 送到客戶設定的端點時,也會使用相同的識別字串;那是在他們監控的對象狀態改變的當下發出的單一 POST。
如何驗證是我們
每個請求都帶有這個 User-Agent:
VitrinaEngine/1.0 (+https://vitrinaengine.com/bot)
User-Agent 只是一種宣稱,任何人都能複製。所以請不要只依賴它 — 有兩種方式可以真正驗證某個請求是否來自我們。
簽章 — 可靠的方式
每個請求都經過加密簽章,採用 Web Bot Auth 所定義的 HTTP Message Signatures(RFC 9421)。由三個標頭攜帶:
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
如果您的邊緣節點無法驗證簽章,才使用這個方式。它算是佐證而非證明,而且取決於各位址區塊營運者所發佈的記錄 — 那不是我們的系統,也未必總是設定妥當。
我們不發佈位址清單,也希望您不要自行建立一份。探針會隨著我們的佈署在主機、供應商與地點之間移動,因此任何綁定特定位址或機房的設定終究會失效,而且不會有任何說明。請改為驗證簽章 — 無論請求從何而來,它都成立。
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.