PageSourceSearch

https://rspamd.com/console/

html rspamd.com collected 2026-10-02 02:27:56 UTC 45,331 bytes, 37 lines download raw bytes

1
2<!DOCTYPE html>
3<html lang="en">
4  <head>
5    <meta charset="UTF-8" />
6    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7    <!-- Limit referrer leakage (e.g. password-reset tokens carried in URLs).
8         Header-based protections (CSP, X-Frame-Options, HSTS) must be set at the
9         web server — see deploy/security-headers.conf. -->
10    <meta name="referrer" content="strict-origin-when-cross-origin" />
11    <title>Rspamd Console — Operational Visibility for Your Rspamd Deployment</title>
12    <meta name="description" content="Operational dashboard for Rspamd: detection impact analysis, campaign triage, and accuracy metrics for ESPs and enterprises. Runs in your infrastructure, included in Enterprise and Hosted plans." />
13    <meta name="author" content="Rspamd" />
14    <meta name="keywords" content="email security, phishing protection, anti-phishing, BEC, business email compromise, malware protection, malicious attachments, anti-spam, email threat protection, spam filter, open source email security" />
15
16    <meta property="og:title" content="Rspamd Console — Operational Visibility for Your Rspamd Deployment" />
17    <meta property="og:description" content="Operational dashboard for Rspamd: detection impact analysis, campaign triage, and accuracy metrics for ESPs and enterprises. Runs in your infrastructure, included in Enterprise and Hosted plans." />
18    <meta property="og:type" content="website" />
19    <meta property="og:image" content="/opengraph-image.png" />
20
21    <meta name="twitter:card" content="summary_large_image" />
22    <meta name="twitter:site" content="@rspamd" />
23    <meta name="twitter:title" content="Rspamd Console — Operational Visibility for Your Rspamd Deployment" />
24    <meta name="twitter:description" content="Operational dashboard for Rspamd: detection impact analysis, campaign triage, and accuracy metrics for ESPs and enterprises. Runs in your infrastructure, included in Enterprise and Hosted plans." />
25    <meta name="twitter:image" content="/opengraph-image.png" />
26    
27    <link rel="preconnect" href="https://fonts.googleapis.com">
28    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
29    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
30    
30<script type="module" crossorigin src="/assets/index-BWgF0wce.js"></script>
30
31    <link rel="stylesheet" crossorigin href="/assets/index-CLp27Ni3.css">
32  </head>
33
34  <body>
35    
35<script>window.__PRERENDERED_PATH__="/console";</script>
35<div id="root"><div role="region" aria-label="Notifications (F8)" tabindex="-1" style="pointer-events:none"><ol tabindex="-1" class="fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]"></ol></div><div class="min-h-screen"><header class="fixed top-0 left-0 right-0 z-[100] transition-all duration-300 bg-transparent py-2 md:py-4"><div class="container mx-auto flex justify-between items-center"><div class="flex items-center"><a href="/" class="flex items-center"><img src="/rspamd_logo_black.png" alt="Rspamd Logo" class="h-10 xl:h-16 w-auto"/></a></div><nav class="hidden lg:flex items-center space-x-3 xl:space-x-6 text-sm xl:text-base"><a href="/#features" class="whitespace-nowrap text-gray-700 hover:text-rspamd-orange transition-colors duration-300">Features</a><a href="/console" class="flex items-center gap-1.5 whitespace-nowrap text-gray-700 hover:text-rspamd-orange transition-colors duration-300">Console<span class="hidden xl:inline-block text-[10px] leading-none font-semibold bg-orange-200 text-rspamd-orange px-1.5 py-1 rounded">Premium</span></a><a href="/#pricing" class="text-gray-700 hover:text-rspamd-orange transition-colors duration-300">Pricing</a><a href="/#opensource" class="whitespace-nowrap text-gray-700 hover:text-rspamd-orange transition-colors duration-300">Open Source</a><a href="/book" class="whitespace-nowrap text-gray-700 hover:text-rspamd-orange transition-colors duration-300">The Rspamd Book</a></nav><div class="flex items-center space-x-4"><a href="https://docs.rspamd.com" class="hidden lg:block text-sm xl:text-base text-gray-700 hover:text-rspamd-orange transition-colors duration-300">Documentation</a><div class="hidden lg:flex items-center space-x-4"><div class="w-16 h-8 bg-gray-200 animate-pulse rounded"></div><div class="w-20 h-8 bg-gray-200 animate-pulse rounded"></div></div></div><button class="lg:hidden text-gray-700 focus:outline-none"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu"><line x1="4" x2="20" y1="12" y2="12"></line><line x1="4" x2="20" y1="6" y2="6"></line><line x1="4" x2="20" y1="18" y2="18"></line></svg></button></div></header><div class="min-h-screen"><section class="relative pt-20 md:pt-28 lg:pt-32 section-padding min-h-[80vh] flex items-center gradient-overlay overflow-hidden"><div class="container mx-auto"><div class="grid grid-cols-1 lg:grid-cols-2 gap-12 items-center"><div class="animate-fade-in"><span class="inline-block px-3 py-1 bg-orange-100 text-rspamd-orange rounded-full text-sm font-semibold mb-6">Premium Add-on: Console</span><h1 class="text-4xl md:text-5xl lg:text-6xl font-bold leading-tight mb-6">Operational visibility for your<!-- --> <span class="text-rspamd-blue">Rspamd deployment</span></h1><p class="text-gray-600 text-lg mb-8 max-w-lg">Understand filtering decisions, investigate changing traffic and manage policy across your installation and its tenants.</p><div class="flex flex-col sm:flex-row gap-4 mb-8"><a href="mailto:[email protected]" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 h-10 bg-rspamd-orange hover:bg-rspamd-orange/90 text-white px-8 py-6 text-lg">Talk to the Rspamd team <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-2 h-5 w-5"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a><a href="/console/reference" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 border border-input bg-background hover:bg-accent hover:text-accent-foreground h-10 px-8 py-6 text-lg">Explore capabilities</a></div><div class="flex flex-wrap gap-x-8 gap-y-3"><div class="flex items-center gap-2"><div class="w-8 h-8 rounded-full bg-rspamd-blue flex items-center justify-center shrink-0"><span class="text-white text-sm font-bold">✓</span></div><span class="text-sm text-gray-600">Built for <span class="font-semibold text-gray-900">Rspamd operators</span></span></div><div class="flex items-center gap-2"><div class="w-8 h-8 rounded-full bg-rspamd-blue flex items-center justify-center shrink-0"><span class="text-white text-sm font-bold">★</span></div><span class="text-sm text-gray-600">Built by the <span class="font-semibold text-gray-900">Rspamd core team</span></span></div></div></div><div class="relative animate-fade-in"><button type="button" aria-label="View Console overview screenshot" class="relative group block w-full" style="cursor:zoom-in"><img src="/img/console/overview.webp" alt="Rspamd Console overview — illustrative demo data" class="w-full h-auto rounded-2xl shadow-2xl"/><div class="absolute inset-0 bg-black/0 group-hover:bg-black/10 transition-colors rounded-2xl flex items-center justify-center opacity-0 group-hover:opacity-100 pointer-events-none"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-zoom-in h-12 w-12 text-white drop-shadow-lg"><circle cx="11" cy="11" r="8"></circle><line x1="21" x2="16.65" y1="21" y2="16.65"></line><line x1="11" x2="11" y1="8" y2="14"></line>
35<line x1="8" x2="14" y1="11" y2="11"></line></svg></div></button><p class="mt-3 text-xs text-gray-500">Current Console interface · Illustrative demo data</p></div></div></div><div class="absolute -bottom-32 -right-32 w-64 h-64 bg-rspamd-blue/10 rounded-full blur-3xl"></div><div class="absolute -top-16 -left-16 w-48 h-48 bg-rspamd-accent/10 rounded-full blur-3xl"></div></section><section class="section-padding bg-white"><div class="container mx-auto"><div class="text-center max-w-3xl mx-auto mb-16"><h2 class="text-3xl md:text-4xl font-bold mb-6">Who it&#x27;s for</h2></div><div class="grid grid-cols-1 md:grid-cols-3 gap-8"><div class="bg-gray-50 p-8 rounded-xl border border-gray-100"><div class="bg-blue-50 w-12 h-12 flex items-center justify-center rounded-lg mb-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-server h-6 w-6 text-rspamd-blue"><rect width="20" height="8" x="2" y="2" rx="2" ry="2"></rect><rect width="20" height="8" x="2" y="14" rx="2" ry="2"></rect><line x1="6" x2="6.01" y1="6" y2="6"></line><line x1="6" x2="6.01" y1="18" y2="18"></line></svg></div><h3 class="text-xl font-bold mb-3">ESPs &amp; hosting providers</h3><p class="text-gray-600">Keep a provider-wide view while customers manage their own domains and policy. Tenant-scoped access and provider-defined limits support delegated operations.</p></div><div class="bg-gray-50 p-8 rounded-xl border border-gray-100"><div class="bg-blue-50 w-12 h-12 flex items-center justify-center rounded-lg mb-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-building2 h-6 w-6 text-rspamd-blue"><path d="M6 22V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v18Z"></path><path d="M6 12H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2"></path><path d="M18 9h2a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-2"></path><path d="M10 6h4"></path><path d="M10 10h4"></path><path d="M10 14h4"></path><path d="M10 18h4"></path></svg></div><h3 class="text-xl font-bold mb-3">Enterprise mail teams</h3><p class="text-gray-600">Investigate filtering decisions, review retained messages and test tuning against labelled mail. Give support and operations a shared view of the evidence.</p></div><div class="bg-gray-50 p-8 rounded-xl border border-gray-100"><div class="bg-blue-50 w-12 h-12 flex items-center justify-center rounded-lg mb-4"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-check h-6 w-6 text-rspamd-blue"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="m9 12 2 2 4-4"></path></svg></div><h3 class="text-xl font-bold mb-3">Security teams</h3><p class="text-gray-600">Trace detection signals, follow changes in traffic and export a dated threat-posture report. Use your installation’s records to support reviews and explain decisions.</p></div></div></div></section><section class="section-padding bg-gray-50"><div class="container mx-auto"><div class="text-center max-w-3xl mx-auto mb-16"><h2 class="text-3xl md:text-4xl font-bold mb-6">Why teams deploy Rspamd Console</h2><p class="text-gray-600">Follow the workflow from traffic and evidence to a reviewed policy change.</p></div><div class="grid grid-cols-1 md:grid-cols-2 gap-8 mb-12"><div class="bg-white p-8 rounded-xl border border-gray-200 shadow-sm"><h3 class="text-xl font-bold mb-3">Understand what drives a verdict</h3><p class="text-gray-600">Start with traffic and final actions, then inspect Detection Impact to see which layers contributed enough score to change the decision. Open captured messages to examine the underlying symbols and evidence.</p></div><div class="bg-white p-8 rounded-xl border border-gray-200 shadow-sm"><h3 class="text-xl font-bold mb-3">Spot changes that deserve attention</h3><p class="text-gray-600">Traffic Alerts track persistent deviations across the installation. Bounded expected patterns account for recurring mail, while incidents keep the finding and its evidence available for review.</p></div><div class="bg-white p-8 rounded-xl border border-gray-200 shadow-sm"><h3 class="text-xl font-bold mb-3">Turn an investigation into a scoped change</h3><p class="text-gray-600">Move from message evidence to rules, maps and dynamic policy. Preview supported changes against retained messages, choose the traffic they apply to and check the result after applying them.</p></div><div class="bg-white p-8 rounded-xl border border-gray-200 shadow-sm"><h3 class="text-xl font-bold mb-3">Recover mail your retention policy keeps</h3><p class="text-gray-600">Quarantine preserves selected mail for review. Operators can inspect held messages and, when release signing and transport are configured, re-inject a false positive through the MTA. Retention and capture rules determine what is recoverable.</p></div><div class="bg-white p-8 rounded-xl border border-gray-200 shadow-sm"><h3 class="text-xl font-bold mb-3">Delegate without giving up policy control</h3><p class="text-gray-600">Give customers access to their own supported views and policy controls within limits you define. Customers use My Settings for bounded self-service; providers retain central tenant administration.</p></div><div class="bg-white p-8 rounded-xl border border-gray-200 shadow-sm"><h3 class="text-xl font-bold mb-3">Connect your operational tools</h3><p class="text-gray-600">Use role- and tenant-scoped REST keys for integrations, and MCP for trusted installation-level agents. LLM-assisted investigation supports hosted or local models. Review and apply controls depen
35d on the action and integration you enable.</p></div></div><div class="bg-white rounded-xl border border-gray-200 shadow-sm px-6 py-8"><div class="grid grid-cols-2 md:grid-cols-4 gap-6 text-center"><div><div class="text-2xl md:text-3xl font-bold text-rspamd-blue mb-1">Evidence</div><div class="text-sm text-gray-600">Message and detection-layer analysis</div></div><div><div class="text-2xl md:text-3xl font-bold text-rspamd-blue mb-1">Control</div><div class="text-sm text-gray-600">Scoped rules and live policy</div></div><div><div class="text-2xl md:text-3xl font-bold text-rspamd-blue mb-1">Tenancy</div><div class="text-sm text-gray-600">Provider-managed self-service</div></div><div><div class="text-2xl md:text-3xl font-bold text-rspamd-blue mb-1">API + MCP</div><div class="text-sm text-gray-600">Integrations and agent tools</div></div></div></div></div></section><section class="section-padding bg-white"><div class="container mx-auto"><div class="text-center max-w-3xl mx-auto mb-16"><h2 class="text-3xl md:text-4xl font-bold mb-6">Answers for your security review</h2><p class="text-gray-600">Deployment and access boundaries, explained before you integrate.</p></div><div class="grid grid-cols-1 md:grid-cols-2 gap-8 mb-12"><div class="bg-gray-50 p-8 rounded-xl border border-gray-100"><div class="flex items-center gap-4 mb-3"><div class="bg-blue-50 w-12 h-12 flex items-center justify-center rounded-lg shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-lock h-6 w-6 text-rspamd-blue"><rect width="18" height="11" x="3" y="11" rx="2" ry="2"></rect><path d="M7 11V7a5 5 0 0 1 10 0v4"></path></svg></div><h3 class="text-xl font-bold">Choose where analysis runs</h3></div><p class="text-gray-600">Scan data lives in ClickHouse; captures and operational state use Redis. Select hosted or local LLM endpoints and decide which anal
35ysis features may send message content to them.</p></div><div class="bg-gray-50 p-8 rounded-xl border border-gray-100"><div class="flex items-center gap-4 mb-3"><div class="bg-blue-50 w-12 h-12 flex items-center justify-center rounded-lg shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-check h-6 w-6 text-rspamd-blue"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="m9 12 2 2 4-4"></path></svg></div><h3 class="text-xl font-bold">Match access to responsibility</h3></div><p class="text-gray-600">Console sessions and REST keys use roles; tenant access is restricted to supported routes and data. MCP is intended for trusted installation-wide agents and requires separate access controls.</p></div><div class="bg-gray-50 p-8 rounded-xl border border-gray-100"><div class="flex items-center gap-4 mb-3"><div class="bg-blue-50 w-12 h-12 flex items-center justify-center rounded-lg shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-globe h-6 w-6 text-rspamd-blue"><circle cx="12" cy="12" r="10"></circle><path d="M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20"></path><path d="M2 12h20"></path></svg></div><h3 class="text-xl font-bold">Plan external dependencies</h3></div><p class="text-gray-600">Run Console in your infrastructure and choose optional providers. Licensing, updates, reputation feeds, federation and hosted models each have connectivity requirements to review for your deployment.</p></div><div class="bg-gray-50 p-8 rounded-xl border border-gray-100"><div class="flex items-center gap-4 mb-3"><div class="bg-blue-50 w-12 h-12 flex items-center justify-center rounded-lg shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-package h-6 w-6 text-rspamd-blue"><path d="M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z"></path><path d="M12 22V12"></path><path d="m3.3 7 7.703 4.734a2 2 0 0 0 1.994 0L20.7 7"></path><path d="m7.5 4.27 9 5.15"></path></svg></div><h3 class="text-xl font-bold">Build on your Rspamd deployment</h3></div><p class="text-gray-600">Console runs alongside Rspamd with ClickHouse and Redis. The team can help assess compatibility, available capabilities and deployment requirements.</p></div></div><div class="bg-gray-50 rounded-xl border border-gray-100 px-6 py-6"><div class="flex flex-col md:flex-row md:items-center gap-6"><div class="grid grid-cols-2 md:grid-cols-4 gap-4 flex-1"><div class="flex items-center gap-3"><div class="bg-blue-100 w-10 h-10 flex items-center justify-center rounded-lg shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-server h-6 w-6 text-rspamd-blue"><rect width="20" height="8" x="2" y="2" rx="2" ry="2"></rect><rect width="20" height="8" x="2" y="14" rx="2" ry="2"></rect><line x1="6" x2="6.01" y1="6" y2="6"></line><line x1="6" x2="6.01" y1="18" y2="18"></line></svg></div><span class="font-medium text-sm">Rspamd</span></div><div class="flex items-center gap-3"><div class="bg-blue-100 w-10 h-10 flex items-center justify-center rounded-lg shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database h-6 w-6 text-rspamd-blue"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg></div><span class="font-medium text-sm">ClickHouse</span></div><div class="flex items-center gap-3"><div class="bg-blue-100 w-10 h-10 flex items-center justify-center rounded-lg shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings h-6 w-6 text-rspamd-blue"><path d="M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"></path><circle cx="12" cy="12" r="3"></circle></svg></div><span class="font-medium text-sm">Redis</span></div><div class="flex items-center gap-3"><div class="bg-blue-100 w-10 h-10 flex items-center justify-center rounded-lg shrink-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open h-6 
35w-6 text-rspamd-blue"><path d="M12 7v14"></path><path d="M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z"></path></svg></div><span class="font-medium text-sm">Deployment support</span></div></div><a href="/console/reference/integrations" class="inline-flex items-center font-medium text-rspamd-blue hover:underline whitespace-nowrap">Integration options <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-1 h-4 w-4"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></div></div></div></section><section class="section-padding bg-gray-50"><div class="container mx-auto"><div class="text-center max-w-3xl mx-auto mb-16"><h2 class="text-3xl md:text-4xl font-bold mb-6">See the operator workflows</h2><p class="text-gray-600">Actual Console interface with illustrative demo data. Figures demonstrate the workflow and are not performance benchmarks.</p></div><div class="grid grid-cols-1 md:grid-cols-3 gap-8"><div><button type="button" aria-label="View Traffic Alerts screenshot" class="block w-full bg-white rounded-lg shadow-lg overflow-hidden border border-gray-200 relative group mb-4" style="cursor:zoom-in"><img src="/img/console/traffic-alerts.webp" alt="Traffic Alerts — illustrative demo data" class="w-full h-auto" loading="lazy"/><div class="absolute inset-0 bg-black/0 group-hover:bg-black/10 transition-colors flex items-center justify-center opacity-0 group-hover:opacity-100 pointer-events-none"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-zoom-in h-8 w-8 text-white drop-shadow-lg"><circle cx="11" cy="11" r="8"></circle><line x1="21" x2="16.65" y1="21" y2="16.65"></line><line x1="11" x2="11" y1="8" y2="14"></line><line x1="8" x2="14" y1="11" y2="11"></line></svg></div></button><h3 class="font-bold mb-1">Traffic Alerts</h3><p class="text-sm text-gray-600 mb-2">Review deviations alongside bounded expected traffic.</p><a href="/console/reference/analytics#traffic-alerts" class="text-sm text-rspamd-blue hover:underline">Explore this workflow <span aria-hidden="true">→</span></a></div><div><button type="button" aria-label="View Mail Streams screenshot" class="block w-full bg-white rounded-lg shadow-lg overflow-hidden border border-gray-200 relative group mb-4" style="cursor:zoom-in"><img src="/img/console/mail-streams.webp" alt="Mail Streams — illustrative demo data" class="w-full h-auto" loading="lazy"/><div class="absolute inset-0 bg-black/0 group-hover:bg-black/10 transition-colors flex items-center justify-center opacity-0 group-hover:opacity-100 pointer-events-none"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-zoom-in h-8 w-8 text-white drop-shadow-lg"><circle cx="11" cy="11" r="8"></circle><line x1="21" x2="16.65" y1="21" y2="16.65"></line><line x1="11" x2="11" y1="8" y2="14"></line><line x1="8" x2="14" y1="11" y2="11"></line></svg></div></button><h3 class="font-bold mb-1">Mail Streams</h3><p class="text-sm text-gray-600 mb-2">Inspect selected captures and their filtering evidence.</p><a href="/console/reference/triage#mail-streams" class="text-sm text-rspamd-blue hover:underline">Explore this workflow <span aria-hidden="true">→</span></a></div><div><button type="button" aria-label="View Quarantine screenshot" class="block w-full bg-white rounded-lg shadow-lg overflow-hidden border border-gray-200 relative group mb-4" style="cursor:zoom-in"><img src="/img/console/quarantine.webp" alt="Quarantine — illustrative demo data" class="w-full h-auto" loading="lazy"/><div class="absolute inset-0 bg-black/0 group-hover:bg-black/10 transition-colors flex items-center justify-center opacity-0 group-hover:opacity-100 pointer-events-none"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-zoom-in h-8 w-8 text-white drop-shadow-lg"><circle cx="11" cy="11" r="8"></circle><line x1="21" x2="16.65" y1="21" y2="16.65"></line><line x1="11" x2="11" y1="8" y2="14"></line>
35<line x1="8" x2="14" y1="11" y2="11"></line></svg></div></button><h3 class="font-bold mb-1">Quarantine</h3><p class="text-sm text-gray-600 mb-2">Review held mail and configured recovery actions.</p><a href="/console/reference/triage#quarantine" class="text-sm text-rspamd-blue hover:underline">Explore this workflow <span aria-hidden="true">→</span></a></div></div><div class="text-center mt-12"><a href="/console/reference" class="inline-flex items-center font-medium text-rspamd-blue hover:underline">Explore Console capabilities <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-1 h-4 w-4"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></div></div></section><section class="py-12 bg-white border-y border-gray-100"><div class="container mx-auto text-center"><p class="text-lg text-gray-700">Rspamd Console ships with the<!-- --> <span class="font-semibold text-gray-900">Enterprise</span> and<!-- --> <span class="font-semibold text-gray-900">Hosted</span> plans.<!-- --> <a href="/pricing" class="font-medium text-rspamd-orange hover:underline inline-flex items-center">See pricing <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-1 h-4 w-4"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></p></div></section><section class="section-padding bg-gray-50"><div class="container mx-auto"><div class="text-center max-w-3xl mx-auto mb-16"><span class="inline-block px-3 py-1 bg-blue-100 text-rspamd-blue rounded-full text-sm font-semibold mb-4">FAQ</span><h2 class="text-3xl md:text-4xl font-bold mb-6">Frequently asked questions</h2></div><div class="max-w-3xl mx-auto"><div class="space-y-4" data-orientation="vertical"><div data-state="closed" data-orientation="vertical" class="bg-white rounded-lg border border-gray-200 px-6"><h3 data-orientation="vertical" data-state="closed" class="flex"><button type="button" aria-controls="radix-:R25jr:" aria-expanded="false" data-state="closed" data-orientation="vertical" id="radix-:R5jr:" class="flex flex-1 items-center justify-between py-4 transition-all hover:underline [&amp;[data-state=open]&gt;svg]:rotate-180 text-left font-semibold hover:text-rspamd-blue" data-radix-collection-item="">Where does Console run?<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200"><path d="m6 9 6 6 6-6"></path></svg></button></h3><div data-state="closed" id="radix-:R25jr:" hidden="" role="region" aria-labelledby="radix-:R5jr:" data-orientation="vertical" class="overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down" style="--radix-accordion-content-height:var(--radix-collapsible-content-height);--radix-accordion-content-width:var(--radix-collapsible-content-width)"></div></div><div data-state="closed" data-orientation="vertical" class="bg-white rounded-lg border border-gray-200 px-6"><h3 data-orientation="vertical" data-state="closed" class="flex"><button type="button" aria-controls="radix-:R29jr:" aria-expanded="false" data-state="closed" data-orientation="vertical" id="radix-:R9jr:" class="flex flex-1 items-center justify-between py-4 transition-all hover:underline [&amp;[data-state=open]&gt;svg]:rotate-180 text-left font-semibold hover:text-rspamd-blue" data-radix-collection-item="">Does mail content leave my infrastructure?<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200"><path d="m6 9 6 6 6-6"></path></svg></button></h3><div data-state="closed" id="radix-:R29jr:" hidden="" role="region" aria-labelledby="radix-:R9jr:" data-orientation="vertical" class="overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down" style="--radix-accordion-content-height:var(--radix-collapsible-content-height);--radix-accordion-content-width:var(--radix-collapsible-content-width)"></div></div><div data-state="closed" data-orientation="vertical" class="bg-white rounded-lg border border-gray-200 px-6"><h3 data-orientation="vertical" data-state="closed" class="flex"><button type="button" aria-controls="radix-:R2djr:" aria-expanded="false" data-state="closed" data-orientation="vertical" id="radix-:Rdjr:" class="flex flex-1 items-center justify-between py-4 transition-all hover:underline [&amp;[data-state=open]&gt;svg]:rotate-180 text-left font-semibold hover:text-rspamd-blue" data-radix-collection-item="">Can customers manage their own filtering?<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200"><path d="m6 9 6 6 6-6"></path></svg></button></h3><div data-state="closed" id="radix-:R2djr:" hidden="" role="region" aria-labelledby="radix-:Rdjr:" data-orientation="vertical" class="overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down" style="--radix-accordion-content-height:var(--radix-collapsible-content-height);--radix-accordion-content-width:var(--radix-collapsible-content-width)"></div></div><div data-state="closed" data-orientation="vertical" class="bg-white rounded-lg border border-gray-200 px-6"><h3 data-orientation="vertical" data-state="closed" class="flex"><button type="button" aria-controls="radix-:R2hjr:" aria-expanded="false" data-state="closed" data-orientation="vertical" id="radix-:Rhjr:" class="flex flex-1 items-center justify-between py-4 transition-all hover:underline [&amp;[data-state=open]&gt;svg]:rotate-180 text-left font-semibold hover:text-rspamd-blue" data-radix-collection-item="">Can we integrate our own tools?<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200"><path d="m6 9 6 6 6-6"></path></svg></button></h3><div data-state="closed" id="radix-:R2hjr:" hidden="" role="region" aria-labelledby="radix-:Rhjr:" data-orientation="vertical" class="overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down" style="--radix-accordion-content-height:var(--radix-collapsible-content-height);--radix-accordion-content-width:var(--radix-collapsible-content-width)"></div></div><div data-state="closed" data-orientation="vertical" class="bg-white rounded-lg border border-gray-200 px-6"><h3 data-orientation="vertical" data-state="closed" class="flex"><button type="button" aria-controls="radix-:R2ljr:" aria-expanded="false" data-state="closed" data-orientation="vertical" id="radix-:Rljr:" class="flex flex-1 items-center justify-between py-4 transition-all hover:underline [&amp;[data-state=open]&gt;svg]:rotate-180 text-left font-semibold hover:text-rspamd-blue" data-radix-collection-item="">Can we recover every blocked message?<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200"><path d="m6 9 6 6 6-6"></path></svg></button></h3><div data-state="closed" id="radix-:R2ljr:" hidden="" role="region" aria-labelledby="radix-:Rljr:" data-orientation="vertical" class="overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down" style="--radix-accordion-content-height:var(--radix-collapsible-content-height);--radix-accordion-content-width:var(--radix-collapsible-content-width)"></div></div><div data-state="closed" data-orientation="vertical" class="bg-white rounded-lg border border-gray-200 px-6"><h3 data-orientation="vertical" data-state="closed" class="flex"><button type="button" aria-controls="radix-:R2pjr:" aria-expanded="false" data-state="closed" data-orientation="vertical" id="radix-:Rpjr:" class="flex flex-1 items-center justify-between py-4 transition-all hover:underline [&amp;[data-state=open]&gt;svg]:rotate-180 text-left font-semibold hover:text-rspamd-blue" data-radix-collection-item="">What access controls are available?<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200"><path d="m6 9 6 6 6-6"></path></svg></button></h3><div data-state="closed" id="radix-:R2pjr:" hidden="" role="region" aria-labelledby="radix-:Rpjr:" data-orientation="vertical" class="overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down" style="--radix-accordion-content-height:var(--radix-collapsible-content-height);--radix-accordion-content-width:var(--radix-collapsible-content-width)"></div></div><div data-state="closed" data-orientation="vertical" class="bg-white rounded-lg border border-gray-200 px-6"><h3 data-orientation="vertical" data-state="closed" class="flex"><button type="button" aria-controls="radix-:R2tjr:" aria-expanded="false" data-state="closed" data-orientation="vertical" id="radix-:Rtjr:" class="flex flex-1 items-center justify-between py-4 transition-all hover:underline [&amp;[data-state=open]&gt;svg]:rotate-180 text-left font-semibold hover:text-rspamd-blue" data-radix-collection-item="">Does Console need internet access?<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200"><path d="m6 9 6 6 6-6"></path></svg></button></h3><div data-state="closed" id="radix-:R2tjr:" hidden="" role="region" aria-labelledby="radix-:Rtjr:" data-orientation="vertical" class="overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down" style="--radix-accordion-content-height:var(--radix-collapsible-content-height);--radix-accordion-content-width:var(--radix-collapsible-content-width)"></div></div><div data-state="closed" data-orientation="vertical" class="bg-white rounded-lg border border-gray-200 px-6"><h3 data-orientation="vertical" data-state="closed" class="flex"><button type="button" aria-controls="radix-:R31jr:" aria-expanded="false" data-state="closed" data-orientation="vertical" id="radix-:R11jr:" class="flex flex-1 items-center justify-between py-4 transition-all hover:underline [&amp;[data-state=open]&gt;svg]:rotate-180 text-left font-semibold hover:text-rspamd-blue" data-radix-collection-item="">How do we evaluate or purchase Console?<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200"><path d="m6 9 6 6 6-6"></path></svg></button></h3><div data-state="closed" id="radix-:R31jr:" hidden="" role="region" aria-labelledby="radix-:R11jr:" data-orientation="vertical" class="overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down" style="--radix-accordion-content-height:var(--radix-collapsible-content-height);--radix-accordion-content-width:var(--radix-collapsible-content-width)"></div></div></div><div class="text-center mt-8"><a href="/console/reference/faq" class="inline-flex items-center font-medium text-rspamd-blue hover:underline">All questions <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right ml-1 h-4 w-4"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></div></div></div></section><section class="section-padding bg-rspamd-blue text-white"><div class="container mx-auto text-center"><h2 class="text-3xl md:text-4xl font-bold mb-6">Bring your operational questions to a demo</h2><p class="text-blue-100 text-lg mb-8 max-w-2xl mx-auto">Walk through an investigation, tenant delegation or an integration with the Rspamd team.</p><div class="flex flex-col sm:flex-row gap-4 justify-center items-center"><a href="mailto:[email protected]" class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&amp;_svg]:pointer-events-none [&amp;_svg]:size-4 [&amp;_svg]:shrink-0 h-10 bg-white text-rspamd-blue hover:bg-gray-100 px-8 py-6 text-lg"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mail mr-2 h-5 w-5"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg>Contact Us</a><a href="/console/reference" class="text-blue-100 hover:text-white underline underline-offset-4">Explore the capabilities first</a></div></div></section></div><footer class="bg-gray-900 text-gray-300"><div class="container mx-auto py-12 px-4"><div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-8"><div><div class="flex items-center mb-4"><span class="text-2xl font-bold text-white">Rspamd</span></div><p class="text-gray-400 mb-6">Email-security engine that stops phishing, malware, and spam — open-source core, premium protection and support.</p><div class="flex space-x-4"><a href="https://twitter.com/rspamd" class="text-gray-400 hover:text-white transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-twitter h-5 w-5"><path d="M22 4s-.7 2.1-2 3.4c1.6 10-9.4 17.3-18 11.6 2.2.1 4.4-.6 6-2C3 15.5.5 9.6 3 5c2.2 2.6 5.6 4.1 9 4-.9-4.2 4-6.6 7-3.8 1.1 0 3-1.2 3-1.2z"></path></svg><span class="sr-only">Twitter</span></a><a href="https://github.com/rspamd/rspamd" class="text-gray-400 hover:text-white transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-github h-5 w-5"><path d="M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4"></path><path d="M9 18c-4.51 2-5-2-7-2"></path></svg><span class="sr-only">GitHub</span></a><a href="https://t.me/rspamd" class="text-gray-400 hover:text-white transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-send h-5 w-5"><path d="M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z"></path><path d="m21.854 2.147-10.94 10.939"></path></svg><span class="sr-only">Telegram</span></a><a href="mailto:[email protected]" cla
35ss="text-gray-400 hover:text-white transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mail h-5 w-5"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg><span class="sr-only">Email</span></a></div></div><div><h3 class="text-white font-bold mb-4">Product</h3><ul class="space-y-2"><li><a href="/#features" class="hover:text-white transition-colors">Features</a></li><li><a href="/console" class="hover:text-white transition-colors">Rspamd Console</a></li><li><a href="/#pricing" class="hover:text-white transition-colors">Pricing</a></li><li><a href="/#opensource" class="hover:text-white transition-colors">Open Source</a></li></ul></div><div><h3 class="text-white font-bold mb-4">Resources</h3><ul class="space-y-3"><li><a href="https://docs.rspamd.com/" class="hover:text-white transition-colors">Documentation</a></li><li><a href="https://docs.rspamd.com/blog" class="hover:text-white transition-colors">Blog</a></li><li><a href="/#opensource" class="hover:text-white transition-colors">Open Source</a></li><li><a href="https://docs.rspamd.com/support" class="hover:text-white transition-colors">Community</a></li></ul></div><div><h3 class="text-white font-bold mb-4">Company</h3><ul class="space-y-3"><li><a href="mailto:[email protected]" class="hover:text-white transition-colors">Contact</a></li><li><a href="https://docs.rspamd.com/other/usage_policy" class="hover:text-white transition-colors">Terms of Service</a></li></ul></div></div><div class="border-t border-gray-800 mt-12 pt-8 text-sm text-gray-500"><div class="flex flex-col md:flex-row justify-between items-center"><p>© <!-- -->2026<!-- --> Rspamd Ltd. All rights reserved.</p><div class="mt-4 md:mt-0"><ul class="flex space-x-6"><li><button class="hover:text-gray-300 transition-colors">Privacy</button></li><li><button class="hover:text-gray-300 transition-colors">Terms</button></li><li><button class="hover:text-gray-300 transition-colors">Cookies</button></li></ul></div></div></div></div></footer></div></div>
36  </body>
37</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.