Automated “yum update” para manter o servidor seguro - prós e contras?

8

Estou pensando em adicionar um cronjob executando yum -qy update regularmente em algumas máquinas que não recebem manutenção regular. O objetivo seria manter as máquinas atualizadas em relação aos patches de segurança que, caso contrário, seriam aplicados tarde demais. Estou usando apenas os repositórios de base do CentOS.

Perguntas:

  • Na sua experiência, qual seria a segurança dessa abordagem? Devo esperar atualizações com falha de vez em quando? Aproximadamente com que frequência essa abordagem exigiria reinicializações?
  • Prós / contras ou outras armadilhas com essa abordagem?
  • Como você mantém suas máquinas atualizadas usando a automação?
por knorv 16.08.2009 / 19:51

5 respostas

6

Depende

Na minha experiência com o CentOS, é bastante seguro, já que você está usando apenas os repositórios de base do CentOS.

Se você esperar atualizações com falha de vez em quando ... sim ... no mesmo nível em que você deve esperar um disco rígido com falha ou uma CPU com falha de vez em quando. Você nunca pode ter muitos backups. : -)

O melhor de atualizações automáticas é que você é corrigido (e, portanto, mais seguro) mais rápido do que manualmente.

Os patches manuais sempre parecem ser eliminados ou considerados como "baixa prioridade" para muitas outras coisas, por isso, se você for usar o modo manual AGENDAR HORA EM SEU CALENDÁRIO para fazê-lo.

Eu configurei muitas máquinas para fazer auto yum udpates (via cron job) e raramente tive um problema. Na verdade, não me lembro de ter algum problema com os repositórios do BASE. Todos os problemas em que consigo pensar (na minha opinião, na minha experiência) sempre foram uma situação de terceiros.

Dito isto ... eu tenho várias máquinas para as quais eu manualmente faço as atualizações. Coisas como servidores de banco de dados e outros sistemas EXTREMAMENTE críticos Eu gosto de ter uma abordagem "prática".

A maneira que eu pessoalmente descobri foi assim ... Eu penso no cenário "what if" e então tento pensar em quanto tempo levaria para reconstruir ou restaurar a partir de um backup e o que (se houver) estaria perdido.

No caso de vários servidores da web ... ou servidores cujo conteúdo não muda muito ... eu prossigo e faço a atualização automática porque a quantidade de tempo para reconstruir / restaurar é mínima.

No caso de servidores de banco de dados críticos, etc ... eu programo o horário uma vez por semana para examiná-los e corrigi-los manualmente ... porque o tempo gasto para reconstruir / restaurar é mais demorado.

Dependendo de quais servidores você possui em sua rede e de como seu plano de backup / recuperação é implementado, suas decisões podem ser diferentes.

Espero que isso ajude.

    
por 16.08.2009 / 21:38
6

Pro : seu servidor está sempre no nível de patch mais recente, geralmente até contra explorações de 0 dia.

Con : Qualquer código em execução no servidor que use recursos removidos em versões posteriores, qualquer arquivo de configuração que altere a sintaxe e quaisquer novos "recursos" de segurança que impeçam a execução de código que possa ser explorado podem faça com que as coisas executadas nesse servidor sejam interrompidas sem que você saiba até que alguém o chame com um problema.

Prática recomendada: faça com que o servidor envie um e-mail para você quando precisar ser atualizado. Faça backup ou saiba como reverter atualizações.

    
por 16.08.2009 / 20:24
2
Além do que a maioria das pessoas disse aqui, eu recomendo que você se inscreva na lista de discussão do centos, eles sempre publicam e-mails sobre patches e suas prioridades antes de enviá-los aos repositórios. É útil saber antecipadamente quais pacotes precisam ser atualizados.

Minha configuração está permitindo que o yum atualize automaticamente o sistema uma vez por dia, eu faço o yum me enviar um e-mail com os pacotes instalados ou atualizados logo em seguida. Eu também recebo emails quando o yum tem um conflito e preciso de intervenção manual (a cada 4 horas).

Até agora, tudo está funcionando perfeitamente (por mais de 4 anos), a única vez que fui pego de surpresa foi quando o yum atualizou o kernel regular (eu virtualizei meu servidor) e mudei o grub e coloquei o kernel regular como padrão , 2 semanas depois, durante a manutenção, meu sistema foi reinicializado e todos os meus servidores virtuais desapareceram por alguns minutos, até eu ter que intervir manualmente.

Além disso, eu não tive nenhum problema.

    
por 16.08.2009 / 22:00
1

contanto que você não tenha nenhum pacote personalizado e esteja usando apenas os repositórios Base do CentOS, ele deve ser bastante seguro.

Além disso, a melhor maneira de conseguir isso seria usar yum-updatesd com do_update = yes conjunto.

    
por 16.08.2009 / 20:22
0

Suponho que, desde que você tenha backups automatizados, não seria uma grande preocupação, contanto que você possa viver com o tempo de inatividade do servidor.

Eu não tentei isso; Eu não gostaria de fazer isso pessoalmente porque há um risco significativo de quebrar algo ou ter um problema obscuro incomum introduzido devido a uma correção do upstream. É ainda pior se este for um servidor que raramente recebe atenção, por isso, se algo está errado, você pode não saber sobre isso.

Se você puder viver com o servidor em questão por um período se / quando algo quebrar, e você tiver um plano de resposta para restaurar o sistema de volta ao estado anterior, bem como um sistema para enviar atualizações por meio de logs ou relatórios de e-mail quando e o que foi atualizado (para que você saiba que não está em estado de espera ou aguardando uma resposta a algo que exija intervenção), então você pode testá-lo. Se é um servidor crítico ou algo importante ... eu não quero arriscar.

Meus servidores não são seus: -)

    
por 16.08.2009 / 20:10