Enviando e-mails do host SMTP existente do Ubuntu Server

1

Eu sinto que o meu problema é muito simples, mas eu tenho tentado há algum tempo e não o resolvi. Você experimentou caras do servidor provavelmente vai rir disso, mas eu estou finalmente no ponto que eu preciso de ajuda ou eu nunca vou chegar a lugar nenhum.

Eu tenho uma pequena caixa rodando o 12.04 LTS e eu quis fazer o script de algumas verificações de status e fazer o servidor me enviar um e-mail e agendar isso com o cron.

Eu basicamente quero um cliente de correio de linha de comando que eu possa configurar tão facilmente quanto o Thunderbird para enviar através do meu SMTP existente através da linha de comando. Algo que pode ser facilmente colocado em meus scripts bash.

Eu já tenho um host remoto gerenciando nosso email, SMTP, MTA, todo esse lixo. Eu particularmente não quero configurar um revezamento apenas para enviar e-mail quando tenho um que todos os outros na empresa já usam. Eu tentei, mas há muitos aspectos que não entendo E não vejo por que devo configurar algo local quando já pagamos por um host remoto para fazer essas coisas.

Se eu realmente tiver que configurar o sendmail ou o postfix, então que assim seja, mas eu apreciaria uma alternativa simples. Estou aberto a praticamente tudo neste momento.

    
por ezgoodnight 04.06.2014 / 22:49

2 respostas

1

Se você quer dizer que está enviando e-mail através de um servidor SMTP de terceiros (fornecido pelo seu ISP, por exemplo), pode instalar o ssmtp , que substitui o Postfix / Sendmail, mas especializado para aquela tarefa precisa de enviar e-mail através de um SMTP remoto, e é assim muito mais fácil de configurar. Então você pode enviar e-mail com o comando mailx , por exemplo:

echo "Mail." | mailx -s "Subject" [email protected]

EDITAR: O e-mail é um negócio muito complicado ... Algumas coisas para ter em mente:

Observe que o comando acima não especifica um endereço de remetente (, por exemplo, , os endereços que o destinatário verá no campo "De" do seu cliente de e-mail). Por padrão, o endereço do remetente é seu nome de login em sua máquina local, seguido por @ , seguido pelo nome completo do host da máquina local. Por exemplo, na minha máquina, o nome de login é firas e o nome do host é nomo :

firas@nomo ~ % whoami firas firas@nomo ~ % hostname -f nomo

Então, quando eu enviar um e-mail com o comando acima, o endereço do remetente será firas@nomo , como pode ser visto em mail.log :

firas@nomo ~ % tail -n 3 /var/log/mail.log Jun 9 20:37:46 nomo sSMTP[2203]: Creating SSL connection to host Jun 9 20:37:48 nomo sSMTP[2203]: SSL connection using RSA_AES_128_CBC_SHA1 Jun 9 20:37:50 nomo sSMTP[2203]: Sent mail for firas@nomo (221 2.0.0 esmtp3.es.uci.edu closing connection) uid=1000 username=firas outbytes=364

A grande maioria dos servidores se recusará a retransmitir esse e-mail (como medida anti-spam), porque o nome de domínio nomo não é um domínio válido. Felizmente, há uma opção em ssmtp.conf que permite especificar um domínio arbitrário, que sSMTP usará ao enviar mensagens. Ou seja, essa é a opção rewritedomain , portanto, se eu tiver isso no meu ssmtp.conf :

rewriteDomain=fkraiem.org

o endereço do remetente será [email protected] .

Normalmente, o acima deve ser suficiente (ou seja, desde que o endereço do remetente tenha um domínio válido, o servidor deve retransmitir o seu e-mail). No entanto, alguns provedores de e-mail são extremamente zelosos e só permitem que você use o endereço de e-mail registrado. Isso significa que, além de alterar o nome de domínio como acima, você pode precisar alterar seu nome de login na máquina local ou registrar um novo endereço com seu provedor (se ele permitir), para que o endereço final corresponda ao seu nome. endereço registrado.

Outra maneira de especificar um endereço de remetente arbitrário é definir a opção fromlineoverride de ssmtp.conf to YES e, em seguida, usar a opção -a de mailx :

echo "Mail." | mailx -s "Subject" -a 'From: [email protected]' [email protected]

No entanto, isso não é padrão e pode não funcionar em sistemas operacionais diferentes do Ubuntu (e de outros sistemas baseados em GNU). Também é possível usar outros clientes mais sofisticados, como mutt .

    
por fkraiem 05.06.2014 / 10:29
1

Já considerou o sendemail ? (sendEmail)

Description-pt: leve, cliente de e-mail SMTP da linha de comando

    
por AnFi 05.06.2014 / 09:44