Como configurar o ssmtp e enviar e-mails?

10

Sou novo no raspberry pi.

Eu instalei o sistema operacional raspian nele. Quero enviar e-mails usando minha conta do Gmail. Eu quero enviar a partir da interface da linha de comandos e de scripts php.

Eu segui este guia. http://iqjar.com/jar/sending-emails-from-the-raspberry-pi/

Eu fiz as etapas 1,2,3,4 a partir do link.

Quando envio um email usando o código abaixo, usando

echo "Test text" | mail -s "Test Mail" [email protected]

nada acontece, não há nada impresso na tela e não recebo o email.

Em "revaliases", se eu substituir "mail.google" por "smtp.gmail", receberei uma mensagem dizendo

send-mail: Cannot open mail.google.com:587

ou

send-mail: Server didn't like our AUTH LOGIN (530 5.7.0 Must issue a STARTTLS command first. ml2sm3592928igb.10 - gsmtp)

Alguém sabe como consertar isso? obrigado

Aqui estão os dois arquivos abaixo:

ssmtp.conf

#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
# root=postmaster

# The place where the mail goes. The actual machine name is required no 
# MX records are consulted. Commonly mailhosts are named mail.domain.com
# mailhub=mail

# Where will the mail seem to come from?
#rewriteDomain=

# The full hostname
hostname=raspberrypi

# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
FromLineOverride=YES


[email protected]
mailhub=smtp.gmail.com:587
[email protected]
AuthPass=mypass
UseSTARTTLS=YES

revaliases

# sSMTP aliases
# 
# Format:   local_account:outgoing_address:mailhub
#
# Example: root:[email protected]:mailhub.your.domain[:port]
# where [:port] is an optional port number that defaults to 25.

root:[email protected]:mail.google.com:587
ómega
fonte
2
Esta não é uma pergunta específica sobre Framboesa, tente em: - unix.stackexchange.com
Milliways
dê uma olhada nisso raspberry.znix.com/2013/03/postfix-better-solution-for-rpi.html . Além disso, se você usar o 2factor auth com o google, precisará usar uma senha específica do aplicativo e não a senha usada para fazer login no gmail pela web.
precisa
Como obtenho a senha específica do aplicativo?
Omega
Você já tentou UseSTARTTLS=NO?
goldilocks
sim, mas ainda não funcionou.
Omega

Respostas:

4

Você provavelmente já deve ter descoberto, mas notei que no seu arquivo ssmtp.conf você tem: [email protected]

No entanto, no link que você postou, ele diz: root = postmaster

Deixei assim e apenas mudei as outras partes [email protected] e funciona para mim. Obrigado por sua ajuda, porém, me deixou no caminho ...

Dave
fonte
2

Na verdade, você não precisa instalar nada. O Exim já está instalado no Raspbian, mas está configurado por padrão para permanecer local. Você apenas precisa alterar o arquivo "update-exim4.conf.conf" "dc_eximconfig_configtype = 'satellite' etc."

Oliver T.
fonte
1

Eu tive o mesmo problema.

Descobriu-se que gmail bloqueado o pedido porque o cliente SMTP está na lista negra como não seguro (provavelmente é um dos clientes afetados pela heartbleed bug)

Você pode permitir clientes menos seguros em suas configurações do gmail aqui: https://support.google.com/accounts/answer/6010255?hl=pt-BR

ou, melhor ainda, atualize para uma versão mais recente do cliente smtp, se possível

Gianluca Ghettini
fonte
1

Eu acho que você está procurando por isso:

/unix/363814/simplest-way-to-send-one-line-mail-out-via-command-line-using-gmail

EXCERTO:

A resposta para o envio de mensagens de uma linha é usar ssmtp

Instale-o com os seguintes comandos:

sudo apt-get update
sudo apt-get install ssmtp

Então entre em / etc / ssmtp e edite ssmtp.conf para ficar assim:

root=rpi3abc@gmail
mailhub=smtp.gmail.com:465
FromLineOverride=YES
[email protected]
AuthPass=testing123
UseTLS=YES

Envie uma linha como esta:

echo "Testing...1...2...3" | ssmtp [email protected]

Você também pode obter um arquivo inteiro e inseri-lo como a mensagem.


Se você deseja enviar arquivos de imagem como anexos, você deseja este:

/unix/381131/simplest-way-to-send-mail-with-image-attachment-from-command-line-using-gmail

É basicamente o mesmo, mas acrescenta:

Instale o mpack:

apt-get update
sudo apt-get install mpack

Em seguida, envie uma imagem como anexo da seguinte forma:

mpack -s "P&L Proj 2018" /home/pi/Desktop/finance/PL18.png [email protected]

Se o arquivo estiver no diretório atual, não será necessário usar um caminho completo para o anexo.

E, se usado no cron, lembre-se de que os trabalhos sempre são executados no diretório inicial do usuário, portanto, é recomendável usar um caminho completo do diretório para o arquivo de anexo.

Voila. É isso aí. Não poderia ser mais fácil.

Ele funciona tanto no Raspbian quanto em todas as versões posteriores do Ubuntu.

SDsolar
fonte