Skip to content

Air-gap done right

How Vloud runs on servers with no internet — verified, license-checked, signature-current — using monthly mirror bundles instead of always-on connectivity.

Most “self-hosted” tools assume you have internet. They lie about it. The real test of self-hosted is whether you can run it on a server that cannot reach the public internet, ever, by policy. Regulated environments. Classified networks. Bad-connectivity sites. Vloud’s offline mode is built for them.

How it works

Once a month, Vloud’s staff generates a mirror bundle — a single signed zip containing:

  • The engine binary (Linux x64 / arm64)
  • A 30-day-coverage license file
  • Signed update manifests for the month
  • The license server’s public verification key
  • Updated YARA rules + threat-intel feeds + signature packs

You move the bundle to your air-gapped host (USB, internal share, your security policy decides). On the host, run:

vloud install --offline --bundle=/path/to/bundle.zip

The installer verifies bundle integrity (Ed25519 over every file), unpacks to /etc/vloud/offline/, swaps the engine binary, and refreshes signatures. The engine runs with no heartbeat. All license checks use the offline file.

Renewal

Each bundle expires in 35 days (30-day coverage + 5-day grace). A new bundle arrives monthly via the same out-of-band channel; running vloud upgrade --offline --bundle=<new> swaps everything in place with no state loss. If you miss a renewal window, the engine enters read-only mode: existing apps keep running, no new deployments, banner shows expired. Loading a fresh bundle restores full operation.

Usage reporting (also offline)

Offline engines cache usage counters and write a signed export bundle once a month. You include it in your next renewal request; staff’s reconciler imports it without ever needing live network contact between sides. Usage attribution stays intact.

What we explicitly don’t do

We don’t allow the offline engine to call out for “just in case” updates if it spots an internet route. We don’t ship a “fallback” that quietly phones home. Air-gapped means air-gapped — by design, not by best-effort.

The rule: the engine works the same whether it can see the internet or not. The only difference is the renewal cadence. Same scans, same signatures, same audit log.

← Back to all posts