Atualizações de segurança automáticas no CentOS 7

Por que fazer isso
Manter atualizações de segurança aplicadas rapidamente reduz a superfície de ataque. Em geral, aplique atualizações de segurança dentro de 30 dias da publicação. Automatizar o processo diminui erros humanos e garante consistência entre servidores.
O que cobrimos
- Instalar yum-cron no CentOS 7
- Configurar atualizações automáticas de segurança
- Excluir pacotes específicos de atualizações automáticas
- Verificar logs e solucionar problemas
Pré-requisitos
- Servidor CentOS 7
- Privilégios root (ou sudo)
Passo 1 - Instalar yum-cron no CentOS 7
Yum-cron é uma ferramenta de linha de comando para gerenciar atualizações de sistema e pacotes no CentOS.
O utilitário está no repositório padrão do CentOS 7. Instale com:
yum -y install yum-cron
Depois da instalação, inicie o serviço e habilite-o no boot:
systemctl start yum-cron
systemctl enable yum-cron
Pronto. O yum-cron agora está instalado e ativo.
Passo 2 - Configurar yum-cron para atualizações automáticas
Por padrão o yum-cron suporta três tipos de atualização: padrão (yum upgrade), minimal e security. Vamos forçar apenas atualizações de segurança.
Edite o arquivo de configuração do yum-cron:
cd /etc/yum/
vim yum-cron.conf
No arquivo, localize e ajuste as seguintes linhas:
update_cmd = security
update_messages = yes
download_updates = yes
apply_updates = yes
Com isso, sempre que houver atualizações de segurança disponíveis, elas serão baixadas e aplicadas automaticamente.
Agora configure notificações. O yum-cron pode emitir mensagens em STDOUT ou enviar por e‑mail. Para receber por e‑mail, altere:
emit_via = email
E preencha os parâmetros de e‑mail (exemplo):
email_from = root@hakase-labs
email_to = [email protected]
email_host = hakase-labs
Salve o arquivo e reinicie o serviço:
systemctl restart yum-cron
Agora o sistema irá verificar diariamente e aplicar atualizações de segurança automaticamente.
Exemplo completo de bloco de configuração útil
Abaixo um fragmento de configuração prático para colocar em /etc/yum/yum-cron.conf (adapte e-mails e host):
# Tipo de atualização: security, minimal, default
update_cmd = security
# Mensagens e downloads
update_messages = yes
download_updates = yes
apply_updates = yes
# Notificações por e-mail
emit_via = email
email_from = root@hakase-labs
email_to = [email protected]
email_host = hakase-labs
# Logs: use syslog por padrão
# Outros ajustes podem ser feitos conforme a política do seu ambiente
Passo 3 - Excluir pacotes das atualizações automáticas
Às vezes você não quer que certos pacotes sejam atualizados automaticamente (por exemplo, kernels personalizados ou pacotes de banco de dados gerenciados manualmente).
Edite novamente o arquivo:
cd /etc/yum/
vim yum-cron.conf
Procure a seção [base] (ou a área onde as opções globais estão definidas) e adicione uma linha exclude com os padrões de pacote:
exclude = mysql* kernel*
Salve e reinicie o serviço:
systemctl restart yum-cron
Com isso, pacotes cujo nome começar por mysql ou kernel serão ignorados pelas atualizações automáticas.
Importante: se você excluir o kernel, certifique-se de ter um processo manual para atualizá‑lo em horários controlados e testar antes de aplicar em produção.
Passo 4 - Verificar logs do yum-cron
O yum-cron aciona tarefas via cron/syslog. Logs relevantes ficam em /var/log.
Verifique o cron para eventos do yum-daily:
cd /var/log/
cat cron | grep yum-daily
Para listar pacotes atualizados, use o yum.log:
cat yum.log | grep Updated
Se preferir acompanhar em tempo real:
tail -f /var/log/yum.log
Verificação e solução de problemas rápidos
- Serviço não inicia: verifique status e logs do systemd
systemctl status yum-cron
journalctl -u yum-cron --since "1 hour ago"
- E‑mail não chega: confirme email_host, portas no firewall e servidor de relay.
- Atualizações não aplicadas: confirme apply_updates = yes e se há erros em /var/log/yum.log.
- Exceções não funcionam: verifique padrões em exclude e se há espaços extra ou caracteres inválidos.
Playbook rápido (operacional)
- Instalar e habilitar yum-cron.
- Configurar update_cmd = security e apply_updates = yes.
- Configurar emit_via = email e testar envio manual (mailutils ou ssmtp se necessário).
- Definir exclude para pacotes sensíveis.
- Monitorar /var/log/yum.log e e‑mails nas primeiras 7 dias.
- Registrar e revisar mudanças em controle de configuração.
Checklist por função
Administrador Linux:
- Instalar e habilitar yum-cron
- Validar apply_updates e exclude
- Testar reinício do serviço
Equipe de Segurança:
- Definir política de prazo para updates (ex.: 30 dias)
- Aprovar pacotes excluídos
- Revisar relatórios de atualização
Equipe de Operações/DBA:
- Confirmar exclusões para DBs gerenciados manualmente
- Planejar janelas de manutenção para kernels e pacotes críticos
Mini‑metodologia para rollout em múltiplos servidores
- Teste em um servidor de staging com a configuração final.
- Verifique logs e recebimento de e‑mail por 7 dias.
- Implemente em 10% dos servidores de produção e monitore por 7 dias.
- Aumente para 50% e depois 100% se não houver problemas.
Critérios de aceitação
- O serviço yum-cron está ativo e habilitado no boot.
- Atualizações de segurança são baixadas e aplicadas automaticamente.
- Notificações por e‑mail são recebidas com o resumo de updates.
- Pacotes listados em exclude não são atualizados automaticamente.
Glossário (uma linha cada)
- yum-cron: daemon que automatiza verificações e aplicações de atualizações via yum.
- update_cmd: parâmetro que determina tipo de atualização (security/minimal/default).
- exclude: lista de pacotes a serem ignorados pelo gerenciador.
Quando a automação pode falhar (contraexemplos)
- Pacotes com dependências que exigem intervenção manual.
- Atualizações do kernel sem processos de teste podem causar reboot problemático.
- Regras de SELinux ou módulos proprietários que exigem rebuild após atualização.
Boas práticas e riscos
- Mantenha backups e snapshots antes de aplicar mudanças automáticas em ambientes críticos.
- Use exclusões para pacotes sensíveis e trate atualizações desses pacotes em janelas controladas.
- Audite e registre todas as atualizações para rastreabilidade.
Resumo
Automatizar atualizações de segurança no CentOS 7 com yum-cron economiza tempo e reduz risco quando bem configurado. Instale yum-cron, defina update_cmd = security, ative download/apply, configure notificações por e‑mail, e use exclude para proteger pacotes sensíveis. Teste em staging e monitore os logs nos primeiros dias.
Referências
Materiais semelhantes
Aprenda inglês com IA: 10 apps essenciais

Legendas no Final Cut Pro: guia prático
Instalar BIKA LIMS Inkosi no Ubuntu Server

Guia prático: aumentar a bateria do iPhone

Corrigir erro 0x800F0909 no Windows 11
