Как отправить почту в учетную запись gmail с помощью ssmtp

У меня есть следующий файл ssmtp.conf:

root=test@gmail.com mailhub=smtp.gmail.com:587 hostname=ed424cef9b52 UseTLS=Yes UseStartTTLS=Yes AuthMethod=LOGIN AuthUser=test AuthPass=test FromLineOverride=yes TLS_CA_File=/etc/ssl/certs/ca-certificates.crt 

Я могу подключиться к порту 587 gmail:

 telnet smtp.gmail.com 587 Trying 64.233.186.109... Connected to gmail-smtp-msa.l.google.com. 

Но когда я пытаюсь отправить почту:

 /usr/sbin/ssmtp -v test@gmail.com < qq ssmtp: Cannot open smtp.gmail.com:587 echo test | mailx -s "testing ssmtp setup" test@gmail.com send-mail: Cannot open smtp.gmail.com:587 Can't send mail: sendmail process failed with error code 1 

Я полагаю, вы немного задумались над этим.

Первая проблема заключается в том, что вы используете неправильный порт на сервере gmail. Проверь это:

Самый простой способ отправить почту с вложением изображения из командной строки с помощью gmail?


ВЫПИСКА:

Установите ssmtp со следующими командами:

 sudo apt-get update sudo apt-get install ssmtp 

Затем перейдите в / etc / ssmtp и отредактируйте файл ssmtp.conf, чтобы выглядеть так:

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

Отправьте однострочный вкладыш следующим образом:

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

Отправьте форматированный текстовый файл следующим образом:

 cat mymessage | ssmtp myusername@gmail.com 

Где mymessage может иметь строки для To: и Subject: и тела.