140 lines
		
	
	
		
			4.9 KiB
		
	
	
	
		
			Markdown
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			140 lines
		
	
	
		
			4.9 KiB
		
	
	
	
		
			Markdown
		
	
	
		
			Executable File
		
	
	
	
	
# Offline Update Kit (OUK) — 100 % Air‑Gap Operation
 | 
						||
 | 
						||
> **Status:** ships together with the public α `v0.1.0` (ETA **late 2025**).  
 | 
						||
> All commands below assume the bundle name  
 | 
						||
> `stella-ouk‑2025‑α.tar.gz` – adjust once the real date tag is known.
 | 
						||
 | 
						||
---
 | 
						||
 | 
						||
## 1 · What’s in the bundle 📦
 | 
						||
 | 
						||
| Item | Purpose |
 | 
						||
|------|---------|
 | 
						||
| **Vulnerability database** | Pre‑merged snapshot of NVD 2.0, OSV, GHSA <br/> + optional **regional catalogue** feeds |
 | 
						||
| **Container images** | Scanner + Zastava for **x86‑64** & **arm64** |
 | 
						||
| **Cosign signatures** | Release attestation & SBOM integrity |
 | 
						||
| **SPDX SBOM** | Cryptographically signed bill of materials |
 | 
						||
| **Import manifest** | Check‑sums & version metadata |
 | 
						||
 | 
						||
Nightly **delta patches** keep the bundle < 350 MB while staying *T‑1 day*
 | 
						||
current.
 | 
						||
 | 
						||
---
 | 
						||
 | 
						||
## 2 · Download & verify 🔒
 | 
						||
 | 
						||
```bash
 | 
						||
curl -LO https://get.stella-ops.org/releases/latest/stella-ops-offline-usage-kit-v0.1a.tar.gz
 | 
						||
curl -LO https://get.stella-ops.org/releases/latest/stella-ops-offline-usage-kit-v0.1a.tar.gz.sig
 | 
						||
 | 
						||
cosign verify-blob \
 | 
						||
  --key https://stella-ops.org/keys/cosign.pub \
 | 
						||
  --signature stella-ops-offline-usage-kit-v0.1a.tar.gz.sig \
 | 
						||
  stella-ops-offline-usage-kit-v0.1a.tar.gz
 | 
						||
```
 | 
						||
 | 
						||
The output shows `Verified OK` and the SHA‑256 digest ‑ compare with the
 | 
						||
release notes.
 | 
						||
 | 
						||
---
 | 
						||
 | 
						||
## 3 · Import on the isolated host 🚀
 | 
						||
 | 
						||
```bash
 | 
						||
docker compose --env-file .env -f compose-stella.yml \
 | 
						||
  exec stella-ops stella ouk import stella-ops-offline-usage-kit-v0.1a.tar.gz
 | 
						||
```
 | 
						||
 | 
						||
* The scanner verifies the Cosign signature **before** activation.
 | 
						||
* DB switch is atomic – **no downtime** for running jobs.
 | 
						||
* Import time on an SSD VM ≈ 5‑7 s.
 | 
						||
 | 
						||
---
 | 
						||
 | 
						||
## 4 · How the quota works offline 🔢
 | 
						||
 | 
						||
| Mode            | Daily scans | Behaviour at 200 scans | Behaviour over limit                 |
 | 
						||
| --------------- | ----------- | ---------------------- | ------------------------------------ |
 | 
						||
| **Anonymous**   | {{ quota_anon }}          | Reminder banner        | CLI slows \~10 %                     |
 | 
						||
| **Token (JWT)** | {{ quota_token }}         | Reminder banner        | Throttle continues, **never blocks** |
 | 
						||
 | 
						||
*Request a free JWT:* send a blank e‑mail to
 | 
						||
`token@stella-ops.org` – the bot replies with a signed token that you
 | 
						||
store as `STELLA_JWT` in **`.env`**.
 | 
						||
 | 
						||
---
 | 
						||
 | 
						||
## 5 · Updating the bundle ⤴️
 | 
						||
 | 
						||
1. Download the newer tarball & signature.
 | 
						||
2. Repeat the **verify‑blob** step.
 | 
						||
3. Run `stella ouk import <file>` – only the delta applies; average
 | 
						||
   upgrade time is **< 3 s**.
 | 
						||
 | 
						||
---
 | 
						||
 | 
						||
## 6 · Road‑map highlights for Sovereign 🌐
 | 
						||
 | 
						||
| Release                | Planned feature                          |
 | 
						||
| ---------------------- | ---------------------------------------- |
 | 
						||
| **v0.1 α (late 2025)** | Manual OUK import • Zastava beta         |
 | 
						||
| **v0.3 β (Q2 2026)**   | Auto‑apply delta patch • nightly re‑scan |
 | 
						||
| **v0.4 RC (Q3 2026)**  | LDAP/AD SSO • registry scanner GA        |
 | 
						||
| **v1.0 GA (Q4 2026)**  | Custom TLS/crypto adaptors (**incl. SM2**)—enabled where law or security requires it      |
 | 
						||
 | 
						||
Full details live in the public [Road‑map](../roadmap/README.md).
 | 
						||
 | 
						||
---
 | 
						||
 | 
						||
## 7 · Troubleshooting 🩹
 | 
						||
 | 
						||
| Symptom                                      | Fix                                                     |
 | 
						||
| -------------------------------------------- | ------------------------------------------------------- |
 | 
						||
| `cosign: signature mismatch`                 | File corrupted ‑ re‑download both tarball & `.sig`      |
 | 
						||
| `ouk import: no space left`                  | Ensure **8 GiB** free in `/var/lib/docker`              |
 | 
						||
| Import succeeds but scans still hit Internet | Confirm `STELLA_AIRGAP=true` in `.env` (v0.1‑α setting) |
 | 
						||
 | 
						||
---
 | 
						||
 | 
						||
## 8 · FAQ — abbreviated ❓
 | 
						||
 | 
						||
<details>
 | 
						||
<summary><strong>Does the JWT token work offline?</strong></summary>
 | 
						||
 | 
						||
Yes. Signature validation happens locally; no outbound call is made.
 | 
						||
 | 
						||
</details>
 | 
						||
 | 
						||
<details>
 | 
						||
<summary><strong>Can I mirror the bundle internally?</strong></summary>
 | 
						||
 | 
						||
Absolutely. Host the tarball on an intranet HTTP/S server or an object
 | 
						||
store; signatures remain valid.
 | 
						||
 | 
						||
</details>
 | 
						||
 | 
						||
<details>
 | 
						||
<summary><strong>Is there a torrent alternative?</strong></summary>
 | 
						||
 | 
						||
Planned for the β releases – follow the
 | 
						||
[community chat](https://matrix.to/#/#stellaops:libera.chat) for ETA.
 | 
						||
 | 
						||
</details>
 | 
						||
 | 
						||
---
 | 
						||
 | 
						||
### Licence & provenance 📜
 | 
						||
 | 
						||
The Offline Update Kit is part of Stella Ops and therefore
 | 
						||
**AGPL‑3.0‑or‑later**. All components inherit the same licence.
 | 
						||
 | 
						||
```bash
 | 
						||
cosign verify-blob \
 | 
						||
  --key https://stella-ops.org/keys/cosign.pub \
 | 
						||
  --signature stella-ops-offline-usage-kit-v0.1a.tar.gz.sig \
 | 
						||
  stella-ops-offline-usage-kit-v0.1a.tar.gz
 | 
						||
```
 | 
						||
 | 
						||
— **Happy air‑gap scanning!**
 | 
						||
© 2025‑2026 Stella Ops
 |