我试图在DNS中输入4028位DKIM密钥,看来我既超出了UDP 512字节的限制,也超过了TXT记录的最大记录大小。
有人如何正确创建大密钥(隐含更大的编码大小)并将其导入DNS?
我试图在DNS中输入4028位DKIM密钥,看来我既超出了UDP 512字节的限制,也超过了TXT记录的最大记录大小。
有人如何正确创建大密钥(隐含更大的编码大小)并将其导入DNS?
Answers:
您需要在文本字段中拆分它们。我相信2048是密钥大小的实际限制。将文本字段分成不超过255个字符的部分。每个拆分都有开销。
长字段有两种格式。
TXT“第一部分” \“第二部分”
TXT(“第一部分”“第二部分”)
两者将合并为“第二部分”。 Zytrax的更多详细信息。
要生成我的dkim条目,请插入我的公共密钥文件并将其包装在引号中。
我的公共密钥文件包含以下内容:
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD78Ki2d0zmOlmjYNDC7eLG3af12KrjmPDeYRr3
q9MGquKRkRFlY+Alq4vMxnp5pZ7lDaAXXwLYjN91YY7ARbCEpqapA9Asl854BCHMA7L+nvk9kgC0
ovLlGvg+hhqIPqwLNI97VSRedE60eS+CwcShamHTMOXalq2pOUw7anuenQIDAQAB
编辑密钥后,我的dns区域文件如下所示:
dkim3._domainkey IN TXT ("v=DKIM1; t=s; p="
"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD78Ki2d0zmOlmjYNDC7eLG3af12KrjmPDeYRr3"
"q9MGquKRkRFlY+Alq4vMxnp5pZ7lDaAXXwLYjN91YY7ARbCEpqapA9Asl854BCHMA7L+nvk9kgC0"
"ovLlGvg+hhqIPqwLNI97VSRedE60eS+CwcShamHTMOXalq2pOUw7anuenQIDAQAB")
DNS将其返回如下:
bill:~$ host -t TXT dkim3._domainkey.systemajik.com
dkim3._domainkey.systemajik.com descriptive text "v=DKIM1\; t=s\; p=" "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD78Ki2d0zmOlmjYNDC7eLG3af12KrjmPDeYRr3" "q9MGquKRkRFlY+Alq4vMxnp5pZ7lDaAXXwLYjN91YY7ARbCEpqapA9Asl854BCHMA7L+nvk9kgC0" "ovLlGvg+hhqIPqwLNI97VSRedE60eS+CwcShamHTMOXalq2pOUw7anuenQIDAQAB"
DNS将其视为一个长字符串,在连接行的位置没有多余空格。所有" "
序列都将被忽略。
" "
序列,您实际上在最后的引用中证明了这一点。这是SPF RFC 4408第3.1.3节它定义了串联应当由应用程序阅读SPF验证DNS记录中。
如果是Amazon Route 53,则不要在块之间使用换行符(仅使用空格)。
"do it" "this way"
"not like"
"this"
如果将Poweradmin UI用于pdns,则只需在输入字段中输入整个dkim字符串。
v=DKIM1;k=rsa;p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxtR3bw1Kbh1B7q4+5aWjTj2YEFwv230gcv+NMp4KouOSLdIr0mCMiwDZpY+7zCdks0zMXtz+F5TPij/NkSAxIKBbJqbIO3mvAhgeI0Vy5aQ5prwnIyXUj54po6AsXbv5Ud2tFbGSsdIhvWiC755d3WaFs8mdWFkpSxprlW6PobCzOWDayWGCvsNfHpjmTxHZinkd3TmLQqE/O6Nb1YnRwQwUCLioSyudV+5Bd2+rXZ2V9FYAOiK2aQi2aSTiUaLCVxft9H6xen3JDaKsuu43QMBrhydoJOCV2QaY82IxqE3GgZrlADu6YEOfotdwD2aA9GRwVB88GqdXL8HwgEGTbwIDAQAB