PERSONALSOC 0.1.14 · Ultimo aggiornamento: 2026-10-17

Manuale d'uso di PersonalSOC

Qui si spiega come usare l'app che raccoglie, in sola lettura e con un solo pulsante, i log e lo stato delle difese di questo dispositivo in un rapporto comprensibile a colpo d'occhio. Prima si descrivono le operazioni a schermo, mentre la riga di comando è raccolta in un capitolo successivo.

1. Che cos'è PersonalSOC

PersonalSOC è un'app che raccoglie i log e lo stato delle difese di questo dispositivo e li riassume in risultati e rapporto. È pensata perché una persona senza personale di sicurezza dedicato possa vedere, con prove alla mano, che cosa accade sul proprio dispositivo e decidere cosa fare dopo.

È in sola lettura, quindi non modifica le impostazioni, non cancella file e non blocca il traffico. L'analisi dei log è fatta da analizzatori a procedura fissa che non usano né un LLM né la rete. L'integrazione LLM è facoltativa e all'inizio è disattivata.

Cosa non fa

2. Installazione e avvio

PersonalSOC è un'app separata da RoamSwitch. Ha una propria icona ed è distribuita insieme a RoamSwitch. Nei menu di RoamSwitch non c'è un accesso: la si apre come app a sé.

AmbienteInstallazione e apertura
MacIl DMG di RoamSwitch contiene PersonalSOC.app. Spostala nella cartella Applicazioni e apri «PersonalSOC». Richiede macOS 12 o successivo.
Linux (edizione client)È inclusa nei pacchetti deb, rpm, tarball e AUR di RoamSwitch. Apri «PersonalSOC» dall'elenco delle app, oppure esegui personalsoc-app in un terminale. La finestra richiede WebKitGTK 4.1, che deb e rpm installano automaticamente. Su Arch (AUR), installa webkit2gtk-4.1 come dipendenza facoltativa.
Linux Server EditionÈ incluso solo il comando. Esegui personalsoc in un terminale (l'app con finestra personalsoc-app non è inclusa). Per la gestione dell'edizione server, consulta il Manuale operativo (Linux Server).
Funziona anche senza RoamSwitch
PersonalSOC funziona anche da solo. Su un dispositivo con RoamSwitch, acquisisce inoltre i rilevamenti non risolti, le diagnostiche di configurazione e altro dal MCP in sola lettura di RoamSwitch e li riunisce in un unico rapporto insieme ai risultati dei log. Senza RoamSwitch, quella fonte semplicemente non viene usata.

3. Prima verifica dello stato

Legge le fonti fisse solo quando premi «Controlla lo stato». Le fonti che non vuoi far leggere puoi disattivarle nelle impostazioni.

Procedura

  1. Apri l'app e premi «Impostazioni» in alto a destra.
  2. Sotto compaiono le fonti lette su questo sistema operativo. Togli la spunta a quelle che non vuoi far leggere.
  3. Premi «Salva», poi «← Indietro» per tornare alla schermata iniziale.
  4. Premi «Verifica lo stato». Compare una barra di avanzamento e, al termine, le schede dei risultati.

Al termine compaiono i conteggi, ad esempio «Verifica completata. 3 rilevamento/i / 2 IOC». Le schede sono spiegate nel capitolo successivo.

AmbienteCosa viene letto
MacIl log unificato di macOS (sudo e sshd delle ultime 24 ore) e le impostazioni MCP (Claude Code, Claude Desktop, opencode, Cursor). Legge anche i log di accesso dei server web (l'Apache incluso in macOS e nginx e httpd di Homebrew). Leggere il registro di ciò che Gatekeeper ha rifiutato richiede circa 10 secondi, quindi all'inizio è disattivato.
LinuxIl log di autenticazione (sshd), auditd, i log di accesso web (nginx / apache, compresi i log separati per host virtuale), i log delle query DNS (dnsmasq / named) e le impostazioni MCP.
EntrambiSe RoamSwitch è installato, anche il suo MCP in sola lettura. Si può disattivare con la casella «Ottenere lo storico dei rilevamenti e la diagnostica della configurazione dal MCP di RoamSwitch (sola lettura)».

4. Come leggere i risultati

SchedaCosa si vede
DashboardGrafici mostrano l'indicatore del rischio complessivo (stima), i conteggi per gravità, le occorrenze per categoria, l'andamento nel tempo e i conteggi MITRE ATT&CK.
RapportoUn rapporto Markdown con le fonti, i risultati per categoria e gli IOC. «Copia Markdown» lo copia per intero e «Mostra il sorgente Markdown» passa al testo grezzo.
RilevamentiPuoi scorrere i rilevamenti uno per uno, ciascuno con gravità, affidabilità, numero ATT&CK, conteggio e numeri di riga dei log che lo supportano.
FontiL'elenco di ciò che è stato verificato. Lo stato è «Letto», «Non presente», «Non leggibile (permesso)», «Non riuscito» o «Disattivato»; le fonti non leggibili o non riuscite non sono state verificate.
IOCL'elenco di IP, domini, URL e hash trovati nei log. Appaiono in forma neutralizzata, come 198[.]51[.]100[.]7, perché nulla venga aperto per errore.
Riepilogo di input per un LLMQuesta scheda compare solo quando l'integrazione LLM è disattivata. È un riepilogo da dare a mano a un LLM e non contiene righe di log grezze. Usa «Copia».
Sul numero del rischio complessivo
Il rischio complessivo è una stima da 0 a 100 che somma ogni tipo di rilevamento ponderato per gravità e affidabilità. Non è una probabilità e non cresce per quanto spesso compaia lo stesso rilevamento. L'affidabilità ha tre livelli: «Confermato», «Probabile» e «Ipotesi».

5. Impostazioni ed esecuzione periodica

«Impostazioni», in alto a destra nella schermata iniziale, è diviso in schede per funzione. Dopo una modifica premi «Salva», poi «← Indietro» per tornare all'inizio.

Lingua di visualizzazione Oltre a «Automatico (segui il sistema)», puoi scegliere giapponese, inglese, tedesco, spagnolo, francese, italiano, coreano, portoghese (Portogallo), cinese semplificato o cinese tradizionale, ciascuno mostrato con il proprio nome.

Esecuzione periodica (facoltativa)

Spunta «Verifica automatica a intervalli regolari» e salva: su Mac viene registrato come agente utente launchd, su Linux come timer utente systemd. L'intervallo si sceglie fra 7 livelli da 15 minuti a 24 ore e all'inizio è di 1 ora.

Viene eseguito solo personalsoc scan --notify, senza root. Notifica solo quando c'è un rilevamento assente l'ultima volta e il messaggio contiene solo conteggi (su Linux serve notify-send). Puoi anche disattivare la notifica con «Notifica solo se c'è un rilevamento assente l'ultima volta».

Deseleziona la casella e salva: la registrazione viene rimossa.

6. Integrazione LLM (facoltativa)

L'integrazione LLM è facoltativa e all'inizio è disattivata. Una volta attivata, dopo la verifica dello stato il comando del LLM scelto compie un'indagine aggiuntiva e scrive un rapporto come auditor. I comandi utilizzabili sono opencode, claude, codex e agy.

Procedura

  1. Spunta «Attiva l'integrazione LLM».
  2. Scegli il «LLM da usare». Uno indicato come «(non installato)» non ha il comando su questo dispositivo.
  3. Se serve, cambia il modello e il timeout (secondi). Se lasci vuoto il modello, viene usato il predefinito di quel LLM.
  4. Premi «Salva», torna all'inizio e premi «Verifica lo stato». Dopo la verifica parte subito l'indagine del LLM.

Cosa arriva al LLM

Sulla limitazione degli strumenti

Quando usi un LLM i cui strumenti non si possono bloccare
Durante l'indagine il LLM può leggere file di propria iniziativa e ciò che legge viene inviato al servizio di quel LLM. Per usarlo, spunta la conferma sotto «LLM da usare». La conferma è per singolo LLM e, senza spunta, non si può né salvare né indagare.
Rapporto con Zero Telemetry
Il «Zero Telemetry» di RoamSwitch (nessun contenuto delle comunicazioni né log viene inviato all'esterno) descrive RoamSwitch stesso. Le comunicazioni che avvengono quando attivi l'integrazione LLM di PersonalSOC non vi sono incluse. Destinazione e trattamento seguono i termini del LLM scelto e del suo fornitore. Finché l'integrazione LLM resta disattivata, PersonalSOC non invia il contenuto dei log fuori dal dispositivo.

7. Usare la riga di comando

Il comando è personalsoc. Su Linux si trova in /usr/bin/personalsoc, su Mac dentro PersonalSOC.app/Contents/MacOS/.

ComandoCosa fa
personalsoc scanControlla automaticamente i log di questo computer e RoamSwitch (MCP) e mostra i rilevamenti in un elenco. Per i log che solo root può leggere (autenticazione, server web, auditd), eseguilo con sudo.
personalsoc scan --reportMostra il rapporto Markdown (senza LLM).
personalsoc scan --llm <name>Mostra il rapporto che il LLM ha scritto come auditor dopo aver indagato con strumenti in sola lettura. name è opencode, claude, codex, agy e così via.
personalsoc scan --notifyNotifica solo se c'è un rilevamento assente l'ultima volta. È la forma richiamata dall'esecuzione periodica.
personalsoc <type> <file>Analizza un file indicato. type è sshd, auditd, web, dns, unified, mcp, inject o ioc. Se indichi - come file, legge lo standard input, e si possono aggiungere anche --report, --brief e --llm.
--lang <lang>Si può aggiungere a qualsiasi comando e imposta la lingua di visualizzazione, con priorità sull'impostazione. I codici sono ja, en, de, es, fr, it, ko, pt-PT, zh-Hans e zh-Hant.
I LLM sulla riga di comando
Sulla riga di comando, eseguire con --llm è già l'atto esplicito di passare il contenuto al LLM, quindi funziona anche se «Attiva l'integrazione LLM» è disattivato nelle Impostazioni. Non viene richiesta nemmeno la conferma per i LLM i cui strumenti non si possono bloccare, quindi usa codex o agy sapendo che durante l'indagine i file possono essere letti e inviati.

8. Dove vengono salvati i dati e aggiornamenti

Cosa viene salvato

ElementoPosizione
Impostazioni~/.config/personalsoc/settings.json (salvato con permessi di lettura e scrittura riservati solo a te)
Registro dei rilevamenti precedenti (per decidere le notifiche)~/.local/state/personalsoc/last.json (solo hash che fanno da impronta dei rilevamenti; non si conserva testo dei log)
Registrazione dell'esecuzione periodicaSu Mac, ~/Library/LaunchAgents/dev.personalsoc.scan.plist (l'output va in ~/Library/Logs/personalsoc-scan.log). Su Linux, personalsoc-scan.timer e personalsoc-scan.service in ~/.config/systemd/user/.

PersonalSOC non salva in file i rapporti né i log raccolti. Per conservarli usa «Copia Markdown» a schermo o l'output della riga di comando. Per aggiungere un LLM, modifica a mano profiles nel file delle impostazioni; non si può cambiare dalla schermata.

Aggiornamenti

Su Mac si aggiorna da «Aggiornamenti» nelle Impostazioni. L'app si collega a lafine.net solo quando premi «Verifica aggiornamenti» e riceve le informazioni sull'ultima versione (un JSON pubblico). Non viene inviato nulla su questo dispositivo né sui suoi log. Se esiste una versione più recente, premi «Scarica e installa». La firma del file scaricato viene verificata con la chiave pubblica incorporata nell'app e, se fallisce, non viene installato nulla. Al termine l'app si riavvia.

Su Mac, aggiornare RoamSwitch stesso non aggiorna PersonalSOC. Su Linux non c'è una funzione di aggiornamento e PersonalSOC è incluso negli aggiornamenti dei pacchetti RoamSwitch.

9. Se qualcosa non va

SintomoCausa e rimedio
Una fonte mostra «Non leggibile (permesso)»I log di autenticazione, del server web e di auditd non sono leggibili senza i diritti di amministratore. PersonalSOC non alza i propri privilegi; eseguilo quindi con sudo. È diverso da «nessun rilevamento»: quel log non è stato controllato.
Non si riesce a salvare l'esecuzione periodicaSe il Mac indica che l'app è in esecuzione da una posizione temporanea in quarantena, sposta PersonalSOC.app nella cartella Applicazioni, riaprila e salva di nuovo. Se indica che il comando personalsoc non è stato trovato, personalsoc deve trovarsi nello stesso posto dell'app stessa.
L'indagine con claude fallisce con «Not logged in»PersonalSOC avvia claude senza caricare le tue impostazioni (come env e apiKeyHelper in ~/.claude/settings.json). Le configurazioni che si autenticano tramite quelle impostazioni, ad esempio con proxy, Bedrock o Vertex, falliscono. Se aggiungi a mano "llm_user_settings": ["claude"] al file delle impostazioni, claude viene avviato con le tue impostazioni caricate. Strumenti e MCP restano disattivati.
← Pagina del prodotto PersonalSOC Al manuale per Mac →