Vai al contenuto
Avanet

Sophos Endpoint macOS CLI e autorizzazioni

Un rollout macOS automatizzato comprende due livelli separati: Sophos Installer registra e installa i componenti scelti. I profili MDM autorizzano poi le funzioni di sistema e Privacy protette da Apple. Un installer riuscito da solo non significa quindi protezione completa.

Per un rollout Jamf Pro vedere Distribuire Sophos Endpoint su macOS tramite MDM. Questo articolo si concentra sui parametri CLI e sulla verifica tecnica delle autorizzazioni.

Se un’installazione, una registrazione o un Update è già fallito, usare prima il runbook di risoluzione dei problemi macOS per circoscrivere il sintomo. Questo articolo approfondisce poi parametri CLI e controllo TCC/MDM.

Preparare l’installer

Su macOS Monterey 12.4 e successivi, l’archivio non deve essere estratto in Documents, Downloads o sul Desktop. Sophos raccomanda una directory nella Home dell’utente.

Avviare Terminal dalla directory che contiene Sophos Installer.app; sudo richiede un amministratore locale. Sophos documenta esattamente questo comando per l’installazione automatica di Sophos Anti-Virus e Intercept X:

sudo ./Sophos\ Installer.app/Contents/MacOS/Sophos\ Installer --products antivirus intercept --quiet

L’installer è legato al tenant e va trattato come artefatto di deployment riservato. Il comando installa e registra i componenti concessi in licenza. Eseguirlo prima su un dispositivo pilota, quindi verificare in Central dispositivo, prodotti, Health e policy effettiva. Per il rollback usare il programma di disinstallazione documentato da Sophos anziché eliminare singoli file. Se l’installazione continua a non riuscire, conservare i log dell’installer e un archivio SDU per Sophos Support.

Impostare gruppo e Tag

Con --devicegroup un computer viene assegnato a un gruppo Central o sottogruppo:

sudo ./Sophos\ Installer.app/Contents/MacOS/Sophos\ Installer \
  --install --quiet \
  --devicegroup "Workstations\Switzerland\Mac"

Gli spazi nel percorso del gruppo devono essere escaped correttamente per la Shell. Se il gruppo non esiste, l’installer può crearlo. Dopo il rollout si verifica comunque se la Policy prevista è realmente efficace.

I Tag possono essere indicati più volte:

sudo ./Sophos\ Installer.app/Contents/MacOS/Sophos\ Installer \
  --install --quiet \
  --tag=Country:CH \
  --tag=Department:Design \
  --tag=VIP

I Tag aiutano nella ricerca e nell’operatività. Non sostituiscono un gruppo Policy finché le Policies non vengono assegnate in base ai Tag.

Prodotti e Agent Mode

--products accetta una selezione di prodotti separata da spazi. I valori documentati comprendono antivirus, intercept, mdr, xdr, deviceEncryption e all.

Una protezione completa con Anti-Virus e Intercept X appare, per esempio, così:

sudo ./Sophos\ Installer.app/Contents/MacOS/Sophos\ Installer \
  --install --quiet --products antivirus intercept

Se viene installato soltanto xdr, non si ottiene una protezione malware completa. Deve essere presente una protezione di terze parti compatibile. XDR only richiede sui Mac almeno macOS 13 Ventura.

I prodotti non licenziati non vengono installati. Dopo il rollout si verifica inoltre Agent Mode in Central.

Proxy e Message Relay

Per un Proxy esplicito sono disponibili queste opzioni:

--proxyaddress <URL>
--proxyport <port>
--proxyusername <user>
--proxypassword <password>

Un Message Relay viene indicato tramite IP e porta 8190:

--messagerelays 192.0.2.10:8190 192.0.2.11:8190

L’installer generato al Download conosce Update Cache e Message Relay esistenti in quel momento. Dopo modifiche a questa infrastruttura si usa un installer corrente o si indica espressamente il Relay tramite CLI.

Le password Proxy non devono restare in script leggibili, profili MDM o output. È preferibile una funzione Secret della piattaforma Deployment.

Sovrascrivere nomi computer e dominio

--computernameoverride e --domainnameoverride influenzano la visualizzazione in Sophos Fusion (in precedenza Sophos Central). Entrambe le opzioni sono previste per una nuova installazione.

--computernameoverride CH-ZRH-MAC-042
--domainnameoverride corp.example

Il nome computer viene passato all’installer senza ulteriori virgolette. Una modifica successiva può creare un secondo oggetto dispositivo. Gli override vengono quindi usati soltanto con un’origine dei nomi documentata.

--mcsPreferHostname segnala i nomi utente come domain\username invece di machine\username. Ciò può ridurre duplicati di utenti locali, ma deve corrispondere alla strategia delle identità.

Tenant e Registration Server

--customertoken <UUID> assegna l’installazione a un cliente Central. --mgmtserver <URL> imposta il MCS Registration Server. Entrambi i valori vengono normalmente acquisiti dall’installer legato al tenant e non inventati liberamente.

Con --bypasstaegisidcheck è possibile aggirare un Taegis Tenant ID Check divergente. Si tratta di un caso speciale mirato, non di un parametro standard per ogni rollout. Prima dell’uso si chiarisce perché i Tenant ID non coincidono.

Controllare i nomi tramite plist

In alternativa, nome computer, dominio e descrizione possono essere impostati nel file:

/Library/Preferences/com.sophos.mcs-overrides.plist

