2016-07-15 12 views
4

Как я могу отправить электронное письмо из Raspberry Pi с помощью моей учетной записи gmail?Raspberry PI - отправка почты из командной строки с использованием сервера GMAIL smtp

Я хотел был бы послать почту от командной строки и использовать этот метод в моих сценариях.

Envirenment:

Hardware: Raspberry PI 3 
OS: Jessie 
SMTP: smtp.gmail.com 

ответ

11

Я использую этот метод на своих устройствах Raspberry Pi 3:

настройки

  1. Вход

    Google аккаунт на GMail аккаунт

  2. Перейти к : Настройки -> Учетные записи и импорт -> Другие настройки аккаунта Google NGS
  3. Перейти к: Личная информация & Конфиденциальность -> Обзор счета
  4. Перейти к: Вход в систему & безопасности -> Connect приложений появится & сайты
  5. опция
  6. Set Разрешить менее безопасные приложения для ON

Установите SSMTP
sudo apt-get install ssmtp

Сохранить оригинальный CON е файл
sudo mv /etc/ssmtp/ssmtp.conf /etc/ssmtp/ssmtp.conf.bak

Создать новый конф файл (с VI, или какой-либо другой текстовый редактор)
sudo vi /etc/ssmtp/ssmtp.conf

содержимое файла

[email protected] 
mailhub=smtp.gmail.com:587 

FromLineOverride=YES 
[email protected] 
AuthPass=your_password 
UseSTARTTLS=YES 
UseTLS=YES 

# Debug=Yes 

Secure конф файл

sudo groupadd ssmtp 
sudo chown :ssmtp /etc/ssmtp/ssmtp.conf 

Если у вас есть ошибки на этом этапе, как «» не можете получить доступ «» ... Вы должны найти SSMTP файл и использовать этот путь: Судо найти/-name «SSMTP»

sudo chown :ssmtp /usr/sbin/ssmtp 
sudo chmod 640 /etc/ssmtp/ssmtp.conf 
sudo chmod g+s /usr/sbin/ssmtp 

Отправка почты из (только одной) в командной строке

echo "This is a test" | ssmtp [email protected]_domain.com 

или

printf "To: [email protected]_domain.com\nFrom: RaspberryPi3\nSubject: Testing send mail from Raspberry\n\nThis is test. Best Regards!\n" | ssmtp -t 

Отправка почты из файла test.TXT
Make-файл с похожим содержанием:

To: [email protected]_domain.com 
From: [email protected] 
Subject: Testing send mail from Raspberry 

This is test mail (body) 

Best Regards! 

Теперь вы можете отправить почту из файла

ssmtp [email protected]_domain.com < test.txt 

Вот и все :)

+0

Вы должны представлю это просмотр кода - вы имеете отправляли ответы на вопросы – dbmitch

+3

@ dbmitch http://stackoverflow.com/help/self-answer – Nick

+0

Использование формы printf в командной строке с двойными кавычками (как показано) приводит к ошибке: -bash:! \ n : событие не найдено Используйте одинарные кавычки вокруг всей строки (между printf и |), а это работает. – tim11g