Quero fazer um repositório central de arquivos de configuração para que eu possa ter as alterações em qualquer configuração sob controle de revisão (Mercurial). Isso incluirá algumas caixas GNU / Linux (que usarão o etckeeper), os arquivos de configuração do equipamento de rede, os arquivos de configuração da impressora e, por último, mas não menos importante, as configurações do Windows.
Eu sei que você pode importar algumas configurações como ISA e DHCP como arquivos de texto / xml e até mesmo pastas compartilhadas como uma chave do Registro, mas para coisas como GPOs e AD, IIS, MSSql e outros, existem maneiras de obter as configurações como arquivos simples? Basicamente, você pode ter algo equivalente ao etckeeper no Windows? Algo como alguns comandos baseados em PowerShell ou algo parecido?
Além disso, as ACLs e outras permissões de arquivo podem ser preservadas sob o controle de versão (hg)?
BTW, eu já li
- Quais soluções existem para permitir o uso do controle de revisão para arquivos de configuração do servidor?
- Que ferramenta você recomenda para rastrear alterações em um servidor Linux / Unix
para nenhum proveito.
fonte
Para ACLs e permissões de arquivo, você pode experimentar o PowerShell:
Nós compramos o Tripwire para executar uma função semelhante, mas ela sofre com a interface do usuário característica e idiossincrática ao ponto de estar enferrujando por negligência.
fonte
No Windows, não existe uma maneira padrão de o software armazenar uma configuração; portanto, não pode haver um método único para lidar com essas configurações. Antes que alguém comece a tagarelar sobre como existe algum tipo de "padrão", vejamos as recomendações da Microsoft até agora.
Os aplicativos, inclusive os da Microsoft, não têm uma maneira ou local padrão para armazenar configurações e usam qualquer um ou todos os métodos acima, além de alguns métodos "não-padrão". Bem-vindo ao mundo inconsistente e em constante mudança do Windows.
fonte
Realmente não existe, de graça de qualquer maneira. Existem produtos comerciais que podem fazer isso, eu entendo que eles são grandes e caros. Opsware (ou HP Server Automation agora) pode fazer isso.
O cara que desenvolveu o MRTG tentou e falhou em algo semelhante há cerca de 10 anos. O ambiente mudou muito; portanto, você poderá desenvolver o trabalho deles e criar algo bom. Por exemplo, você pode despejar GPOs agora, que era um dos problemas deles.
/ edit - e você sempre conseguiu despejar o AD em LDIF ou CSV. Faça uma exportação noturna para um desses e descarte-o em CSV. O IIS está todo no sistema de arquivos e na metabase, que também está no sistema de arquivos. Backups normais e / ou cópias desses arquivos em CSV seriam bons. Configuração do SQL, não tenho tanta certeza; Eu acho que é tudo registro e PS provavelmente tem ganchos para exibi-los.
Uma observação - você pergunta sobre o backup de ACLs em arquivos? Jeebus - diga-me que você está fazendo backup dos arquivos e seu software de backup preserva as ACLs. Se você não está fazendo backup dos arquivos, que benefício são as ACLs para você? Se você não está fazendo backup dos arquivos com ACLs, o que há de errado com o seu software de backup? Você pode ativar a auditoria para alterações da ACL nativamente, talvez queira fazer isso?
fonte
Eu não ouvi falar de um. Embora o Registro possa ser o lar da (mais) configuração no Windows e (mais ou menos) possa ser representado em forma de texto, o melhor que você pode esperar é Documentação de Configuração, em vez de Gerenciamento de Configuração . Existem APIs para monitorar alterações no registro, conforme evidenciado por várias ferramentas Internas do Sistema, que em teoria permitiriam ações baseadas em eventos (reverter para a configuração antiga, por exemplo). Infelizmente, há algumas coisas (a Diretiva de Grupo sendo a maior) que foram projetadas para ultrapassar qualquer restrição de máquina local na alteração de configuração.
No entanto, isso apenas gerencia o sistema operacional básico. Depois que você começa a adicionar outros produtos da Microsoft, a situação fica muito mais complexa. O IIS possui seu próprio banco de dados, a metabase, que não está no registro. O MS-SQL tem um monte de configurações armazenadas no próprio banco de dados, entre outros lugares. O AD certamente pode ser representado como um arquivo simples, é uma exportação LDIF do LDAP, mas novamente isso é documentação, não gerenciamento. As Diretivas de Grupo em si são árvores de diretório preenchidas com arquivos nos Controladores de Domínio.
Não é um trabalho fácil, de forma alguma. É por isso que sistemas como o System Center Configuration Manager da Microsoft ou o Zenworks Configuration Management da Novell são tão complexos quanto são. De fato, até onde eu sei, esses produtos são os mais próximos do Windows para algo como o etckeeper.
fonte
O código em http://gallery.technet.microsoft.com/ScriptCenter/en-us/edca4de3-642a-4a84-9884-e4035c984e31 e http://gallery.technet.microsoft.com/ScriptCenter/en-us/a3c9ad7b -6b5c-40ef-a928-3565432735ee oferece algumas dicas de que pode haver esperança com o comando "netsh" no servidor dhcp. No momento, não tenho um disponível para testar, mas essa é uma via de abordagem.
fonte