Lançador Produtos Bitnami Documentaçãoimaxe CLI Blog Contacto
imaxe smtp correio v1.0.0

Garante que os teus alertas chegam

Configura o correio de saída do servidor através de um smarthost (SES, um relay corporativo…) e confirma que funciona com um envio de teste. Um comando deixa-o pronto; a partir daí, as notificações do teu sistema saem mesmo.

$ imaxe smtp configure --host email-smtp.eu-west-1.amazonaws.com --from [email protected]
Versão
v1.0.0
Subcomandos
5
Config
/etc/imaxe/smtp.yml
Requer root
sim
Porta
587 · TLS

O que faz este módulo #

Muitas coisas no servidor avisam-te por correio: um certificado prestes a expirar, um disco a encher-se, o report de uma tarefa noturna. Mas um servidor acabado de instalar não sabe como enviar esse correio — ou tenta entregá-lo diretamente e acaba na pasta de spam, quando não é rejeitado logo à partida.

O módulo smtp resolve isso configurando o correio de saída do servidor contra um smarthost (um relay que está de facto autorizado a entregar: Amazon SES, um servidor de correio corporativo, o teu fornecedor…). Ajusta o postfix para que reencaminhe todo o correio do sistema para esse smarthost, guarda a palavra-passe de forma segura, reescreve o remetente para que seja válido e deixa-te testar o envio para confirmar que chega — reportando o erro real se algo falhar.

Antes de começar

Tem à mão os dados do teu smarthost: host, porta (normalmente 587) e as credenciais se exigir autenticação. A palavra-passe não se passa na linha de comandos: lê-se do stdin ou do cofre de segredos, para que nunca fique no teu histórico.

Guia rápidotarefas passo a passo

Tarefas comuns #

Escolhe o que queres fazer. Cada receita traz o comando já escrito — basta trocar pelo teu próprio smarthost e remetente, e clicar em Copiar.

1

Configurar o relay de correio

Aponta o servidor ao teu smarthost para que o correio saia mesmo.

Liga-te por SSH ao teu servidor com o utilizador ubuntu.

Executa o comando com os dados do teu smarthost. A palavra-passe é pedida via stdin, por isso nunca fica no teu histórico:

terminal
$ sudo imaxe smtp configure \
    --host email-smtp.eu-west-1.amazonaws.com \
    --user AKIAIOSFODNN7EXAMPLE \
    --from [email protected]

Se o teu smarthost não exigir autenticação, omite --user. Para uma porta ou modo TLS diferente, adiciona --port ou --no-tls.

O postfix fica agora preparado para reencaminhar todo o correio do sistema para o teu smarthost, com o remetente reescrito para [email protected]. Continua com a receita Enviar um correio de teste.
2

Enviar um correio de teste

Confirma que uma mensagem sai e chega antes de confiares nos alertas.

Envia um correio de teste para um endereço onde o possas verificar:

terminal
$ sudo imaxe smtp test --to [email protected]

Se omitires --to, é enviado ao remetente configurado. Verifica a tua caixa de entrada (e a pasta de spam) para confirmar a entrega.

Se o correio chegar, o teu servidor já te consegue notificar. Se falhar, o comando mostra-te o erro real do MTA para saberes o que corrigir.
3

Ver o estado do correio

Verifica num relance se o relay está configurado e ativo.

Um resumo do relay, do smarthost, do remetente e do estado do MTA:

terminal
$ sudo imaxe smtp status

Precisas dele para um script ou um painel? Adiciona --json para saída legível por máquina:

terminal
$ sudo imaxe smtp status --json
Saberás instantaneamente se o correio de saída está pronto ou se ainda falta configurá-lo.
4

Ver a configuração efetiva

Consulta os parâmetros ativos sem expor a palavra-passe.

Mostra o host, a porta, o utilizador, o remetente e o modo TLS realmente em uso (a palavra-passe nunca é impressa):

terminal
$ sudo imaxe smtp show
Ideal para verificar um parâmetro antes de um envio de teste, ou para documentar a configuração do servidor.
5

Remover o relay

Desativa o reencaminhamento e devolve o postfix ao seu estado anterior.

Desativa o relay de correio de saída e restaura a configuração base do postfix:

terminal
$ sudo imaxe smtp remove
O servidor deixa de reencaminhar através do smarthost. Podes configurá-lo de novo quando quiseres com configure.
O correio de teste não chega?

