Sophos Endpoint macOS CLI e permissões
Um macOS Rollout automatizado tem dois níveis distintos: o Sophos Installer regista e instala os componentes escolhidos; os perfis MDM aprovam depois as funções de sistema e privacidade protegidas pela Apple. Um instalador bem-sucedido não significa proteção completa.
Para Jamf Pro, consulte Implementar Sophos Endpoint no macOS através de MDM. Este artigo concentra-se nos parâmetros CLI e na verificação técnica das permissões.
Se uma instalação, registo ou Update já falhou, use primeiro o runbook de resolução de problemas macOS para delimitar o sintoma. Este artigo aprofunda depois os parâmetros CLI e a verificação TCC/MDM.
Preparar o instalador
No macOS Monterey 12.4 e posterior, o arquivo não deve ser extraído em Documents, Downloads ou no Desktop. A Sophos recomenda um diretório no Home do utilizador.
Execute o Terminal no diretório que contém Sophos Installer.app; sudo exige um administrador local. A Sophos documenta exatamente este comando para uma instalação autónoma de Sophos Anti-Virus e Intercept X:
sudo ./Sophos\ Installer.app/Contents/MacOS/Sophos\ Installer --products antivirus intercept --quiet
O instalador está associado ao tenant e deve ser tratado como um artefacto de implementação confidencial. O comando instala e regista os componentes licenciados. Execute-o primeiro num dispositivo piloto e, depois, verifique no Central o dispositivo, os produtos, o Health e a política efetiva. Para reverter, utilize o desinstalador documentado pela Sophos em vez de eliminar ficheiros individuais. Se a instalação continuar a falhar, preserve os logs do instalador e um arquivo SDU para o Sophos Support.
Definir grupo e Tags
--devicegroup atribui um computador a um grupo ou subgrupo Central:
sudo ./Sophos\ Installer.app/Contents/MacOS/Sophos\ Installer \
--install --quiet \
--devicegroup "Workstations\Switzerland\Mac"
Os espaços no caminho do grupo devem ser corretamente escaped pela shell. Se o grupo não existir, o instalador pode criá-lo. Após o Rollout, continua a verificar-se se a Policy prevista está efetiva.
Tags podem ser indicadas várias vezes:
sudo ./Sophos\ Installer.app/Contents/MacOS/Sophos\ Installer \
--install --quiet \
--tag=Country:CH \
--tag=Department:Design \
--tag=VIP
Tags ajudam na pesquisa e operação. Não substituem um Policy Group enquanto as Policies não forem atribuídas por Tags.
Produtos e Agent Mode
--products aceita uma seleção de produtos separada por espaços. Os valores documentados incluem antivirus, intercept, mdr, xdr, deviceEncryption e all.
Uma proteção completa com Anti-Virus e Intercept X é instalada assim:
sudo ./Sophos\ Installer.app/Contents/MacOS/Sophos\ Installer \
--install --quiet --products antivirus intercept
Instalar apenas xdr não fornece proteção completa contra malware. Tem de existir proteção compatível de terceiros. XDR-only em Macs requer pelo menos macOS 13 Ventura.
Produtos sem licença não são instalados. Após o Rollout, verifica-se o Agent Mode no Central.
Proxy e Message Relay
Para um Proxy explícito estão disponíveis:
--proxyaddress <URL>
--proxyport <port>
--proxyusername <user>
--proxypassword <password>
Um Message Relay é indicado com IP e porta 8190:
--messagerelays 192.0.2.10:8190 192.0.2.11:8190
O instalador criado no download conhece os Update Caches e Message Relays existentes nesse momento. Após alterações da infraestrutura, deve utilizar-se um instalador atual ou indicar explicitamente o Relay pela CLI.
Palavras-passe Proxy não devem permanecer em scripts, perfis MDM ou Outputs legíveis. É preferível uma função Secrets da plataforma de Deployment.
Substituir nomes de computador e domínio
--computernameoverride e --domainnameoverride influenciam a apresentação no Sophos Fusion (anteriormente Sophos Central). Ambas as opções destinam-se a uma instalação nova.
--computernameoverride CH-ZRH-MAC-042
--domainnameoverride corp.example
O nome do computador é passado ao instalador sem aspas adicionais. Uma alteração posterior pode criar um segundo objeto. Overrides são utilizados apenas com uma origem de nomes documentada.
--mcsPreferHostname comunica utilizadores como domain\username em vez de machine\username. Pode reduzir duplicados locais, mas tem de corresponder à estratégia de identidade.
Tenant e Registration Server
--customertoken <UUID> atribui a instalação a um cliente Central. --mgmtserver <URL> define o MCS Registration Server. Ambos são normalmente herdados do instalador associado ao tenant e não são inventados.
--bypasstaegisidcheck permite ignorar um Taegis Tenant ID Check diferente. É um caso especial específico e não um parâmetro padrão. Antes da utilização, esclarece-se por que motivo os Tenant IDs não coincidem.
Controlar nomes através de plist
Em alternativa, nome de computador, domínio e descrição podem ser definidos em:
/Library/Preferences/com.sophos.mcs-overrides.plist
CLI Overrides têm prioridade. Os valores têm entre 1 e 256 caracteres e não podem incluir quebras de linha nem os caracteres <, >, &, ', " e /.
Se o ficheiro for alterado após a instalação, pode aparecer um novo objeto Central, enquanto o antigo permanece. A alteração é carregada por reinício ou pelo seguinte MCS Restart:
sudo launchctl stop com.sophos.mcs
Permissões de segurança macOS
Dependendo da versão e dos componentes instalados, a Sophos necessita em especial de:
- System Extensions aprovadas,
- Network Extensions e Content Filter aprovados,
- Full Disk Access,
- permissões de notificações,
- permissões Web ou Scan Extension.
Os perfis atuais são descarregados no Sophos Fusion antes do instalador. Perfis criados internamente são comparados com a documentação atual, porque Team IDs, Bundle IDs e Payloads podem mudar com os componentes.
Verificar as permissões
A interface Endpoint local mostra requisitos em falta em About ou Health. A Sophos também documenta uma verificação pelo Terminal e outra para Remote Deployments.
Na validação, comparam-se três níveis:
- MDM comunica todos os perfis como instalados.
- O agente local não indica Security Permissions em falta.
- Central mostra corretamente Health, componentes e Last Active.
Se o estado continuar fraco, não se distribuem novos perfis indiscriminadamente. Primeiro, identifica-se a Extension ou permissão de privacidade concreta em falta.
Para a verificação detalhada apenas de leitura, um administrador concede primeiro Full Disk Access ao Terminal e executa:
sudo sqlite3 /Library/Application\ Support/com.apple.TCC/TCC.db 'select * from access' | grep -i sophos
O comando lê a base TCC da Apple, filtra as entradas Sophos e não altera permissões. Os resultados dependem da licença e dos produtos instalados. Depois, retire novamente Full Disk Access do Terminal.
Num Deployment remoto, copie o ficheiro de override apenas para inspeção; a policy ativa permanece inalterada:
sudo cp /Library/Application\ Support/com.apple.TCC/MDMOverrides.plist ~/Desktop/
Compare os Payloads MDM com os componentes realmente instalados. Para com.sophos.endpoint.uiserver, o requisito completo de Code Signing deve ser:
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"
Compare o requisito completo, não apenas Team ID 2H5GFH3774. Se Identifier, Anchor, condição de Certificate ou Team ID diferirem, não edite a base TCC nem a plist e não enfraqueça o requisito. Volte a distribuir o perfil MDM Sophos atual e correspondente; se Self Help continuar vermelho, escale com um arquivo SDU.
Elimine explicitamente a cópia de diagnóstico depois, pois contém dados de Security Policy:
rm -f ~/Desktop/MDMOverrides.plist
Erros de Update no macOS
Permissões em falta podem surgir como problema de Update ou Health. No macOS 14 e 15, a falta de Full Disk Access para SophosUpdater pode bloquear Updates em versões Endpoint anteriores a 2024.3 (10.9.1). Desde Endpoint 2024.4 (10.9.5), Sophos Updater service health fica vermelho se faltar a permissão, mesmo sem falha de Update. O vermelho sozinho não comprova uma falha atual. Um administrador pode executar esta verificação oficial read-only:
sudo log show --predicate "subsystem == 'com.sophos.macendpoint'" --last 1d | grep -i 'Error renaming Installer directory'
Uma saída sustenta o problema específico de permissões. Para a condição anterior a 2024.3 (10.9.1) sem MDM, ative manualmente SophosUpdater.app em System Settings > Privacy & Security > Full Disk Access; se não surgir, adicione /Library/Sophos Anti-Virus/SophosUpdater.app com o botão mais. Para o Health vermelho preventivo desde 2024.4 (10.9.5), use antes Endpoint Self Help > Prerequisites > Allow Full Disk Access, porque o seletor normal pode não mostrar um Updater que o macOS não tenha bloqueado. Com MDM, distribua em ambos os casos o perfil Sophos atual correspondente aos componentes instalados. Volte a verificar Self Help, Updater Health, Agent Version, Last Agent Update e Events. Se persistir após um ciclo completo, recolha um arquivo SDU e escale para Sophos Support. Retire Full Disk Access concedido apenas ao Terminal para diagnóstico; SophosUpdater continua a exigir a própria permissão.
Em caso de erro, use Events locais, Self Help e SDU. Verifique ainda perfil MDM, hora do sistema, proxy, certificados root e domínios Sophos.