Saltar para o conteudo
Avanet

Automatizar a implementação do Sophos Endpoint no Windows

Este artigo trata apenas da implementação não assistida do SophosSetup.exe através de distribuição de software, RMM ou scripts. Os artigos ligados em separado abrangem uma instalação interativa individual e a resolução detalhada de problemas.

RMM é aqui uma via de execução genérica, não uma integração de produto certificada pela Sophos. A ferramenta escolhida tem de executar o instalador como SYSTEM ou administrador local, disponibilizar em conjunto o pacote e o wrapper, preservar o estado de saída real e gerir de forma controlada o timeout e as repetições.

Definir o âmbito e o acordo de implementação

Antes da primeira execução, registe dispositivos-alvo, janela de manutenção, produto esperado, grupo de destino, trajeto de rede e responsável. Comece com alguns dispositivos piloto representativos e avance apenas em fases limitadas. Antes de cada fase, reveja as alterações de versão do Core Agent em Sophos Endpoint Updates, Cache e Message Relay; uma versão publicada pode ainda não estar disponível em todo o lado devido à disponibilização faseada.

Um código de processo, por si só, não torna o job bem-sucedido. Este deve devolver o estado de saída real, e o dispositivo deve atingir o estado local e do Sophos Fusion (anteriormente Sophos Central) acordado.

Preparar o instalador e os pré-requisitos

Transfira um instalador Windows novo do tenant correto em My Environment > Installers com Download Complete Windows Installer. Apesar do nome, SophosSetup.exe é um instalador leve que transfere as funções disponíveis na licença. A Sophos permite a transferência e execução automatizada, incluindo com o SCCM. Não use o instalador específico de um utilizador do fluxo Email Deployment: todos os dispositivos ficariam associados à conta Sophos Fusion do remetente.

O instalador está associado ao tenant e é confidencial: terceiros não obtêm acesso ao portal, mas podem registar dispositivos. Elimine as cópias após a implementação e distribua-o apenas por armazenamento com acesso controlado. Após uma divulgação, Expire Previously Downloaded Installers em My Environment > Installers bloqueia todos os downloads anteriores; a ação é irreversível.

Antes do piloto:

  • Confirme que o Sophos Fusion suporta atualmente a versão Windows.
  • Garanta que o contexto de implementação fornece a elevação necessária para instalar software de endpoint.
  • Confirme as licenças. Um produto pedido sem licença no tenant não é instalado.
  • Aplique no firewall ou proxy os requisitos de rede e proxy do Sophos Endpoint, incluindo TCP 443 de saída e DNS 53. Volte a verificar os requisitos documentados antes de cada implementação, em vez de manter uma lista estática antiga no script.
  • Teste a decisão de remoção ou coexistência para a proteção concorrente existente.
  • Disponibilize SophosSetup.exe e argumentos localmente ou por distribuição controlada. O pacote deve pertencer ao tenant onde o dispositivo é esperado.

Criar o comando piloto

Este exemplo PowerShell instala XDR silenciosamente, coloca o computador no subgrupo Pilot de Workstations, aplica duas tags e devolve o código real ao sistema de implementação:

$ErrorActionPreference = 'Stop'
$agentPaths = @(
    if (${env:ProgramFiles(x86)}) {
        Join-Path ${env:ProgramFiles(x86)} 'Sophos\Management Communications System\Endpoint\McsClient.exe'
    }
    if ($env:ProgramFiles) {
        Join-Path $env:ProgramFiles 'Sophos\Management Communications System\Endpoint\McsClient.exe'
    }
)
$installedAgent = $agentPaths | Where-Object {
    Test-Path -LiteralPath $_ -PathType Leaf
} | Select-Object -First 1
if ($installedAgent) {
    Write-Output "Sophos agent already installed: $installedAgent"
    exit 0
}

$installer = Join-Path $PSScriptRoot 'SophosSetup.exe'
if (-not (Test-Path -LiteralPath $installer -PathType Leaf)) {
    throw "SophosSetup.exe must be staged beside this wrapper: $installer"
}
$arguments = @(
    '--quiet'
    '--products=xdr'
    '--devicegroup=Workstations\Pilot'
    '--tag=Rollout:wave-0'
    '--tag=ManagedBy:RMM'
)
$process = Start-Process -FilePath $installer -ArgumentList $arguments -Wait -PassThru
$exitCode = $process.ExitCode
Write-Output "SophosSetup.exe exit status: $exitCode"
exit $exitCode

Este wrapper destina-se a novas instalações. Se encontrar McsClient.exe, termina com o código 0 e não altera o registo do tenant, o âmbito dos produtos, o grupo ou as tags. Verifique separadamente no Sophos Fusion as instalações existentes e use o fluxo específico de migração ou gestão quando necessitarem de alterações.