A causa mais comum é o remetente não estar verificado no smarthost (o SES exige verificar o domínio ou o endereço --from), ou as credenciais estarem erradas. Executa imaxe smtp test: devolve o erro real do MTA para saberes exatamente o que ajustar.

Referência CLIcomandos, flags e ficheiros

Sinopse #

uso
imaxe smtp <subcomando> [--host HOST] [--from CORREO] [flags]

Todos os subcomandos requerem privilégios de root (usa sudo) porque tocam na configuração do postfix, escrevem em /etc/imaxe/ e recarregam serviços do sistema. A palavra-passe do smarthost nunca se passa como flag: lê-se do stdin ou do cofre de segredos. Adiciona --json a status ou show para saída legível por máquina, apta para scripting.

Subcomandos #

SubcomandoO que fazFlags relevantes
configureConfigura o relay de correio de saída contra um smarthost. A palavra-passe lê-se de segredos/stdin.--host, --port, --user, --from, --tls / --no-tls
testEnvia um correio de teste e reporta o erro real do MTA se falhar.--to
statusEstado: relay configurado, smarthost, remetente e MTA ativo.--json
showMostra a configuração efetiva, sem expor a palavra-passe.--json
removeDesativa o relay e restaura o postfix.

Argumentos e flags #

FlagTipoPor omissãoDescrição
--host obr.stringSmarthost SMTP para o qual reencaminhar o correio (ex. email-smtp.eu-west-1.amazonaws.com). Obrigatório em configure.
--portint587Porta SMTP do smarthost.
--userstringUtilizador SMTP para autenticação. Se omitido, o relay é configurado sem autenticação.
--fromstringReescreve o remetente de todas as mensagens (sender_canonical). Útil para usar um endereço verificado no smarthost.
--tls / --no-tlsbool--tlsForça TLS na ligação ao smarthost (o valor por omissão). --no-tls desativa-o.
--tostringremitenteEm test: destinatário do correio de teste. Por omissão, o remetente configurado.
--jsonboolfalseEm status/show, emite o resultado como JSON em stdout.
A palavra-passe não é uma flag

Não existe uma opção --password. A credencial lê-se do stdin durante o configure ou do cofre de segredos (password_secret, smtp por omissão), para que nunca apareça no teu histórico nem na tabela de processos.

Ficheiros e caminhos #

CaminhoConteúdo
/etc/imaxe/smtp.ymlConfiguração do módulo: host, porta, TLS, utilizador, remetente e uma referência ao segredo da palavra-passe.
/etc/postfix/main.cfConfiguração do postfix que o módulo ajusta para o reencaminhamento (relayhost, sender canonical…).
/var/log/mail.logLog do postfix com cada tentativa de entrega e o motivo das rejeições.

Exemplo de smtp.yml:

/etc/imaxe/smtp.yml
enabled: true
host: email-smtp.eu-west-1.amazonaws.com
port: 587
tls: true
username: AKIAIOSFODNN7EXAMPLE
from: [email protected]
password_secret: smtp

Códigos de saída e logs #

Cada execução devolve um código que podes verificar com echo $? — útil para encadear em scripts:

0OKOperação concluída; em test, o correio foi aceite para entrega.
1ERRErro genérico não classificado. Revê o log.
2USAGEArgumentos inválidos ou em falta.
3CONFIGRelay não configurado ou configuração incompleta.
4AUTHO smarthost rejeitou as credenciais.
5SENDO envio de teste falhou no MTA (vê o erro reportado).

Segue o log de correio em direto enquanto depuras um envio:

terminal
$ sudo tail -f /var/log/mail.log
$ sudo imaxe smtp test --to [email protected]

Resolução de problemas #

SintomaCausa provávelSolução
Sai AUTH (código 4)Utilizador ou palavra-passe do smarthost errados.Verifica o --user e executa configure de novo, reintroduzindo a palavra-passe via stdin.
Sai SEND (código 5), remetente rejeitadoO endereço --from não está verificado no smarthost (típico com o SES).Verifica o domínio ou o endereço com o fornecedor e repete o test.
Sai CONFIG (código 3)O relay ainda não está configurado neste servidor.Executa imaxe smtp configure com os dados do teu smarthost.
O correio sai mas cai no spamFalta o alinhamento SPF/DKIM no domínio do remetente.Configura os registos do fornecedor de correio para o domínio do --from.

Ficou bloqueado com o módulo Correio?

Escreva-nos com a saída de «imaxe <module> status --json» e respondemos rapidamente.

Contactar o suporte