Sobre o projeto

O CFGMS é uma plataforma de código aberto de configuração, automação e gestão de infraestrutura voltada para provedores de serviços gerenciados (MSPs) e equipes de TI. Foi projetado para gerenciar frotas grandes e multi-tenant de máquinas Windows, Linux e macOS a partir de um único plano de controle, e o projeto afirma que sua intenção não é apenas relatar que algo está errado, mas conectar um dispositivo ou aplicação afetada às suas dependências e mudanças recentes, identificar a causa provável e remediá-la com segurança. O README observa que essas capacidades de causa raiz e Digital Employee Experience (sinais de experiência, baselines de frota, insights preditivos, remediação) estão planejadas sobre a fundação existente, em vez de finalizadas. O conjunto de funcionalidades documentadas abrange configuração de estado desejado e policy-as-code; detecção e aplicação de drift de configuração; automação de workflow e orientada a eventos; multi-tenancy hierárquico para MSPs e seus clientes; inventário de endpoints com telemetria ao vivo e estado histórico; e um grafo de entidades para modelagem de sistemas e seus relacionamentos. Integrações são listadas para Microsoft 365, Active Directory, endpoints e infraestrutura. A arquitetura é construída em torno de três componentes cooperativos. O Controller é o plano de controle central para configuração, orquestração, workflows, estado da frota, APIs e administração multi-tenant. O Steward é o agente que observa e gerencia um endpoint Windows, Linux ou macOS. O Outpost é um componente planejado de proxy local e descoberta para redes e dispositivos que não podem executar um Steward. A comunicação interna de controle e plano de dados utiliza gRPC sobre QUIC com TLS mútuo, enquanto as integrações externas utilizam HTTPS e a API REST. O design de segurança assume que endpoints e, ocasionalmente, contas de administrador, podem ser comprometidos. A comunicação interna requer TLS mútuo, segredos são criptografados, módulos executáveis são assinados, a autorização é ciente do tenant e a atividade relevante para a segurança é auditada. Relatórios de vulnerabilidades são tratados de forma privada, em vez de através de issues públicas. As interfaces incluem uma ferramenta de linha de comando cfg e uma API REST, com uma UI web servida pelo controller descrita como estando em desenvolvimento inicial. A compilação a partir do código-fonte requer Go e Git; o comando make build coloca os binários em bin/. A implantação requer a inicialização da CA do controller e do pacote de credenciais de administrador com --init --config, e os stewards ingressam usando um token de registro emitido pelo controller. A documentação cobre um passo a passo de controller único, arquiteturas suportadas e outras topologias de implantação. O projeto descreve-se como estando em desenvolvimento inicial: a arquitetura central e um conjunto crescente de componentes estão implementados, mas ainda não deve ser tratado como um produto de produção finalizado, e as interfaces e procedimentos de implantação podem mudar. A direção é acompanhada em um roadmap e quadro de projeto. O licenciamento é GNU Affero General Public License v3.0, portanto, pode ser auto-hospedado e usado por MSPs para gerenciar ambientes de clientes sob a AGPL, com uma licença comercial separada disponível para incorporá-lo em produtos proprietários. As contribuições exigem a assinatura de um Contributor License Agreement e a adição do contribuidor a um arquivo de contribuidores.