As barras invertidas exprimem a hierarquia de --devicegroup. Coloque o caminho completo entre aspas se um grupo contiver espaços, por exemplo --devicegroup="Application Servers\Terminal Servers". Um grupo ou subgrupo inexistente é criado. Por isso, o piloto deve usar um caminho intencional e verificá-lo depois no Sophos Fusion.

As tags usam --tag=<name>:<value>; apenas um nome, como --tag=Pilot, também é válido. Repita o argumento para tags adicionais.

Escolher o método de implementação

Os critérios de validação mantêm-se qualquer que seja a ferramenta: execute o instalador associado ao tenant no contexto do computador, avalie o código do processo e confirme o estado esperado localmente e no Sophos Fusion. As vias AD e Intune aqui descritas usam o wrapper para detetar uma instalação existente e devolver sem alterações o código do instalador. Na execução MECM direta, uma Application controla as repetições através da respetiva Detection Method; para um Package, a atribuição e o agendamento têm de impedir reinstalações involuntárias. A Sophos documenta scripts de arranque do Active Directory, Microsoft Intune e MECM.

Script de arranque do Active Directory

Guarde o wrapper PowerShell acima como Deploy-SophosEndpoint.ps1. Pode ser atribuído como script de arranque do computador. Ao contrário de um script de início de sessão, é executado antes do login com direitos do computador; um script de login exigiria um utilizador administrador local. Guarde o wrapper e SophosSetup.exe num local que só os administradores possam alterar e as contas de computador-alvo possam ler.

Em Group Policy Management Console (gpmc.msc), associe primeiro a GPO a uma OU piloto. O caminho exato é Computer Configuration > Policies > Windows Settings > Scripts (Startup/Shutdown) > Startup; para PowerShell use PowerShell Scripts. Abra Show Files… e copie para essa pasta Deploy-SophosEndpoint.ps1 e o SophosSetup.exe do tenant. Os ficheiros têm de ficar lado a lado para que $PSScriptRoot encontre o instalador. Depois selecione Deploy-SophosEndpoint.ps1 com Add… > Browse. Confirme Links e Security Filtering em Scope; conceda Read e Apply Group Policy apenas aos computadores piloto ou a um grupo de computadores dedicado. Execute gpupdate /force num piloto e reinicie. O exemplo Batch da Sophos deteta Sophos\Management Communications System\Endpoint\McsClient.exe em %ProgramFiles(x86)% nos sistemas de 64 bits e em %ProgramFiles% em x86. Um wrapper próprio pode usar uma deteção interna pelo menos igualmente específica. Confirme acesso à partilha, contexto do computador, ausência de reinstalação e registo do código de saída.

Microsoft Intune

Use uma conta com permissão para gerir o Intune. Crie pastas dedicadas para origem, saída e ferramenta; os exemplos documentados usam C:\Temp\IntunePackageSource, C:\Temp\IntunePackageOutput e C:\Temp\Intune-Win32-App-Packaging-Tool-master. Coloque SophosSetup.exe e o wrapper aprovado na pasta de origem e execute o IntuneWinAppUtil.exe da Microsoft. Indique a pasta de origem, SophosSetup.exe como ficheiro de instalação e a pasta de saída, e responda Catalog folder: N. O sucesso apresenta INFO File 'C:\Temp\IntunePackageOutput\SophosSetup.intunewin' has been generated successfully.

Em Microsoft Intune admin center, abra Apps > All Apps > Add, escolha Windows app (Win32) e carregue SophosSetup.intunewin através de Select app package file. Em Program, a base publicada é SophosSetup.exe --quiet; para esta implementação defina Install command exatamente como powershell.exe -NoProfile -NonInteractive -ExecutionPolicy Bypass -File ".\Deploy-SophosEndpoint.ps1". O pacote tem de conter Deploy-SophosEndpoint.ps1 e SophosSetup.exe lado a lado, para que o wrapper forneça os argumentos piloto e $PSScriptRoot seja resolvido corretamente. Para o âmbito atual suportado de Windows e Core Agent no guia de desinstalação associado, defina Uninstall command exatamente como "C:\Program Files\Sophos\Sophos Endpoint Agent\SophosUninstall.exe" --quiet (execução SophosUninstall.exe --quiet). Apenas em plataformas legacy, use antes "C:\Program Files\Sophos\Sophos Endpoint Agent\uninstallcli.exe" --quiet (execução uninstallcli.exe --quiet); siga o guia quanto a pré-requisitos, produtos protegidos e reinício. Mantenha inalterados os mapeamentos predefinidos de Return code e Code type, salvo se o contrato de implementação testado exigir outro tratamento. Escolha arquitetura e Minimum OS em Requirements. Em Detection rules, configure Rule type: File, Path: %ProgramFiles%\Sophos\Sophos UI, File or folder: Sophos UI.exe, Detection method: File or folder exists. Teste a deteção: impede repetições, mas não comprova registo no Sophos Fusion, produtos ou grupo. Deixe Dependencies e Supersedence inalterados se não forem planeados. Atribua primeiro apenas o grupo piloto em Assignments > Required. Após Review + create, observe a instalação automática nos dispositivos inscritos. Windows Autopilot é o método de inscrição recomendado pela Sophos, não um requisito do pacote.

