Smtp
使用 ssmtp 發送電子郵件時出現問題
我正在嘗試進行設置,以便可以從 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的設置
我做了一些進一步的測試。
- 我選擇了一個不同的 SMTP 伺服器,它可以工作。(我不想使用它,因為它僅在直接連接到我的 ISP 時可用。)
- 我嘗試設置應用程序特定密碼,並得到響應“您要查找的設置不適用於您的帳戶”。(大概是因為這個帳戶沒有 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
再簡單不過了。