Existe um equivalente do etckeeper para o Windows? Controle de revisão de configuração do AKA Windows

11

Eu 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's e DHCPs como arquivos texto / xml e até pastas compartilhadas como uma chave de registro, mas para coisas como GPOs e AD, IIS, MSSQL e outros, existem maneiras de obter as configurações arquivos simples? Basicamente, você pode ter algo equivalente ao etckeeper no Windows? Algo como alguns comandos baseados em powershell ou algo semelhante?

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

sem sucesso.

    
por Community 18.08.2010 / 19:16

6 respostas

4

Mantenha os pacotes!

Este é um script fornecido por Michael J Ginter que cria um backup de todos os escopos DHCP em um servidor. (Observe que ele irá parar e reiniciar o serviço do servidor DHCP.):

link

Você pode usar o LDIFDE para importar e exportar dados do AD: link

GPOs podem ser exportados com o ADMX.exe (fornecido pela microsoft at link

O IIS Config pode ser exportado via iiscnfg.vbs em% systemroot% \ system32 link

    
por 19.08.2010 / 22:29
1

Para ACLs e permissões de arquivo, você pode tentar o PowerShell:

get-acl c:\temp | format-list
get-acl -path hklm:\ | format-list

Nós compramos o Tripwire para fazer uma função semelhante, mas ele sofre com a interface idiossincrática e com recursos exagerados, a ponto de estar enferrujando de negligência.

    
por 18.08.2010 / 20:28
1

No Windows, não há uma maneira padrão para 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 falar sobre como existe algum tipo de "padrão", vamos ver as recomendações da Microsoft até agora.

  • Primeiro nos disseram para criar todas as configurações no win.ini.
  • Em seguida, foram avisados que o win.ini está ficando muito grande, portanto, coloque as configurações em um arquivo .ini no diretório do Windows.
  • Não, o diretório do Windows está ficando confuso. Use o diretório do aplicativo.
  • Veja, temos este novo repositório de configuração central que vamos chamar de "O Registro". Coloque todas as suas coisas lá.
  • Ops, o registro está ficando muito grande. Coloque as configurações no perfil do usuário.
  • Adivinhe, o perfil não está funcionando muito bem ....
  • etc, etc.

Aplicativos, incluindo os da própria Microsoft, não possuem uma maneira padrão ou local para armazenar configurações e usar qualquer um ou todos os métodos acima, bem como alguns métodos "não-padrão". Bem-vindo ao mundo inconsistente e em constante mudança do Windows.

    
por 20.08.2010 / 03:50
0

Realmente não existe, não é 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, então você pode construir seu trabalho e criar algo bom. Por exemplo, você pode despejar os GPOs agora, que era um dos problemas deles.

/ edit - e você sempre conseguiu despejar AD em LDIF ou CSV. Faça uma exportação noturna para um desses e faça slurp 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 deles em CSV seriam bons. Configuração de SQL, não tenho tanta certeza em; Eu acho que é tudo registro e PS provavelmente tem ganchos para exibir esses.

Uma nota - você pergunta sobre o backup de ACLs nos arquivos? Jeebus - por favor, diga-me que você está fazendo o backup dos arquivos, e seu software de backup preserva as ACLs. Se você não estiver fazendo o backup dos arquivos, quais são as vantagens das ACLs para você? Se você não estiver fazendo o backup dos arquivos com ACLs, o que há de errado com seu software de backup? Você pode ativar a auditoria para alterações de ACL nativamente, talvez você queira fazer isso?

    
por 18.08.2010 / 20:01
0

Eu não ouvi falar de um. Enquanto o Registro pode ser o lar de (a maioria) configuração no Windows, e (mais ou menos) pode ser representado em forma de texto, o melhor que você pode esperar é Configuração Documentação ao invés de Configuração Gestão . Existem APIs para monitorar alterações no registro, conforme evidenciado por várias ferramentas System Internals, que, em teoria, permitiriam ações baseadas em eventos (reverter para a configuração antiga, por exemplo). Infelizmente, existem algumas coisas (a Diretiva de Grupo sendo a maior) projetadas para ultrapassar qualquer restrição baseada em máquina local na alteração de configuração.

No entanto, isso apenas gerencia o sistema operacional básico. Quando você começa a adicionar outros produtos da Microsoft, a situação fica muito mais complexa. O IIS tem 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, essa não é uma documentação de gerenciamento. As diretivas de grupo são árvores de diretórios preenchidas com arquivos nos controladores de domínio.

Não é um trabalho fácil por qualquer extensão. É 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. Na verdade, até onde eu sei, esses produtos são os mais próximos do Windows, chegando a algo como o etckeeper.

    
por 18.08.2010 / 20:02
0

O código em link e link Ofereça algumas dicas de que pode haver esperança com o comando "netsh" no seu servidor dhcp. Eu não tenho uma disponível no momento para testar, mas essa é uma via de abordagem.

    
por 19.08.2010 / 22:26