Consegui alterar o código Java de localhost para o endereço do servidor de email
Eu tenho vários servidores Ubuntu com aplicativos Java em execução. Uma das funções do aplicativo é enviar um email. Agora estamos usando exim4
como o MTA.
Eu gostaria de substituir exim
por algo mais claro. Minha primeira ideia foi msmtp
ou ssmtp
.
Mail da linha de comando correu bem, mas depois encontrei o problema:
Aplicativo Java tentando enviar um email em localhost:25
e recebendo a seguinte exceção:
javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 25
Caused by: java.net.ConnectException: Connection refused
e é um comportamento correto, pois o msmtp / ssmtp não escuta em localhost:25
.
Eu não sou capaz de alterar o código Java, então eu preciso pegar um e-mail em localhost:25
no servidor e, em seguida, colocá-lo para o servidor de mensagens central através do SMTP. Existe alguma maneira de executar msmtp / ssmtp como um daemon ouvindo localhost:25
? Ou talvez encaminhar localhost:25
para STDIN
do msmtp / ssmtp de alguma forma?
Os links abaixo fornecem todas as opções MTA que você pode escolher, de acordo com sua versão do Ubuntu:
Você também pode verificar a página do Archwiki em Configurando o ssmtp para usar a porta 25.
O SSMTP e o MSMTP ainda não são MTAs completos. Este unix.se fornece detalhes para uma lista abrangente de MTAs disponíveis e eles também são já empacotado para o Ubuntu.