Microsoft Endpoint Configuration Manager (MECM)

Os Packages são o método legado simples; as Applications acrescentam deteção, dependências, requisitos e versões. Para um Package, use Software Library > Application Management > Packages > Create Package, aponte This package contains source files para a origem protegida de SophosSetup.exe e crie um Standard program com SophosSetup.exe --quiet, Program can run: Whether or not a user is logged on, Run mode: Run with administrative rights e Drive mode: Runs with UNC name. Em Deploy, escolha a Device Collection piloto, Distribution Point, Purpose: Required, agendamento e experiência do utilizador.

Para uma Application, use Applications > Create Application > Manually specify the application information. O Deployment Type usa a origem UNC e define Installation program exatamente como SophosSetup.exe --quiet; este comando MECM direto é distinto do comando Intune com wrapper acima e não inclui automaticamente as opções de produto, grupo ou tag do exemplo piloto. Acrescente deliberadamente essas opções ao comando direto ou a um wrapper testado para MECM. Una com And três cláusulas: C:\Program Files\Sophos\Endpoint Defense\SEDService.exe sem associação a 32 bits e C:\Program Files\Sophos\AutoUpdate\SophosUpdate.exe mais C:\Program Files\Sophos\Management Communications System\Endpoint\McsClient.exe como aplicações de 32 bits em sistemas de 64 bits; cada ficheiro deve existir. Em User Experience, escolha Installation behavior: Install for system, Logon requirement: Whether or not a user is logged on, Installation program visibility: Normal, sem interação e a estimativa documentada de dez minutos. Depois distribua para uma coleção piloto e Distribution Point com Purpose: Required.

Em todos os métodos, substitua o pacote sob controlo de alterações. Remova cópias, referências e atribuições antigas apenas após validar a nova fase piloto. As opções abaixo podem ser acrescentadas ao comando de instalação direto ou a um wrapper conforme a via; os comandos MECM diretos não herdam automaticamente os parâmetros piloto.

Escolher as opções de forma deliberada

A documentação CLI Windows atual inclui estas opções suportadas:

  • --quiet, --noproxydetection, --nocompetitorremoval e --language=<ID> controlam interface, deteção de proxy, remoção de concorrentes e idioma.
  • --products=<lista> aceita endpoint, xdr, xdrsensor, deviceEncryption, ztna, all e none; separe vários valores por vírgulas.
  • --devicegroup, --tag, --computernameoverride e --domainnameoverride controlam localização e identidade apresentada. Use substituições apenas com uma estratégia de nomes inequívoca.
  • --crtcatalogpath=<caminho> aponta para um catálogo personalizado dos concorrentes a remover.
  • Use --customertoken=<UUID> e --epinstallerserver=<URL> apenas quando o fluxo automático ou de parceiro exigir estes valores fornecidos pela Sophos.
  • --registeronly volta a registar a proteção Sophos existente noutra conta. Primeiro, desative Tamper Protection no dispositivo e utilize o instalador da conta de destino.
  • --goldimage, --notificationmode, --goldimagetimeout=<segundos> e --nonpersistent pertencem a um fluxo VDI gold image validado em separado, com as versões mínimas indicadas pela Sophos, não a uma implementação normal de postos.

A Sophos limita --bypassacscheck às plataformas Windows 10 x86 legacy. --bypasstaegisidcheck ignora uma verificação do ID de tenant Taegis. Não acrescente preventivamente estes bypasses ao pacote padrão.

Decidir o produto e o tratamento de concorrentes

endpoint instala antimalware sem XDR. xdr inclui XDR e toda a proteção de endpoint. xdrsensor fornece XDR sem antimalware, exigindo proteção de terceiros. none instala apenas core agents e pode servir para uma validação gradual da compatibilidade. all instala todos os produtos licenciados e ignora os restantes.

Ao instalar Sophos Anti-Virus, o instalador tenta remover por predefinição os concorrentes detetados. --nocompetitorremoval impede essa tentativa. Não é uma garantia geral de coexistência. Antes de endpoint ou xdr, teste deteção, remoção, reinícios e reposição com o produto terceiro específico. Escolha xdrsensor apenas se o produto mantido assumir expressamente a proteção.

Configurar proxy, Message Relay e origem local

