docker 图片中的 ssmtp
ssmtp in docker image
我正在尝试在 Docker 图片中设置 ssmtp(用于发送邮件)。
为此,我创建了以下 Docker 文件:
FROM php:7.4-apache
# Install paquet requirements
RUN set -ex; \
# Install required system packages
apt-get update; \
apt-get install -qy --no-install-recommends \
ssmtp \
mailutils \
; \
# Clean aptitude cache and tmp directory
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*;
如您所见,我已经安装了 ssmtp 和 mailutils。
我的 /etc/ssmtp.conf 文件包含我可以使用标准邮件客户端登录我的帐户的所有凭据:
root=serwer@mydomain.com
mailhub=mail.mydomain.com:587
AuthUser=serwer@mydomain.com
AuthPass=PASS_HERE
FromLineOverride=YES
UseTLS=YES
#UseSTARTTLS=YES
Debug=YES
hostname=OVERRIDEN_HOSTNAME
由于某种原因,邮件未发送。我正在使用 sendmail
命令:
sendmail my_email@example.com
Subject: aaa
aaa
CTRL+d
出现错误:
sendmail: Authorization failed (535 Incorrect authentication data)
即使设置了 Debug=YES
,我也没有在 /var/log
下看到任何关于 sendmail 的日志。
你有没有想过可能出了什么问题?
谢谢大家!
我的问题已经解决了。问题是 ssmtp.conf 文件的 Windows 行结尾。
它解释了为什么用户名不正确以及为什么 Debug
标志和 UseSTARTTLS
标志更改没有得到遵守。
非常感谢@telcoM 提供调试服务器流程的方法。
我正在尝试在 Docker 图片中设置 ssmtp(用于发送邮件)。
为此,我创建了以下 Docker 文件:
FROM php:7.4-apache
# Install paquet requirements
RUN set -ex; \
# Install required system packages
apt-get update; \
apt-get install -qy --no-install-recommends \
ssmtp \
mailutils \
; \
# Clean aptitude cache and tmp directory
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*;
如您所见,我已经安装了 ssmtp 和 mailutils。
我的 /etc/ssmtp.conf 文件包含我可以使用标准邮件客户端登录我的帐户的所有凭据:
root=serwer@mydomain.com
mailhub=mail.mydomain.com:587
AuthUser=serwer@mydomain.com
AuthPass=PASS_HERE
FromLineOverride=YES
UseTLS=YES
#UseSTARTTLS=YES
Debug=YES
hostname=OVERRIDEN_HOSTNAME
由于某种原因,邮件未发送。我正在使用 sendmail
命令:
sendmail my_email@example.com
Subject: aaa
aaa
CTRL+d
出现错误:
sendmail: Authorization failed (535 Incorrect authentication data)
即使设置了 Debug=YES
,我也没有在 /var/log
下看到任何关于 sendmail 的日志。
你有没有想过可能出了什么问题?
谢谢大家!
我的问题已经解决了。问题是 ssmtp.conf 文件的 Windows 行结尾。
它解释了为什么用户名不正确以及为什么 Debug
标志和 UseSTARTTLS
标志更改没有得到遵守。
非常感谢@telcoM 提供调试服务器流程的方法。