AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1010896
Accepted
jcubic
jcubic
Asked: 2020-04-05 05:56:11 +0800 CST2020-04-05 05:56:11 +0800 CST 2020-04-05 05:56:11 +0800 CST

从本地主机发送电子邮件的后缀配置

  • 772

我想将 localhost 配置为通过后缀服务器发送电子邮件,我这样做是为了测试我使用 Wordpress 设置 Docker 的解决方案(在互联网电子邮件上找到的解决方案不起作用,也 curl 但那是因为企业 CA SSL 证书)。现在我正在 Fedora 上对此进行测试,并尝试发送到我在 onet.pl 和 jcubic.pl 域的两个帐户,他们都拒绝了我的电子邮件。

以下是后缀日志:

Apr  4 13:24:14 23c96150d42f postfix/smtp[134]: BCAA01659A0: to=<[email protected]>, relay=mail.jcubic.pl[185.255.40.21]:25, delay=0.25, delays=0/0/0.07/0.17, dsn=5.7.1, status=bounced (host mail.jcubic.pl[185.255.40.21] said: 550 5.7.1 <[email protected]>: Recipient address rejected: Please see http://www.openspf.net/Why?s=helo;id=jcubic.pl;ip=185.129.113.210;r=unknown (in reply to RCPT TO command))
Apr  4 13:24:14 23c96150d42f postfix/qmgr[95]: BCAA01659A0: removed
Apr  4 13:25:41 23c96150d42f postfix/smtp[134]: 2D02E1659A0: to=<[email protected]>, relay=mx.poczta.onet.pl[213.180.147.146]:25, delay=0.85, delays=0/0/0.85/0, dsn=4.7.1, status=deferred (host mx.poczta.onet.pl[213.180.147.146] refused to talk to me: 220-mx.poczta.onet.pl ESMTP 450 4.7.1 Client host rejected: cannot find your reverse hostname, [185.129.113.210])

首先是 SPF 保护,我可以忽略它,只处理显示反向主机名错误的 onet.pl,我已经读到我需要在 jcubic.pl 有正确的 DNS 记录。我可以在 jcubic.pl 上设置 DNS,这只是为了查看电子邮件是否有效,但我不知道如何设置多个 A DNS 记录。我也不确定我该怎么做(记录应该是什么样子)。

我在 OpenStack 上使用 Ubuntu 测试我的 docker-wordpress 组合,我能够向 gmail 公司帐户发送电子邮件。

我正在使用此设置,我将后缀实例作为具有此配置的 docker compose 服务:

  postfix:
    image: catatnight/postfix
    environment:
      maildomain: example.com # at work here was valid domain of my company (gene.com)
      smtp_user: postfix:postfixpass
    ports:
      - "25:25"
    restart: always

端口 25 可能不会公开它只是为了测试,我不确定这是否是没有发送电子邮件的问题:

我的 wordpress image 使用msmtp命令发送电子邮件,我现在正在测试这个:

echo "Hello this is sending email using msmtp" | msmtp <name>@onet.pl
echo "Hello this is sending email using msmtp" | msmtp <name>@jcubic.pl

我的 msmtp 配置如下所示:

# Set defaults.
defaults
# Enable or disable TLS/SSL encryption.
tls off
tls_starttls off
# Setup WP account's settings.
account postfix
host postfix
port 25
auth login
user [email protected]
password postfixpass
from [email protected]

logfile /var/log/msmtp/msmtp.log

account default: postfix

我正在测试不同user的 nad from,我可以在 jcubic.pl 上配置 DNS 以验证我的本地 IP(这是动态的)现在是否有效,所以我可以测试发送电子邮件是否有效?我的域 jcubic.pl 在共享主机上,但我可以添加 DNS 记录。也可以修复 SPF 问题。这将如何在普通服务器上工作。在工作中,我使用我公司的域,但它是 Intranet IP 地址(私有 OpenStack 的实例),我不确定为什么 gmail 认为发件人是有效的。

我还有另一个问题是 postfix 邮件服务器需要公开并且可以访问发送电子邮件的 IP?这就是它的工作方式(有来自 docker postfix 容器的公共端口),但在这里我有 localhost 和 NAT 路由器,我的公共 IP 不同,邮件服务器不能从互联网访问。我不确定我的公司有哪些 DNS 记录。

linux postfix localhost docker
  • 1 1 个回答
  • 779 Views

1 个回答

  • Voted
  1. Best Answer
    Esa Jokinen
    2020-04-05T08:37:28+08:002020-04-05T08:37:28+08:00

    我可以只在 jcubic.pl 上配置 DNS 来验证我的本地 IP(即动态)是否有效吗?

    直接从动态 IP 发送电子邮件可能会出现问题。您可能应该使用您的 ISP SMTP 服务器或通过您自己的电子邮件服务器使用提交。更不用说 IP 地址目前在几个基于 DNS 的黑名单 (DNSBL) 上。

    收件人地址被拒:请看
    http://www.openspf.net/Why?s=helo;id=jcubic.pl;ip=185.129.113.210;r=unknown

    不允许185.129.113.210发送jcubic.pl电子邮件

    jcubic.pl. IN TXT "v=spf1 a mx include:_spf.atthost.pl -all"
    

    由于动态 IP 地址,您必须添加+ip4:185.129.113.210可能的整体。+íp4:185.129.112.0/22这是不明智的,如果允许PL-UNINET-OWN-INFRASTRUCTURE网络块上的每个设备以jcubic.pl. 在提交端口上使用经过身份验证的 SMTP是一种解决方案。本地 Postfix 可以通过您现有的邮件服务器将所有非本地邮件作为relayhost.

    450 4.7.1 Client host rejected: cannot find your reverse hostname, [185.129.113.210]

    这是您不能简单地通过修改您的正向区域来解决的问题jcubic.pl,因为这是关于 IP 地址缺少反向 PTR记录的问题185.129.113.210。只有 IP 块的所有者才能更改这些记录。dig -x 185.129.113.210返回NXDOMAINfor 210.113.129.185.in-addr.arpa. IN PTR,所以目前根本没有反向记录。

    许多接收 SMTP 服务器要求同时存在匹配的正向和反向记录,并且它们也匹配SMTP 标语(服务器如何在HELO命令中自我介绍)。

    • 1

相关问题

  • 多操作系统环境的首选电子邮件客户端

  • 你最喜欢的 Linux 发行版是什么?[关闭]

  • 更改 PHP 的默认配置设置?

  • 保护新的 Ubuntu 服务器 [关闭]

  • (软)Ubuntu 7.10 上的 RAID 6,我应该迁移到 8.10 吗?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve