Que ferramenta você recomenda para rastrear alterações em um servidor Linux / Unix

38

Eu gerencio vários servidores Linux para clientes em várias funções, como email, cache, serviço de web, filtragem, firewall / roteamento e assim por diante.

Como não possuo esses computadores e apenas forneço suporte remoto, sistemas de gerenciamento central como o Puppet não parecem ser a ferramenta correta. (Corrija-me se achar que estou errado sobre essa suposição)

Quais ferramentas você recomenda para rastrear alterações de arquivos de configuração, instalações de pacotes e assim por diante?

Estou pensando que algo como o etckeeper possa estar próximo do que eu preciso, mas quero saber se há algo melhor.


Atualizar

Teremos backups dos sistemas, e eu não esperaria que esse tipo de ferramenta fosse uma alternativa a um backup. Trata-se de acompanhar as mudanças de configuração e ter um sistema para saber o que mudou quando, por quem e, esperançosamente, por quê.

Zoredache
fonte
Veja também serverfault.com/questions/5410/…
Zoredache
votando no etckeeper. Eu não ouvi sobre isso até agora.
Icaimpan

Respostas:

14

Eu tenho o etckeeper em minha estação de trabalho pessoal, mas ainda não tive muito o que fazer (além de controlar todas as minhas alterações). Parece que ele faz um trabalho razoável para garantir que você pelo menos saiba o que foi brincado.

Eu não descartaria o Puppet como uma solução - contanto que alguns dos serviços na máquina sejam de sua responsabilidade de manter, então um sistema que garante que, se alguém mexer na sua configuração, ela seja recolocada da maneira que você deseja. é uma dádiva de Deus.

Por outro lado, se outros fizerem alterações regularmente (e geralmente não estragam tudo), talvez você precise recorrer ao rastreamento do que outras pessoas fizeram para a recuperação posterior de desastres. Não se esqueça de que as coisas serão alteradas em todo o lugar; portanto, uma ferramenta de ponto de verificação de máquina cheia pode ser melhor. Talvez eu até considere fazer backup incremental de disco completo (como rdiff-backup ou algo assim) para ter certeza de que está rastreando tudo (talvez drop / home e outras áreas de nível de usuário do backup, se você quiser para rastrear alterações administrativas).

mulher
fonte
6

Você pode querer consultar Tripwire ou AIDE

Ambos acompanharão as alterações do arquivo de configuração em suas máquinas.

Mark Turner
fonte
O Tripwire e o AIDE são ferramentas realmente boas, mas são muito pesadas em comparação com o changetrack ou etckeeper. Se você precisar de verificação completa da integridade e recursos IDS baseados em host, eles são uma boa opção. Mas se você quiser apenas monitorar as alterações feitas por outros administradores, eu não as recomendaria.
Christopher Cashell
1
Concordo com a sua avaliação se fosse apenas sobre o Tripwire .. mas o AIDE é extremamente fácil de usar para rastrear apenas alterações do sistema de arquivos.
Mark Turner #
Já faz um tempo desde que eu joguei com o AIDE ou Tripwire, mas quando eu estava procurando algo para monitorar as alterações de configuração (eu finalmente fui com o Changetrack), meu jogo com o AIDE sugeriu que era difícil ou impossível fazê-lo simplesmente enviar diffs de qualquer arquivo alterado na última hora, envie a cada hora (por exemplo). Isso, além de armazenar as alterações em algum tipo de sistema de controle de revisão, era tudo o que eu precisava, e o AIDE parecia complicado para isso. Isso foi há alguns anos, no entanto, então as coisas definitivamente podem ter mudado.
Christopher Cashell
4

Eu olhei para o etckeeper, mas não o usei. No entanto, eu usei o Changetrack . Eu o uso em todas as máquinas domésticas há muitos anos e, no meu trabalho anterior, fazia parte da instalação padrão do servidor. Nós o usamos nos últimos cinco anos e o instalamos em cerca de 200 caixas.

A configuração é trivial (criei um RPM para ele no meu último trabalho) e a configuração é realmente simples. Geralmente, eu o configuro para monitorar todos os arquivos / etc /.

Christopher Cashell
fonte
1
Então, por que você não carregou a rpm no projeto changetrack :)
gbjbaanb
1
Na verdade, eu planejava fazer exatamente isso. No entanto, acabei deixando meu último trabalho antes de fazer o upload e não tenho mais acesso a ele. Vou fazer ping em alguns dos meus ex-colegas de trabalho, para ver se eles conseguem.
precisa
4

Para rastrear alterações de pacotes (instalações, atualizações etc.) em sistemas baseados em RPM, desde que todas as alterações sejam feitas com yumou yumex, cada alteração de pacote esteja conectada /var/log/yum.log.

Outras pessoas já responderam ao rastreamento de alterações /etc. Não esqueça que você também deseja acompanhar as alterações de configuração nas bindquais estão parcialmente /var(pelo menos em muitas distribuições Linux) e nas páginas da Web /var/wwwem muitas distribuições Linux. Haverá diretórios externos /etccom informações importantes de configuração.

Dependendo de como as coisas são gerenciadas, você também pode rastrear /usr/local/etce outras árvores de diretório ( /optalgumas árvores abaixo /vare qualquer outra coisa específica dos seus clientes).

Eddie
fonte
3

Como ponto de partida, convém consultar o Blueprint , que analisa uma configuração do sistema. Embora o objetivo seja criar configurações para o Puppet ou o Chef, não há motivo para você não poder usá-lo apenas para gerar relatórios.

geekosaur
fonte
2

Um script simples de monitoramento de arquivos é filemon . Eu o uso no meu PC doméstico e, combinado com o crontab, ele faz um trabalho simples e fácil. Para uma solução mais complexa de verificação de integridade (alterações de arquivos, novos pacotes instalados e muitos outros), uso o OSSEC em vários servidores.

Dan
fonte
2

Você pode colocar o / etc em um dvcs como o git. Você se comprometeria toda vez que faz alterações e, em seguida, pode simplesmente fazer o git diff sempre que inicia um trabalho e recebe todas as alterações.

baudtack
fonte
1
Boa ideia, é exatamente isso que o etckeeper faz. Ele suporta git, mercurial ou bazar. Ele se conecta ao seu sistema de gerenciamento de pacotes para acompanhar as alterações relacionadas às adições / atualizações de pacotes.
Zoredache
Aqui está um post sobre como configurar algo assim no Arch Linux ARM, que deve ser aplicado igualmente bem aqui. zduck.com/2012/storing-your-raspberry-pi-config-in-git
silent__thought
0

O LBackup possui suporte para registro de exclusão, modificação e adição de arquivos.


fonte