标签: email-server

有没有办法暂停 Postfix 中的邮件传递(在队列中累积)?

当使用 Postfix/Dovecot 组合时,有没有办法告诉 smtp 服务器(Postfix)不要将邮件存储在磁盘上,而是保留/将它们添加到队列中,直到“维护完成”?

对于磁盘升级、卷扩展、chkdisk 等很有用。

email-server postfix dovecot

6
推荐指数
2
解决办法
7317
查看次数

为什么 sendmail 在标题中添加额外的回车符?

我在 CentOS 5 服务器上运行了 SendMail 8.14.4。

日本的一个用户正在发送一条消息,当它被服务器处理时,SendMail 出于某种原因添加了一个额外的回车。

电子邮件包含一个 X 标头,其值(大概)包含国际字符。我说“大概”是因为当我用记事本++检查 MIME 源时,我看到了像STX和 之类的奇怪现象CAN

我已经能够将测试范围缩小到这个:

在此处输入图片说明

如果我通过 Sendmail 发送它,它最终将 SendMail 保留为:

在此处输入图片说明 (ips、Q-ID 和主机名已更改以保护无辜者)

现在显然这里有一个潜在的危险信号:标题值以引号开头,但没有结束语。这是 RFC 标准所要求的吗?或者那部分是红鲱鱼?

最终结果是标头值泄漏到消息正文中:

在此处输入图片说明

关于为什么 sendmail 添加额外回车的任何想法?

email-server sendmail smtp-headers

6
推荐指数
1
解决办法
2993
查看次数

来自 MXToolBox 的反向 DNS 不是有效的主机名错误

我无法从我的服务器发送电子邮件。但是,我可以接收电子邮件。我设置我的服务器的方式与我多次做过的完全相同,我已经证明它可以工作,它非常简单,包括:创建 DigitalOcean Droplet (Debian 7.0) +通过将 Droplet 重命名为 FQDN 来设置 PTR 记录+ 创建私有名称服务器在我的域注册器中并将我的域指向我的 NameServers + 安装VestaCP (child-ns)。从这里开始,我只需通过 VestaCP 添加一个网络,DNS 记录就会自动添加。

我不确定我的配置哪里出错了,但是我的域收到错误“反向 DNS 不是有效的主机名” izanami.co。我将我的 DigitalOcean Droplet PTR 记录设置为,izanami.co并且我使用 dig 和 host 进行的所有测试似乎都返回了正确的信息。

挖-x 188.166.32.113

; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> -x 188.166.32.113
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47119
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;113.32.166.188.in-addr.arpa.   IN …
Run Code Online (Sandbox Code Playgroud)

email-server reverse-dns

6
推荐指数
1
解决办法
1万
查看次数

Postfix 发送到 FQDN 主机名而不是域名

我已经安装了一个只发送后缀。当我向完整的电子邮件地址发送邮件时,Postfix 工作。但是,如果将邮件发送给用户,它会添加 FQDN 名称作为扩展名,而不仅仅是我在安装过程中设置的域名。

例如,当我像这样从 ssh 发送邮件时:

echo "This will go into the body of the mail." | mail -s "Hello world" root
Run Code Online (Sandbox Code Playgroud)

我希望邮件转到root@example.com.au. 但是电子邮件发送到root@host.example.com.au.

我已经查看了我的主机设置、邮件名设置、后缀设置,但我不知道为什么它不断向其中添加完整的主机名,而这显然会被退回。这是我的配置文件:

后缀main.cf:

# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = …
Run Code Online (Sandbox Code Playgroud)

email email-server debian postfix fqdn

6
推荐指数
1
解决办法
1万
查看次数

无需 MTA、GMail 等即可发送邮件

为什么在没有任何 SMTP 服务器的情况下似乎无法从命令行发送邮件?我发现的所有解决方案要么使用 sendmail、postfix 等(据我所知,这些是 SMTP 服务器),要么通过 GMail 或其他一些提供商(需要身份验证)发送。为什么应用程序不能直接连接到目标邮件服务器?例如,如果我想向 user@test.com 发送邮件,为什么应用程序不能直接连接到 test.com 并直接发送邮件而不涉及任何其他服务器?当然,它会被标记为垃圾邮件,但我不在乎。我是否误解了 SMTP 协议,是否只是没有找到合适的应用程序,或者真的没有人费心编写这样的应用程序?

email email-server smtp

6
推荐指数
1
解决办法
4133
查看次数

将“发件人”重写为特定的“收件人”地址

我们有一个设置,其中 postfix 通过 Amazon SES 中继发送邮件。除了电子邮件转发之外,一切正常。

虽然这个话题至少已经在这里这里讨论过,但仍然有一些问题我无法理解。

问题是 Amazon SES 不会发送From:未经验证的电子邮件。因此,当内部地址想要转发到外部并且发件人也是外部时,邮件将不会被发送。

为了解决这个问题,我们目前在 main.cf 中使用以下配置

header_checks = regexp:/etc/postfix/first_header_checks
smtp_header_checks = regexp:/etc/postfix/second_header_checks
sender_canonical_maps = regexp:/etc/postfix/sender_canonical
sender_canonical_classes = envelope_sender
smtpd_data_restrictions = check_sender_access pcre:/etc/postfix/sender_access
Run Code Online (Sandbox Code Playgroud)

使用first_header_checks

/^From:(\s)?(.*)/i PREPEND X-Original-From: $2
/^To:(\s)?(.*)$/i PREPEND X-Original-To: $2
Run Code Online (Sandbox Code Playgroud)

