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 / 问题 / 571720
Accepted
alxgomz
alxgomz
Asked: 2014-02-03 15:22:20 +0800 CST2014-02-03 15:22:20 +0800 CST 2014-02-03 15:22:20 +0800 CST

在 bind9 中发布长域密钥记录

  • 772

我正在建立一个基于 exim4 的邮件系统。该系统实现了 DKIM 签名和检查(除其他外)。签名似乎没有问题,但检查不起作用,exim4 抱怨我携带我的 dkim 公钥的 TXT 记录的语法:

2014-02-02 22:37:31 1WA5fP-0004Y4-E2 DKIM: d=middle.earth s=a9d04665528b593d263a6e5256648c99 c=relaxed/relaxed a=rsa-sha256 [invalid - syntax error in public key record]

我正在使用 2048 位长的 RSA 密钥在邮件中继级别签署我的邮件(这工作正常,我确实在通过此服务器中继的邮件中有 DKIM 标头)。问题似乎在于绑定(该区域的我的 DNS 服务器)不支持区域文件中长度超过 255 个字符的记录。所以我选择了拆分记录,如下图所示,正如非常值得信赖的网站 zytrax.com 中所述:

...
a9d04665528b593d263a6e5256648c99._domainkey IN  1800 TXT    ("k=rsa,p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz2/ZfhxSI/A"
                                         "bqgh0amM8ylrlosirWeKShUhq7fg12aYmRwOqq9hIzO0Fcz1BzfgHVu6HU++rC5"
                                         "QoUK0JQK/nk4jwkDgvG2di2ZYmAvEbY/VeiK1x/TG0p1Iczr2k6Bj0gEAb/YGD2"
                                         "YbwrwAi4bDXwoPsYuuNn9TB3jjyWKu/dvOsqhff1/4Wc+FkOi0ClvgrXiklN28X"
                                         "TLjyjSyU794ntIoegXxrfwcwkhfPMvuqcnhfIC0Z8L71M4WR4SoHyNHVfBtNlUv"
                                         "VNROiXlMxtxnNQvfViSwz6LC8bYIxeAba3hSXPTChKu3qZtfR0o3jFwEWAfLQdg"
                                         "Ixler0jMEoAyJmfQIDAQAB")

完整的区域文件可以在这里找到:http: //pastebin.com/GDE5XA2M

使用该配置 exim 抱怨上述错误。如果我尝试手动解析我的 dkim 记录,我会得到:

;; ANSWER SECTION:
a9d04665528b593d263a6e5256648c99._domainkey.middle.earth. 1800 IN TXT "k=rsa,p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz2/ZfhxSI/A" "bqgh0amM8ylrlosirWeKShUhq7fg12aYmRwOqq9hIzO0Fcz1BzfgHVu6HU++rC5" "QoUK0JQK/nk4jwkDgvG2di2ZYmAvEbY/VeiK1x/TG0p1Iczr2k6Bj0gEAb/YGD2" "YbwrwAi4bDXwoPsYuuNn9TB3jjyWKu/dvOsqhff1/4Wc+FkOi0ClvgrXiklN28X" "TLjyjSyU794ntIoegXxrfwcwkhfPMvuqcnhfIC0Z8L71M4WR4SoHyNHVfBtNlUv" "VNROiXlMxtxnNQvfViSwz6LC8bYIxeAba3hSXPTChKu3qZtfR0o3jFwEWAfLQdg" "Ixler0jMEoAyJmfQIDAQAB"

这对我来说看起来不太正确,我可以想象 exim 会因为这样的输出而迷失方向。但是,我不能 100% 确定对于这么长的 DNS 记录和 exim 是否应该处理它是正常的 DNS 回复,还是我坐起来绑定的方式是错误的。

对此的任何帮助将不胜感激。

谢谢。

bind
  • 2 2 个回答
  • 23598 Views

2 个回答

  • Voted
  1. Best Answer
    Todd Lyons
    2014-02-04T05:20:23+08:002014-02-04T05:20:23+08:00

    您使用逗号而不是分号来分隔记录中的键/值对。将其更改为:

    a9d04665528b593d263a6e5256648c99._domainkey IN  1800 TXT (
             "k=rsa;p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz2/ZfhxSI/A"
             "bqgh0amM8ylrlosirWeKShUhq7fg12aYmRwOqq9hIzO0Fcz1BzfgHVu6HU++rC5"
             "QoUK0JQK/nk4jwkDgvG2di2ZYmAvEbY/VeiK1x/TG0p1Iczr2k6Bj0gEAb/YGD2"
             "YbwrwAi4bDXwoPsYuuNn9TB3jjyWKu/dvOsqhff1/4Wc+FkOi0ClvgrXiklN28X"
             "TLjyjSyU794ntIoegXxrfwcwkhfPMvuqcnhfIC0Z8L71M4WR4SoHyNHVfBtNlUv"
             "VNROiXlMxtxnNQvfViSwz6LC8bYIxeAba3hSXPTChKu3qZtfR0o3jFwEWAfLQdg"
             "Ixler0jMEoAyJmfQIDAQAB")
    

    另外,我会注意到,在我的特定区域文件中,我特别声明了版本v=DKIM1,我认为你也应该这样做。附带说明一下,我不会用它来包装记录,( )因为我只是把它作为一条长线来完成:

    record._domainkey IN 1800 TXT "v=DKIM1;blah" "blah2" "blah3"
    

    这是个人偏好,我现在意识到您的偏好肯定更具可读性。

    • 13
  2. Alp Altunel
    2021-12-16T22:59:03+08:002021-12-16T22:59:03+08:00

    就我而言,谷歌的 DKIM 密钥很长。您应该在 250-255 个字符后将其拆分到下一行,例如:

    mail._domainkey    IN  TXT ( "v=DKIM1\; h=sha256\; k=rsa\; "     
         "p=MIIBIjANBgkqhki...."
         "cOasyifDEj0AqBEEG7XbGfP0..."
         "dM0FoPv4JsWByAgz/ywIDAQAB" )
    
    • 0

相关问题

  • 配置仅在短时间内缓存的本地 DNS 解析器

  • BIND 服务器无法解析 us3.php.net!

  • DNS - 有什么方法可以强制名称服务器更新域的记录?

  • BIND/Named:禁用递归,客户端使用替代服务器

  • DR 站点中 Windows 域的 BIND

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