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 / 问题 / 1060672
Accepted
jcsanyi
jcsanyi
Asked: 2021-04-17 20:29:30 +0800 CST2021-04-17 20:29:30 +0800 CST 2021-04-17 20:29:30 +0800 CST

后缀客户端证书信息未传递给 opendkim milter

  • 772

我有一个私有后缀服务器,它使用 dovecot sasl 来选择性地验证提交客户端,我正在尝试将它设置为也接受客户端证书,以允许它充当某些特定源服务器的中继主机。

我已经让它大部分工作了,但遇到了一个小问题,opendkim milter 无法将经过证书身份验证的中继连接识别为内部或经过身份验证,因此它没有添加 DKIM 签名。

在 main.cf 中:

milter_default_action = accept
smtpd_milters = inet:opendkim:8891
non_smtpd_milters = inet:opendkim:8891

smtpd_tls_CAfile = /path/to/private-ca-cert.pem
tls_append_default_CA = no
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,permit_tls_all_clientcerts,reject_unauth_destination
smtpd_relay_restrictions = permit_mynetworks,permit_sasl_authenticated,permit_tls_all_clientcerts,reject_unauth_destination

在提交/inet 下的 master.cf 中:

-o smtpd_client_restrictions=permit_sasl_authenticated,permit_tls_all_clientcerts,reject
-o smtpd_tls_ask_ccert=yes

以上所有方法都有效,并且允许提供由我的私有 CA 签名的有效证书的连接进行中继访问。

但是,这些中继的电子邮件不是由 opendkim 签名的——相反,opendkim milter 会记录以下内容:

external host [host.that.connected.with.cert] attempted to send as [mydomain.com]

我知道我可以使用 opendkimExternalIgnoreList配置,但是由于这些主机位于动态 IP 上,这不是一个理想的解决方案,我正在寻找一种接受任何主机的解决方案,就像它接受通过 SASL 身份验证的提交连接发送的邮件一样任何邮件客户端。

我相信我已经将它追溯到{auth_authen}milter 用来确定邮件是否来自经过身份验证的连接的宏...... postfix 只是将该宏设置为 sasl 用户名。

有什么方法可以扩展功能{auth_authen}或添加新宏(使用 opendkim 的MacroList配置)以指示使用了有效的客户端证书?

postfix client-certificate milter
  • 1 1 个回答
  • 205 Views

1 个回答

  • Voted
  1. Best Answer
    anx
    2021-04-17T20:56:38+08:002021-04-17T20:56:38+08:00

    因为无论如何您只接受经过身份验证的邮件,所以您不需要传递有关opendkim使用哪种方法的信息- 只有具有强制身份验证(签名)的端口和不提供身份验证(验证)的端口之间的(布尔)区别。

    您可以设置让-o milter_macro_daemon_name=whateveropendkim知道应该签署哪些邮件。否则,该宏将默认为,但通过使用(任意,opendkim 不关心)不同的值进行仅验证和强制认证端口,您可以区分它们。master.cf$myhostname

    Docs 推荐使用ORIGINATINGandVERIFYING让它超级明显。MacroList然后在您的opendkim.conf罐子中检查是否daemon_name等于您设置的任何内容。

    • 2

相关问题

  • Postfix 在特定端口上接受邮件

  • 让 Postfix 以两种方式处理垃圾邮件

  • Postfix 或 exim:自动/程序化和转发电子邮件设置

  • 后缀电子邮件地址

  • 什么是最好的开源电子邮件解决方案包

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