Defina um proxy válido apenas durante a instalação com --proxyaddress=<host>:<porta> ou --pacurl=<URL>. Para proxies autenticados, a Sophos afirma que os endpoints Windows suportam apenas Digest Authentication; passe as credenciais com --proxyusername e --proxypassword. --noproxydetection desativa a deteção automática.

Indique os Message Relays como uma lista host:porta separada por vírgulas. A porta predefinida documentada é 8190:

SophosSetup.exe --quiet --products=endpoint `
  --messagerelays=relay01.example.net:8190,10.20.30.40:8190

Não existe opção CLI para atribuir um Update Cache. O instalador avalia automaticamente a conectividade aos caches configurados na conta Sophos Fusion.

--localinstallsource=<caminho> reduz downloads, mas não elimina o requisito de Internet: alguns ficheiros continuam a ser transferidos. Deve existir uma pasta SophosLocalInstallSource na localização indicada. Uma pasta vazia é preenchida na primeira instalação; para preenchimento prévio, a Sophos menciona conteúdo de %ProgramData%\Sophos\AutoUpdate\data\repo ou %ProgramData%\Sophos\UpdateCache\www\v3.

Proteger segredos, estado de saída e logs

Não coloque o instalador, Customer Token ou palavra-passe do proxy em partilhas públicas, controlo de código, output de comandos ou tickets. Sempre que possível, injete os valores em runtime a partir do secret store da plataforma. As linhas de comando podem ser visíveis para administradores locais e ferramentas de inventário; um proxy autenticado sem credenciais específicas e limitadas é um risco.

Registe hora de início, alvo, argumentos não secretos e estado de saída inalterado, como no exemplo. A página CLI oficial não publica um mapeamento estável de códigos numéricos, pelo que este artigo não inventa um. O código é um sinal técnico; as verificações local e no Sophos Fusion são determinantes para a validação.

Os logs do instalador encontram-se em C:\ProgramData\Sophos\CloudInstaller\Logs\ com o padrão temporal SophosCloudInstaller_<date>_<time>.log. Use o ficheiro correspondente à tentativa em causa. --traillogging regista o conteúdo das mensagens entre dispositivo e Sophos Fusion. Use-o apenas por indicação do Sophos Support; o suporte também deve fornecer o procedimento explícito de desativação do fluxo de diagnóstico MCS atual e confirmar que o registo ficou desativado. Verifique se existem segredos antes de partilhar logs.

Validar o piloto e libertar fases

Em cada piloto, confirme que a proteção Sophos esperada está ativa, que não existe uma falha involuntária na proteção de terceiros e que os reinícios necessários terminaram. Após a instalação do agente, abra My Environment > Computers & Servers no Sophos Fusion e confirme que o dispositivo aparece com o estado de funcionamento, os produtos instalados, a última atividade e o grupo esperados. Abra a página de detalhes do computador para obter mais informações.

Após o período de observação acordado, liberte uma pequena fase representativa e depois fases maiores. Compare conclusão, registo Sophos Fusion, estado, reinícios e conflitos em cada fase. Inclua diferentes locais, trajetos proxy, versões Windows e produtos terceiros no piloto antes da implementação alargada.

Parar, reverter e escalar

Pare a fase seguinte se os dispositivos não aparecerem no Sophos Fusion, a proteção não ficar ativa, as falhas excederem o limiar acordado ou se concentrarem problemas de rede, reinício ou concorrentes. Suspenda primeiro a atribuição e as repetições automáticas; não coloque dispositivos falhados num ciclo cego de reinstalação.

Reverter o job não repõe automaticamente um concorrente removido pelo instalador. Se a validação falhar, trate isoladamente os dispositivos afetados: desinstale corretamente o Sophos, reponha o produto anterior ou mantenha o estado Sophos funcional conforme o plano aprovado. Não altere sem critério objetos do Sophos Fusion, Tamper Protection ou validade do instalador. O artigo separado de desinstalação cobre a remoção completa.

Para escalamento, recolha tenant/região, data e hora, dispositivo, versão Windows, argumentos não secretos, estado de saída inalterado, fase e o ficheiro correspondente SophosCloudInstaller_<date>_<time>.log. Remova segredos. Envie estas evidências ao Sophos Support perante falhas inexplicáveis ou reproduzíveis; em diferenças de versão, registe também a versão Core Agent efetivamente disponibilizada.

Artigos relacionados

Para uma instalação interativa, consulte Instalar o Sophos Endpoint no Windows. Gerir o Agent Mode e software do Sophos Endpoint explica os modos. VDI tem requisitos diferentes de identidade e clonagem; consulte Preparar o Sophos Endpoint numa VDI Gold Image. Para remoção completa, consulte Desinstalar o Sophos Endpoint no Windows. O diagnóstico aprofundado fica fora deste fluxo.