Como configurar notificações por e-mail do log de segurança
Quando usar
Quando o administrador de segurança precisa saber por e-mail de uma violação de integridade ou de um bloqueio de conta, sem abrir o log. O indicador critical event no cabeçalho só é visível para quem está na interface naquele momento. Um e-mail chega de qualquer forma.
As notificações são configuradas em dois lugares. O servidor de e-mail é definido no arquivo de ambiente do dispatcher do vStack Center na VM de gerenciamento. A ativação, os destinatários e o limite de severidade são definidos na interface do log. Sem o servidor, o formulário da interface é salvo sem erros, mas nenhum e-mail é enviado. Esse é o motivo mais comum para "configuramos e nada chega".
Pré-requisitos
- um servidor SMTP que aceite e-mails da VM de gerenciamento sem autenticação. O dispatcher não tem configurações de login, senha nem modo de criptografia;
- acesso SSH à VM de gerenciamento como root;
- o papel Cluster master para salvar as configurações de notificação. O Security Admin pode visualizar as configurações, mas não pode salvá-las;
- vStack Center 3.0.3 ou posterior.
Etapas
Etapa 1. Defina o servidor de e-mail na VM de gerenciamento
Adicione os parâmetros ao arquivo de ambiente do dispatcher
/usr/local/etc/vstack_center_dispatcher.env:
SMTP_HOST=192.0.2.25
SMTP_PORT=25
SMTP_SEND_FROM=vstack-security@example.com
SMTP_TIMEOUT=15000
| Parâmetro | Valor |
|---|---|
SMTP_HOST | Endereço do servidor SMTP. Um valor vazio ou a ausência da linha desativa o envio |
SMTP_PORT | Porta, 25 por padrão |
SMTP_SEND_FROM | Endereço do remetente. Sem ele, os e-mails são enviados de no-reply@vstack.com, e o servidor de e-mail da sua organização pode rejeitar mensagens de um domínio externo |
SMTP_TIMEOUT | Tempo limite de conexão em milissegundos, 15000 por padrão |
As conexões de saída da VM de gerenciamento não são restringidas por padrão. Se você as restringiu, abra a porta do servidor SMTP.
Etapa 2. Reinicie o dispatcher e verifique o log
service vstack_center_dispatcher restart
O dispatcher lê os parâmetros somente na inicialização. No log em
/var/log/vstack-center-dispatcher/, procure uma destas linhas:
| Linha | Significado |
|---|---|
SMTP initialized: host=…, port=… | O transporte de e-mail foi criado; prossiga para a interface |
SMTP_HOST not set — email notifications disabled | O dispatcher não leu o parâmetro: verifique o nome do arquivo e a linha SMTP_HOST |
SMTP initialized não significa que o servidor está acessível. O dispatcher
se conecta a ele somente ao enviar um e-mail.
Etapa 3. Ative as notificações no log
- Abra Sites → o cluster → Security Event Log.
- Clique em Actions acima da tabela e selecione Notification settings.
- Ative Enable email notifications.
- Em Recipients, digite um endereço e pressione Enter. O endereço é adicionado à lista abaixo do campo. Adicione vários endereços da mesma forma; remova um com o X.
- Em Minimum severity for email, selecione o limite.
- Clique em Save. Aparece a mensagem "Notification settings updated".
Uma alteração das configurações é registrada no log como config.security_settings_changed.
A edição do arquivo de ambiente na etapa 1 não passa pela API e não é registrada.
Etapa 4. Escolha o limite de severidade
Um e-mail é enviado para um evento cuja severidade é igual ou superior ao limite. O
limite padrão é alert. O dicionário de tipos de evento não tem eventos emergency,
portanto com alert os e-mails chegam apenas para cinco violações de integridade.
| Limite | Os e-mails chegam para |
|---|---|
alert (padrão) | integrity.file_violation, integrity.config_violation, integrity.vm_config_violation, integrity.manifest_invalid, integrity.log_chain_broken |
critical | todos os acima, mais auth.account_locked, system.disk_space_exhausted, os.kernel_panic e outros eventos critical |
error e inferiores | todos os acima, mais os desligamentos anormais do nó e do serviço de virtualização (os.shutdown_unclean, system.service_stopped_unclean) e outros eventos do nível selecionado |
O indicador critical event conta os três níveis mais altos. Para receber e-mails dos
mesmos eventos que acendem o indicador, defina o limite como critical.
Com o limite padrão, um bloqueio de conta e o esgotamento do espaço em disco aparecem
na interface, mas não geram e-mail.
Uma divergência de checksum de imagem na importação (integrity.image_sha256_mismatch) tem
severidade warning, embora pertença à categoria de integridade. Ela
gera e-mail somente com um limite warning ou inferior.
Um limite abaixo de error gera um fluxo de e-mails sobre eventos rotineiros: um
login malsucedido é warning, um bem-sucedido é info.
O que o e-mail contém
O assunto é [vStack Security] <event name> — <severity code>, por exemplo
[vStack Security] Блокировка учётной записи — critical. O nome do evento vem
do dicionário de tipos de evento e está sempre em russo.
O corpo é texto simples, também em russo:
Событие безопасности
Наименование: Блокировка учётной записи
Уровень: Критическое состояние (critical)
Дата/время: 2026-10-09T08:15:42.118305+00:00
Субъект: operator (uid=17)
Объект: user/17 (operator)
Результат: success
IP: 198.51.100.40
As linhas são: nome do evento, severidade, data e hora, sujeito (nome e ID do usuário), objeto (tipo, ID, nome), resultado e endereço IP de origem. Um campo ausente é substituído por um traço. Cada destinatário recebe um e-mail separado.
Tenha três coisas em mente ao ler um e-mail:
- o horário no e-mail é o momento em que o e-mail foi gerado, em UTC, e não o horário do registro no log. A diferença costuma ser uma fração de segundo, mas você não consegue relacionar os registros com precisão de milissegundos por ele;
- o e-mail não tem número de registro nem UUID do evento. Encontre o registro no log filtrando por tipo de evento e horário — consulte Como ler o log e filtrar eventos;
- o e-mail é enviado depois que o registro é salvo. Se o registro for revertido, não há e-mail. Um servidor lento ou inacessível não atrasa o registro no log.
Verifique o resultado
Não há botão de e-mail de teste, portanto verifique a entrega com um evento real. Um bloqueio de conta é o mais fácil:
- Defina o limite como
critical. - Crie uma conta de teste e esgote o limite de tentativas de login malsucedidas dela. O log recebe
auth.account_locked. - O log do dispatcher mostra
email notify: sent to <address>ouemail notify: failed to send to <address>com o motivo, uma linha por destinatário. - Verifique a caixa de correio do destinatário.
- Desbloqueie ou exclua a conta de teste e restaure o limite, se precisar de outro.
sent to significa que o servidor SMTP aceitou o e-mail, e não que ele chegou à
caixa de correio. Se o log disser sent to e não houver e-mail, procure no spam e no
log do servidor de e-mail.
Solução de problemas
As configurações são salvas, mas nenhum e-mail chega. Encontre a entrada da última
inicialização do dispatcher no log dele. Se ela disser
SMTP_HOST not set — email notifications disabled ou se não houver a linha
SMTP initialized, o servidor de e-mail não está definido. Nesse caso, os eventos acima
do limite geram email notify: SMTP not available no log. Execute
as etapas 1 e 2.
Nenhum e-mail e nada no log para o evento. O evento está abaixo do limite, as notificações estão desativadas ou a lista de destinatários está vazia. Nesses casos, o dispatcher ignora o e-mail silenciosamente. Verifique o formulário Notification settings e a severidade do evento no cartão do registro.
O log diz failed to send to <address>. O servidor SMTP está inacessível
ou rejeitou o e-mail. O motivo está na mesma linha. Os mais comuns: o servidor
exige autenticação ou TLS, o remetente é de um domínio externo (defina
SMTP_SEND_FROM), a porta está fechada. Não há nova tentativa: o e-mail desse
evento é perdido, mas o registro no log permanece.
Os e-mails pararam após uma atualização do vStack Center. O arquivo de ambiente
do dispatcher é regenerado a cada implantação de configuração da VM de gerenciamento, inclusive
nas atualizações, e as linhas SMTP_* desaparecem. Após cada atualização, verifique se há a
linha SMTP initialized no log e repita as etapas 1 e 2, se necessário.
As configurações não são salvas (-24007). Um endereço de destinatário tem um erro de digitação, ou
Enter não foi pressionado e o endereço não está na lista.
Não há o item Notification settings no menu Actions. O papel não tem
o privilégio View Security Notify Settings. Somente o Cluster master pode salvar as
configurações.
Limitações
- O dispatcher não suporta login, senha nem TLS no SMTP. Se o seu servidor de e-mail exigir autenticação, você precisará de um relay intermediário que aceite e-mails da VM de gerenciamento sem ela.
- Não há nova tentativa. Uma falha de entrega só fica visível no log do dispatcher; ela não aparece no log de segurança nem na interface.
- O servidor de e-mail é definido somente no arquivo de ambiente. Ele não pode ser configurado pela interface nem pela API, e uma atualização o apaga.
Métodos da API
Operações desta página na API: security-event-notify-settings-get,
security-event-notify-settings-set — consulte a
referência da API.
Veja também
- Log de segurança — níveis de severidade e eventos críticos.
- Como ler o log e filtrar eventos — o indicador de eventos críticos e a marca de leitura.