Interfaccia a riga di comando
Riferimento CLI
Punto di ingresso: caddy-analyze [flags] [source...] — le sorgenti sono risolte tramite Sorgenti log o caddy-analyzer.json. Di seguito: ogni flag, il suo ambito e se interagisce con il sistema.
Guida operativa
Per spiegazioni passo passo, casi d'uso e flag propri di ogni sottocomando, consulta Tutti i comandi.Flag globali — ambito e root
tutti = persistente in ogni sottocomando. solo root = solo nel comando radice (non in tail ecc.). Nessun flag richiede di per sé root; i sottocomandi guard/block/unban sì (consulta le rispettive pagine).
Persistenti — tutti i sottocomandi
| Flag | Breve | Predefinito | Ambito | Descrizione |
|---|---|---|---|---|
--from | tutti | Voci successive all'ora (RFC3339 o 5m, 1h, 2d) | ||
--to | tutti | Voci precedenti all'ora (RFC3339) | ||
--status | -s | tutti | Filtra per codici di stato, ad es. -s 200,404 | |
--method | -m | tutti | Filtra per metodo HTTP | |
--path | -p | tutti | Glob del percorso (/api/* → regex) | |
--host | tutti | Filtra per sottostringa Host | ||
--ip | tutti | IP client / CIDR | ||
--exclude-ip | tutti | Esclude IP / CIDR | ||
--country | tutti | Mantiene paesi (ISO o nome, richiede GeoIP) | ||
--exclude-country | tutti | Esclude paesi (richiede GeoIP) | ||
--asn | tutti | Mantiene ASN (richiede GeoIP) | ||
--exclude-asn | tutti | Esclude ASN | ||
--grep | tutti | Regex (fallback sottostringa) su URI/UA/IP | ||
--2xx / --3xx / --4xx / --5xx | false | tutti | Scorciatoia per classe di stato | |
--errors-only | -e | false | tutti | Solo 5xx |
--slow | tutti | Più lento della durata | ||
--max-latency | tutti | Più veloce della durata | ||
--min-size / --max-size | tutti | Byte con suffisso k/mb/gb | ||
--no-bots / --bots-only | false | tutti | Classificatore di bot | |
--level | tutti | Livello operativo (error,warn,info,debug) | ||
--ops-only | false | tutti | Solo eventi non HTTP | |
--top | -t | 10 | tutti | Primi N (0 disabilita) |
--format | -f | table | tutti | Report radice: table|json|csv|html; top/diff: table|json|csv |
--output | -o | tutti | Scrive in un file | |
--compact | -c | false | tutti | Tabella compatta |
--defang | false | tutti | .→[.] per la condivisione di IOC | |
--trust-forwarded | false | tutti | Considera attendibile l'ultimo hop pubblico X-Forwarded-For | |
--max-cardinality | 100k | tutti | Limite per contatore (0 illimitato) | |
--geo-cache-ttl | 24h | tutti | TTL della cache GeoIP | |
--geo-cache-size | 50k | tutti | Dimensione della cache GeoIP | |
--ua-rotation | 10 | tutti | Soglia di rotazione UA | |
--namespace | -n | tutti | Namespace K8s | |
--geoip-db | tutti | Percorso mmdb GeoIP (rilevamento automatico) | ||
--no-auto-download | false | tutti | Disabilita il download automatico di GeoIP | |
--against | tutti | Confronta con un file baseline JSON | ||
--threshold | 20 | tutti | Soglia percentuale di regressione | |
--custom-patterns | tutti | Carica JSON di pattern validati; ripetibile | ||
--remote-url | tutti | Endpoint bulk Elasticsearch/OpenSearch o Loki | ||
--remote-index | caddy-analyzer | tutti | Indice Elasticsearch/OpenSearch | |
--remote-user/password/token | tutti | Autenticazione remota Basic o Bearer | ||
--remote-batch-size/retries/backoff/timeout | tutti | Parametri di consegna remota |
Solo root
| Flag | Breve | Ambito | Descrizione |
|---|---|---|---|
--follow | -F | solo root | Segue i nuovi log (fan-in) |
--interval | -i | solo root | Riaggrega a ogni durata (ad es. 10s) |
--watch | -w | solo root | Dashboard TUI live (8 schede) |
--detect | -d | solo root | Rilevamento minacce in 26 categorie |
--version | -v | solo root | Stampa la versione ed esce |
Root richiesta?
Nessun flag richiede root da solo. I sottocomandi guard, block, unban richiedono sudo perché modificano le regole del firewall — consulta le loro pagine per modifica il firewall rispetto a sola lettura.Sottocomandi
| Comando | Ambito | Descrizione |
|---|---|---|
tail | sola lettura | Trasmette e colora (locale --detect) |
top | sola lettura | Ispettore classificato (10 dimensioni) |
diff | sola lettura | Confronta due log |
baseline | scrive un file | Salva baseline di analisi versionate |
guard | modifica il firewall | Blocco automatico tramite iptables/nftables/Docker |
block / unban | modifica il firewall | Firewall manuale |
blocklist | scrive cache/config | 8 feed, refresh/list/config/init |
config | scrive config | Salva la sorgente predefinita |
export-sigma | scrive file/stdout | 23 regole Sigma |
update | sostituisce il binario | Autoaggiornamento (cosign + SHA256) |
whitelist | scrive allowlist | CIDR da non bloccare mai |
Dettagli per sottocomando: consulta nella barra laterale Guard, Blocklist, Block / Unban, Top.