Jak skonfigurować ssmtp i wysyłać e-maile?


10

Jestem nowy w Raspberry Pi.

Zainstalowałem na nim system operacyjny Raspian. Chcę wysyłać z niego wiadomości e-mail za pomocą mojego konta Gmail. Chcę wysłać z interfejsu wiersza poleceń i skryptów php.

Postępowałem zgodnie z tym przewodnikiem. http://iqjar.com/jar/sending-emails-from-the-raspberry-pi/

Zrobiłem kroki 1,2,3,4 z linku.

Kiedy wysyłam wiadomość e-mail za pomocą poniższego kodu za pomocą

echo "Test text" | mail -s "Test Mail" me2@gmail.com

nic się nie dzieje, nic nie jest drukowane na ekranie i nie otrzymuję e-maila.

Jeśli w „aktualizacjach” zamienię „mail.google” na „smtp.gmail”, to otrzymam wiadomość

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

lub

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

Czy ktoś wie, jak to naprawić? Dzięki

Oto dwa pliki poniżej:

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


root=me@gmail.com
mailhub=smtp.gmail.com:587
AuthUser=me@gmail.com
AuthPass=mypass
UseSTARTTLS=YES

zmiany

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

root:me@gmail.com:mail.google.com:587

2
To nie jest konkretne pytanie Raspberry, spróbuj: - unix.stackexchange.com
Milliways

spójrz na to raspberry.znix.com/2013/03/postfix-better-solution-for-rpi.html . Również jeśli używasz 2factor auth w google, musisz użyć hasła aplikacji, a nie hasła używanego do logowania się do Gmaila przez Internet.
Steve Robillard,

Jak uzyskać hasło aplikacji?
omega

Czy próbowałeś z UseSTARTTLS=NO?
złotowłosa

tak, ale nadal nie działało.
omega

Odpowiedzi:


4

Prawdopodobnie już to wiesz, ale zauważyłem, że w pliku ssmtp.conf masz: root=me@gmail.com

Jednak w opublikowanym linku jest napisane: root = postmaster

Zostawiłem tak i właśnie zmieniłem inne części me@gmail.com i to działa dla mnie. Dziękuję za twoją pomoc, ale mnie zabrał ...


2

W rzeczywistości nie musisz niczego instalować. Exim jest już zainstalowany na Raspbian, ale domyślnie jest skonfigurowany do pozostania lokalnym. Musisz tylko zmienić plik „update-exim4.conf.conf” „dc_eximconfig_configtype =„ satelita ”itp.”


1

Miałem ten sam problem.

Okazało się, że Gmail zablokował żądanie, ponieważ klient smtp znajduje się na czarnej liście jako niezabezpieczony (prawdopodobnie jest to jeden z klientów dotkniętych błędem bicia serca )

Możesz zezwolić mniej bezpiecznym klientom na ustawienia Gmaila tutaj: https://support.google.com/accounts/answer/6010255?hl=pl

lub jeszcze lepiej, jeśli to możliwe, uaktualnij do nowszej wersji klienta smtp


1

Myślę, że tego szukasz:

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

FRAGMENT:

Odpowiedzią na wysyłanie wiadomości jednowierszowych jest użycie ssmtp

Zainstaluj go za pomocą następujących poleceń:

sudo apt-get update
sudo apt-get install ssmtp

Następnie przejdź do / etc / ssmtp i edytuj ssmtp.conf, aby wyglądać tak:

root=rpi3abc@gmail
mailhub=smtp.gmail.com:465
FromLineOverride=YES
AuthUser=rpi3abc@gmail.com
AuthPass=testing123
UseTLS=YES

Wyślij linijkę taką:

echo "Testing...1...2...3" | ssmtp myusername@gmail.com

Możesz także przechwycić cały plik i przesłać go jako wiadomość.


Jeśli chcesz wysłać pliki graficzne jako załączniki, to chcesz:

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

Jest zasadniczo taki sam, ale dodaje:

Zainstaluj mpack:

apt-get update
sudo apt-get install mpack

Następnie wyślij obraz jako załącznik:

mpack -s "P&L Proj 2018" /home/pi/Desktop/finance/PL18.png importantdude@gmail.com

Jeśli plik znajduje się w bieżącym katalogu, nie jest konieczne stosowanie pełnej ścieżki do załącznika.

A jeśli są używane w cron, pamiętaj, że zadania zawsze działają w katalogu osobistym użytkownika, dlatego dobrą praktyką jest stosowanie pełnej ścieżki katalogu do pliku załącznika.

Voila Otóż ​​to. Nie może być łatwiej.

Działa zarówno na Raspbian, jak i na wszystkich późniejszych wersjach Ubuntu.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.