architettura-fortezza
Skill4 starsChanged 10 days agoMITView on GitHub
Progetta e installa un'infrastruttura di sicurezza a 4 livelli dove il cuore (dati e chiavi) è offline, lo scudo è invisibile agli scanner e il server reale è nascosto. Trigger - "fortezza", "scatola chiusa", "invisibile", "nascosto", "reverse proxy", "air gap", "cassaforte", "WireGuard". EN - Designs and installs a 4-layer security infrastructure where the core (data and keys) is offline and detached, the shield is invisible to scanners and the real server is hidden. Use for a self-hosted Cloudflare alternative, invisible reverse proxy, hidden server, WireGuard VPN, or unreachable offline backups. Triggers - "fortress", "hidden server", "invisible proxy", "air gap", "offline vault", "WireGuard".
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 2 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 61
When the user wants an "armored" system where the core is detached and the shield is invisible, propose and install this architecture.
- Distinctive: line 90
One-way toward the core: no path starting at the server can reach the vault.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Architettura Fortezza (4 livelli) · Fortress Architecture
🇮🇹 Versione italiana qui sotto · 🇬🇧 English version below
Quando l'utente vuole un sistema "blindato" dove il cuore è staccato e lo scudo è
invisibile, proporre e installare questa architettura. I file template completi
(proxy guardian, Caddy, docker-compose, firewall, WireGuard, backup cifrati) sono
in references/fortezza/ dentro questa skill; questa skill spiega come adattarli.
Premessa onesta da dare SEMPRE all'utente
La porta web pubblica non può essere invisibile: se i visitatori la raggiungono, la raggiunge anche chi attacca. Invisibili possono diventare invece SSH, l'amministrazione, il server reale e la cassaforte. E i DDoS volumetrici enormi restano gestibili solo con un CDN/WAF esterno (es. Cloudflare free) davanti allo scudo. Non promettere "non attaccabile": promettere "superficie ridotta al minimo, cuore irraggiungibile, dati sempre recuperabili".
I quattro livelli
- Scudo invisibile — unica macchina pubblica. Caddy (HTTPS + rimozione
impronte) → proxy
guardian(WAF, rate limit, blocklist silenziosa, lockdown, honeypot). Firewall stealth: solo 80/443 visibili, resto in DROP, niente ping. - Server origine nascosto — sito + DB, nessuna porta pubblica, accetta solo lo scudo via VPN. L'app ascolta sull'IP VPN, mai esposta dal provider.
- WireGuard — rete privata cifrata tra scudo, origine e admin. Non risponde
senza chiave valida → invisibile agli scanner. Solo gli
AllowedIPspassano. - Cassaforte offline — air-gapped, custodisce la chiave privata. Backup cifrati con chiave pubblica (il server cifra ma non può decifrare). La cassaforte va a prendere i backup (sola andata); il server non la conosce.
Principi di progettazione da rispettare
- Minima superficie: ogni livello espone solo ciò che serve al livello accanto.
- Conoscenza parziale: ogni macchina conosce solo il vicino, mai l'intera catena.
- One-way verso il cuore: nessun percorso che parta dal server e arrivi alla cassaforte.
- Cifratura asimmetrica: chi può essere compromesso (il server) ha solo la chiave pubblica.
- Silenzio: agli attaccanti non si risponde (stealth), per non dare impronte né feedback.
- Difesa in profondità: questa architettura si SOMMA alle altre skill del plugin (hardening-siti, difesa-attacchi, privacy-pagamenti, autenticazione-sicura), non le sostituisce.
Installazione (ordine)
- Cassaforte: generare le chiavi offline (
genera-chiavi.sh). - WireGuard su scudo, origine, admin.
- Origine: avviare app su IP VPN, poi
firewall-origine.sh. - Scudo: configurare
ORIGIN_URLe dominio,docker compose up -d --build,firewall-stealth.sh. - Backup: cron notturno di
backup-cifrato.shsull'origine; pull periodico dalla cassaforte.
Verifica
Da macchina esterna nmap -Pn IP_SCUDO: solo 80/443. SSH/WireGuard invisibili.
Il server origine non deve rispondere. Provare un ripristino di backup sulla
cassaforte per confermare che la catena funziona.
Fortress Architecture (4 layers) (English)
When the user wants an "armored" system where the core is detached and the shield
is invisible, propose and install this architecture. Complete template files
(guardian proxy, Caddy, docker-compose, firewall, WireGuard, encrypted backups)
are in references/fortezza/ inside this skill; this skill explains how to adapt them.
Honest disclaimer to ALWAYS give the user
The public web port cannot be invisible: if visitors can reach it, so can attackers. What can become invisible are SSH, administration, the real server and the vault. Massive volumetric DDoS can only be handled by an external CDN/WAF (e.g. Cloudflare free) in front of the shield. Don't promise "unhackable": promise "minimal attack surface, unreachable core, always recoverable data".
The four layers
- Invisible shield — the only public machine. Caddy (HTTPS + fingerprint
removal) →
guardianproxy (WAF, rate limiting, silent blocklist, lockdown, honeypot). Stealth firewall: only 80/443 visible, everything else DROP, no ping. - Hidden origin server — site + DB, no public ports, accepts only the shield via VPN. The app listens on the VPN IP, never exposed by the provider.
- WireGuard — encrypted private network between shield, origin and admin.
Doesn't respond without a valid key → invisible to scanners. Only
AllowedIPspass. - Offline vault — air-gapped, holds the private key. Backups encrypted with the public key (the server encrypts but cannot decrypt). The vault pulls the backups (one-way); the server doesn't know it exists.
Design principles to respect
- Minimal surface: each layer exposes only what the adjacent layer needs.
- Partial knowledge: each machine knows only its neighbor, never the whole chain.
- One-way toward the core: no path starting at the server can reach the vault.
- Asymmetric encryption: whatever can be compromised (the server) holds only the public key.
- Silence: attackers get no responses (stealth) — no fingerprints, no feedback.
- Defense in depth: this architecture ADDS to the other skills of the plugin (hardening-siti, difesa-attacchi, privacy-pagamenti, autenticazione-sicura), it does not replace them.
Installation (order)
- Vault: generate keys offline (
genera-chiavi.sh). - WireGuard on shield, origin, admin.
- Origin: start the app on the VPN IP, then
firewall-origine.sh. - Shield: configure
ORIGIN_URLand domain,docker compose up -d --build,firewall-stealth.sh. - Backups: nightly cron of
backup-cifrato.shon the origin; periodic pull from the vault.
Verification
From an external machine nmap -Pn SHIELD_IP: only 80/443. SSH/WireGuard invisible.
The origin server must not respond. Test a backup restore on the vault to confirm
the chain works.
In this repository14 other files it gives its agents.
- account-fornitoriSkill
- aggiornamenti-runtimeSkill
- api-sicuraSkill
- autenticazione-sicuraSkill
- difesa-attacchiSkill
- email-dominioSkill
- frontend-spaSkill
- hardening-sitiSkill
- privacy-pagamentiSkill
- privacy-posizioneSkill
- risposta-incidentiSkill
- sicurezza-githubSkill
- sicurezza-socialSkill
- supabase-sicuroSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

