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 提供调试服务器流程的方法。