Gli override CLI hanno priorità sul file. I valori ammessi sono lunghi da 1 a 256 caratteri e non possono contenere, tra l’altro, interruzioni di riga o i caratteri <, >, &, ', " e /.

Se il file viene modificato dopo l’installazione, in Central può comparire un nuovo oggetto dispositivo, mentre il precedente resta presente. La modifica viene caricata con un riavvio o il seguente riavvio MCS:

sudo launchctl stop com.sophos.mcs

Autorizzazioni di sicurezza macOS

A seconda della versione e dei componenti installati, Sophos richiede in particolare:

  • System Extension autorizzate,
  • Network Extension e Content Filter autorizzati,
  • Full Disk Access,
  • autorizzazioni per le notifiche,
  • autorizzazioni Web o Scan Extension.

I profili correnti vengono scaricati da Sophos Fusion prima dell’installer. I profili creati autonomamente vengono confrontati con la documentazione Sophos corrente, perché Team ID, Bundle ID e Payload possono cambiare insieme ai componenti.

Verificare le autorizzazioni

L’interfaccia Endpoint locale mostra i prerequisiti mancanti in About o nello Health Status. Sophos documenta inoltre una verifica Terminal e una verifica per Remote Deployment.

Per l’approvazione si confrontano tre livelli:

  1. MDM segnala tutti i profili come installati.
  2. L’Agent locale non segnala Security Permission mancanti.
  3. Central mostra correttamente Health, componenti e Last Active.

Se lo stato resta negativo, non si distribuiscono alla cieca nuovi profili. Prima si identifica quale concreta Extension o autorizzazione Privacy manca.

Per il controllo dettagliato in sola lettura, un amministratore deve prima concedere Full Disk Access a Terminal, quindi eseguire:

sudo sqlite3 /Library/Application\ Support/com.apple.TCC/TCC.db 'select * from access' | grep -i sophos

Il comando legge il database TCC Apple, filtra le voci Sophos e non modifica autorizzazioni. I risultati dipendono da licenza e prodotti installati. Rimuovere poi nuovamente Full Disk Access da Terminal.

Per Deployment remoti, copiare il file di Override solo per l’ispezione; la Policy attiva resta invariata:

sudo cp /Library/Application\ Support/com.apple.TCC/MDMOverrides.plist ~/Desktop/

Confrontare i Payload MDM con i componenti realmente installati. Per com.sophos.endpoint.uiserver, il requisito completo di Code Signing deve essere:

identifier "com.sophos.endpoint.uiserver" and anchor apple generic and certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = "2H5GFH3774"

Confrontare l’intero requisito, non solo Team ID 2H5GFH3774. Se Identifier, Anchor, condizione Certificate o Team ID differiscono, non modificare database TCC o plist e non indebolire il requisito. Ridistribuire invece il profilo MDM Sophos corrente e corrispondente; se Self Help resta rosso, eseguire Escalation con un archivio SDU.

Eliminare esplicitamente la copia diagnostica, che contiene dati di Security Policy:

rm -f ~/Desktop/MDMOverrides.plist

Errori Update su macOS

Autorizzazioni mancanti possono apparire come problema Update o Health. In macOS 14 e 15, la mancanza di Full Disk Access per SophosUpdater può bloccare gli Update nelle versioni Endpoint precedenti alla 2024.3 (10.9.1). Da Endpoint 2024.4 (10.9.5), Sophos Updater service health diventa invece rosso se manca l’autorizzazione anche senza un errore di Update. Il rosso da solo non prova quindi un errore attuale. Un amministratore può eseguire questa verifica ufficiale read-only:

sudo log show --predicate "subsystem == 'com.sophos.macendpoint'" --last 1d | grep -i 'Error renaming Installer directory'

Un output supporta lo specifico problema di autorizzazione. Per la condizione precedente alla 2024.3 (10.9.1) senza MDM, attivare manualmente SophosUpdater.app in System Settings > Privacy & Security > Full Disk Access; se assente, aggiungere /Library/Sophos Anti-Virus/SophosUpdater.app con il pulsante più. Per l’Health rosso preventivo dalla 2024.4 (10.9.5), usare invece Endpoint Self Help > Prerequisites > Allow Full Disk Access, perché il selettore normale potrebbe non mostrare un Updater che macOS non ha bloccato. Con MDM distribuire in entrambi i casi il profilo Sophos corrente corrispondente ai componenti installati. Ricontrollare Self Help, Updater Health, Agent Version, Last Agent Update ed Events. Se resta dopo un ciclo completo, raccogliere un archivio SDU ed eseguire Escalation a Sophos Support. Rimuovere Full Disk Access concesso solo a Terminal per la diagnosi; SophosUpdater richiede ancora la propria autorizzazione.

In caso di errore usare Events locali, Self Help e SDU. Controllare anche profilo MDM, ora di sistema, proxy, certificati root e domini Sophos.

Domande frequenti

Perché in Sophos Fusion compare un secondo oggetto Mac?

Gli override di computer o dominio modificati successivamente possono creare una nuova identità. I valori dei nomi vengono quindi definiti possibilmente prima della prima installazione e i vecchi oggetti vengono ripuliti in modo controllato soltanto dopo l’assegnazione riuscita.

Un'installazione Silent riuscita è sufficiente come prova del rollout?

No. Devono essere corretti anche profili MDM, autorizzazioni locali, Agent Mode, Health, comunicazione Central e Policies effettive.