Smtp

使用 ssmtp 發送電子郵件時出現問題

  • February 11, 2022

我正在嘗試進行設置,以便可以從 Raspbian 發送郵件。

當我嘗試發送時出現錯誤ssmtp: Cannot open smtp.gmail.com:587(我也嘗試了埠:465)

我在 Google 上設置了“訪問不太安全的應用程序”,並且可以從 Thunderbird 上的帳戶發送/接收。

我已安裝ssmtp並配置/etc/ssmtp/ssmtp.conf為包含:-

# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=xxxxxx.raspberry.pi@gmail.com

# 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=smtp.gmail.com:587

AuthUser=xxxxxx.raspberry.pi@gmail.com
AuthPass=xxxxxxxxxxxxxx
UseTLS=YES
UseSTARTTLS=YES

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

# The full hostname
hostname=xxxxxx.raspberry.pi@gmail.com

# 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

我還配置/etc/ssmtp/revaliases為包含:-

# 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:xxxxxx.raspberry.pi@gmail.com:smtp.gmail.com:587

有什麼建議麼?


編輯以上基於 https://wiki.archlinux.org/index.php/SSMTP的設置

我做了一些進一步的測試。

  1. 我選擇了一個不同的 SMTP 伺服器,它可以工作。(我不想使用它,因為它僅在直接連接到我的 ISP 時可用。)
  2. 我嘗試設置應用程序特定密碼,並得到響應“您要查找的設置不適用於您的帳戶”。(大概是因為這個帳戶沒有 2 因素身份驗證。)

我嘗試使用的 gmail 帳戶是專門為從 Raspberry Pi 發送消息而創建的。

hostname任務看起來不對。你可能想要hostname=raspberry.pi或類似的東西。(理想情況下,您的主機有一個公共 DNS 名稱,您應該使用它。)它不應該是電子郵件地址。

這很容易實現:

https://unix.stackexchange.com/questions/363814/simplest-way-to-send-one-line-mail-out-via-command-line-using-gmail/363815#363815

摘抄:

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

再簡單不過了。

引用自:https://unix.stackexchange.com/questions/359880