
Automatize a auditoria Active Directory com n8n e ETC Collector
O ETC Collector é um auditor de segurança para Active Directory e Microsoft Entra ID escrito em Go: um único binário estático, sem agente, sem dependências, nem .NET nem Python. Executa mais de 500 controlos de segurança mapeados em 9 referenciais de conformidade.
Este workflow n8n aciona a auditoria via API, agrega os resultados, formata um relatório HTML classificado de A a E e envia-o por email. O assunto traz a nota e o número de achados críticos: triagem sem abrir.
O valor não está no relatório isolado, mas na sua repetição: o cron de segunda-feira compara uma semana com a outra e revela desvios. Não é mais um relatório qualquer.
Seis etapas, um relatório classificado e entregue
Cada execução segue a mesma cadeia, seja o acionamento manual ou agendado. Nada fica em aberto entre a auditoria e o email recebido.
Acionamento
Um webhook HTTP ou um cron semanal inicia o workflow, à escolha.
Autenticação
O n8n autentica-se junto do coletor com um token de cabeçalho dedicado (X-GUI-Token).
Auditoria via API
O workflow chama a API do coletor para iniciar a auditoria Active Directory e Microsoft Entra ID.
Agregação
O n8n agrega os resultados brutos devolvidos pelo coletor.
Formatação HTML
O relatório é formatado em HTML, com uma nota global de A a E.
Resposta e envio
O workflow responde à chamada web e envia o relatório por email; o assunto traz a nota e o número de críticos.
Instalar o coletor e ligar o n8n, passo a passo
O guia divide-se em três partes: A instala o coletor em Linux (recomendado), B cobre a alternativa Windows, C liga o resultado ao n8n.
O código-fonte está publicado no GitHub (links no final da página), release v3.2.0. Cada comando abaixo foi verificado numa máquina limpa: Ubuntu 22.04 para Linux, Windows Server 2022 para Windows.
- Um servidor Linux amd64 ou um Windows Server.
- Uma conta de serviço Active Directory apenas de leitura.
- Uma instância n8n que consiga alcançar o coletor.
- 1
A1 · Descarregar e verificar (Linux)
Descarrega o arquivo Linux e o respetivo ficheiro de somas de verificação, e verifica a integridade do arquivo com sha256sum.
bashVERSION=3.2.0 BASE=https://github.com/etcsec-com/etc-collector-com/releases/download/v${VERSION} curl -LO ${BASE}/etc-collector-${VERSION}-linux-amd64.tar.gz curl -LO ${BASE}/checksums.sha256 sha256sum -c checksums.sha256 --ignore-missingSaída esperadaetc-collector-3.2.0-linux-amd64.tar.gz: OK - 2
A2 · Instalar o binário (Linux)
Extrai o arquivo, instala o binário em /usr/local/bin e verifica a versão instalada.
bashtar -xzf etc-collector-${VERSION}-linux-amd64.tar.gz sudo install -m 0755 etc-collector-${VERSION}-linux-amd64/etc-collector /usr/local/bin/etc-collector etc-collector --versionSaída esperadaetc-collector version 3.2.0 - 3
A3 · Instalar o serviço (Linux)
Cria a configuração em /etc/etc-collector, instala o serviço systemd e mostra o token de GUI uma única vez (formato etcsec_gt_...): guarde-o de imediato, é ele que o n8n vai usar para se autenticar.
Em caso de perda, regenere-o com sudo etc-collector gui-token reset e reinicie o serviço: não relê o token a quente.
bashsudo etc-collector install --mode server - 4
A4 · Abrir o acesso de rede e ligar o Active Directory (Linux)
Escreva este ficheiro em /etc/etc-collector/config.yaml para escutar para além do loopback e declarar a conta de serviço que vai consultar o diretório: uma conta apenas de leitura é suficiente. Reinicie depois o serviço.
Assim que o servidor escuta fora do loopback sem certificado fornecido, gera um certificado autoassinado e passa a HTTPS: é o esperado, e é por isso que o nó n8n marca « Ignore SSL issues ». Em laboratório, ldap://YOUR-DC:389 também funciona.
bashserver: host: "0.0.0.0" port: 8443 ldap: url: "ldaps://YOUR-DC:636" bindDN: "[email protected]" bindPassword: "${LDAP_BIND_PASSWORD}" baseDN: "DC=example,DC=com" # depois: sudo systemctl restart etcsec-collector - 5
A5 · Verificar (Linux)
Chama o endpoint /health do coletor para confirmar que responde.
bashcurl -sk https://YOUR-COLLECTOR-HOST:8443/healthSaída esperadastatus: ok, edition: pro, version: 3.2.0
- 1
B1 · Descarregar e verificar (Windows, PowerShell)
Descarrega o arquivo Windows e o ficheiro de somas de verificação, calcula o hash SHA-256 local e compara os dois.
powershell$VERSION = "3.2.0" $BASE = "https://github.com/etcsec-com/etc-collector-com/releases/download/v$VERSION" Invoke-WebRequest -Uri "$BASE/etc-collector-$VERSION-windows-amd64.zip" -OutFile "etc-collector-$VERSION-windows-amd64.zip" Invoke-WebRequest -Uri "$BASE/checksums.sha256" -OutFile checksums.sha256 $expected = (Select-String "windows-amd64" checksums.sha256).Line.Split()[0] $actual = (Get-FileHash "etc-collector-$VERSION-windows-amd64.zip" -Algorithm SHA256).Hash.ToLower() if ($expected -eq $actual) { "OK" } else { "MISMATCH" }Saída esperadaOK - 2
B2 · Extrair e verificar a versão (Windows)
Extrai o arquivo em C:\Program Files\ETCSec e verifica a versão instalada.
powershellExpand-Archive -Path "etc-collector-$VERSION-windows-amd64.zip" -DestinationPath "C:\Program Files\ETCSec" & "C:\Program Files\ETCSec\etc-collector-$VERSION-windows-amd64\etc-collector.exe" --versionSaída esperadaetc-collector version 3.2.0 - 3
B3 · Instalar o serviço (Windows)
A partir de uma consola de administrador, instala o coletor como serviço (SCM do Windows): mesma lógica do Linux, o token de GUI é mostrado uma única vez.
powershelletc-collector install --mode server
Ligar o n8n
Depois de instalar o coletor (Linux ou Windows), estes três passos ligam-no ao n8n.
- 1
C1 · Importar o workflow para o n8n
Descarregue o ficheiro JSON do workflow indicado acima e importe-o na sua instância n8n, ou copie o JSON com o botão acima e cole-o diretamente na tela (Ctrl+V ou Cmd+V), sem precisar de ficheiro.
n8n → Workflows → Import from File → n8n-audit-ad-etc-collector.json - 2
C2 · Criar a credential Header Auth
Crie uma credential n8n do tipo Header Auth com o cabeçalho X-GUI-Token, cujo valor é o token de GUI gerado na etapa A3 (ou B3 no Windows).
Substitua YOUR-COLLECTOR-HOST pelo endereço real do seu coletor nos dois nós HTTP do workflow, e aponte o nó Gmail para o seu próprio endereço de notificação.
Header Auth Name: X-GUI-Token Value: <token de GUI da etapa A3> URL do coletor: https://YOUR-COLLECTOR-HOST:8443 - 3
C3 · Ativar o acionador
Ative o workflow no n8n: o webhook mostra o relatório diretamente no navegador, e o cron de segunda-feira envia-o por email através do nó Gmail.
Um relatório classificado, não uma pilha de logs
Cada execução produz uma nota global de A a E, pensada para ser lida a partir do assunto do email, mesmo antes de abrir o relatório.

Um auditor em Go, um único binário, uma única edição
O ETC Collector executa mais de 500 controlos de segurança sobre Active Directory e Microsoft Entra ID, mapeados em 9 referenciais de conformidade: ANSSI, CIS, NIST 800-53, DISA STIG, HDS, NIS2 FR, RGPD e dois guias ANSSI dedicados.
Esta versão elimina a divisão Community e Pro das edições anteriores: passa a existir uma única edição, o mesmo binário para todos.
O que não escondemos
- Esta versão é publicada sem assinatura: verifique a proveniência do binário antes de qualquer implementação em produção.
- Em alguns modos, a saída do coletor mistura logs e JSON no stdout. É um defeito conhecido e já registado.