第二个标头检查

/^From:(.*)/i REPLACE From: <no-reply@verified-domain.com>
Run Code Online (Sandbox Code Playgroud)

发件人_规范

/.*/    user@verified-domain.com
Run Code Online (Sandbox Code Playgroud)

发件人访问权限

/(.*)/  prepend Reply-To: <$1>
Run Code Online (Sandbox Code Playgroud)

这对于收到的邮件非常有效。user@external.com 将邮件发送到 me@verified-domain.com 并转发到 new@another-external.com

Reply-To: <user@external.com>
X-Original-To: <me@verified-domain.com>
To: new@another-external.com
From: <no-reply@verified-domain.com>
X-Original-From: <user@external.com>
Run Code Online (Sandbox Code Playgroud)

问题是,从服务器发出的邮件也会发生这种情况。假设 me@verified-domain.com 发送一封邮件,发件人被重写为无回复,并且将设置回复。我想解决这个问题。邮件标头应该只针对将要转发的传入邮件进行重写

我尝试过使用像!/^From:(\s)?(.*@verified-domain\.com)/ …

email-server postfix amazon-web-services amazon-ses

6
推荐指数
1
解决办法
1万
查看次数

Postfix:如何接受具有有效 SPF 但无法解析主机名的电子邮件?

我已将 Postfix 配置为拒绝从没有 PTR 记录的主机和没有 A 记录的主机名发送的电子邮件。我发现有些合法的邮件服务器具有有效的 SPF 记录,但它们的主机名没有 A 记录。结果,合法的电子邮件被拒绝了。

即使主机名没有 A 记录或 IP 地址没有 PTR 记录,有没有办法将 Postfix 配置为接受具有有效 SPF 记录的电子邮件?

email email-server postfix spam spf

6
推荐指数
2
解决办法
1597
查看次数

如何在 Google Cloud VM 上设置邮件服务器?

我想知道如何在 Google VP 实例上设置像 postfix 这样的邮件服务器。

我正在运行 Ubuntu 16.04(和 LAMP 堆栈),无法让邮件服务器从网站发送电子邮件。

我已经安装了postfix,并打开了端口25,但没有运气。

关于如何进行的任何想法?

错误日志:网络不可达、连接超时

ubuntu email-server google-cloud-platform

6
推荐指数
1
解决办法
2万
查看次数

Yahoo 在更改邮件服务器公共 IP 地址后阻止了电子邮件

我们有两个交换边缘服务器,我们想更改它们的公共 IP 地址。更改服务器 IP 地址之一(和相关 DNS 记录)已成功完成,电子邮件将发送到除 yahoo 之外的所有目的地,返回:

421 4.7.0 [TSS04] 由于用户投诉,来自 xxxxx(我们的 ip)的消息暂时延迟 - 4.16.55.1;见https://help.yahoo.com/kb/postmaster/SLN3434.html )

另一台服务器可以毫无问题地向雅虎发送电子邮件。我们的服务器和新 IP 地址未列入任何黑名单。我联系了雅虎并向他们提供了有关该问题的信息,但除了他们的一般建议外,他们没有给我们任何解决方案。我在这里发布我们的问题,希望有人以前遇到过这个问题并有解决方案。

编辑:当我们对 IP 和 DNS 配置应用更改并在更改服务器的 IP 过程中将它们恢复几次时,我们决定使用另一个公共 IP 地址来确保它不会因为这些更改而被阻止。一开始在服务器上设置新的 IP 地址没问题,邮件发送成功,但当我们发送 10 封邮件时,它又开始起作用了。该 IP 被阻止了几分钟,然后再次解除阻止。

编辑2:在服务器上设置新的公共IP地址后,我们继续被雅虎阻止了很短的时间。我们的一个客户端自动向雅虎发送突发电子邮件流量,这导致雅虎阻止了大约30分钟。我尝试创建一个脚本来暂停这些电子邮件,并每 3 分钟将其中一封发送给雅虎。到目前为止,我的脚本不再被雅虎阻止。

编辑 3:随着时间的推移,情况似乎越来越好,雅虎不会立即阻止我们,因此我可以将发送电子邮件之间的时间减少到 1 分钟或更短时间而不会被阻止。

email exchange email-server spam

6
推荐指数
1
解决办法
828
查看次数

邮件无法发送至 Gmail

我在 VPS 上有一个自托管邮件服务器。通过应用程序发送邮件时,我的大部分邮件都被谷歌拒绝。Google 给出了有关该邮件的以下消息。

Reporting-MTA: dns; mail.myclearmargin.com
X-Postcow-Queue-ID: BAC4E881209
X-Postcow-Sender: rfc822; no-reply@myclearmargin.com
Arrival-Date: Mon,  8 Aug 2022 00:03:09 -0700 (PDT)

Final-Recipient: rfc822; alauddin088@gmail.com
Original-Recipient: rfc822;alauddin088@gmail.com
Action: failed
Status: 5.7.25
Remote-MTA: dns; gmail-smtp-in.l.google.com
Diagnostic-Code: smtp; 550-5.7.25 [2a02:c206:2061:6136::1] The IP address
    sending this message does not 550-5.7.25 have a PTR record setup, or the
    corresponding forward DNS entry does 550-5.7.25 not point to the sending
    IP. As a policy, Gmail does not accept 550-5.7.25 messages from IPs with
    missing PTR records. Please …
Run Code Online (Sandbox Code Playgroud)

email-server centos

6
推荐指数
1
解决办法
1891
查看次数