AWS SES和Cloudflare上的DKIM验证失败可能是由于以下原因之一引起的:
selector1._domainkey.example.com IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCdL4UzC..."
请将上述记录添加到Cloudflare的DNS设置中,确保记录类型为TXT,并且主机名为selector1._domainkey.example.com。
DNS传播延迟:DNS记录的更改可能需要一些时间才能在全球范围内传播。请等待一段时间,然后再次验证DKIM记录是否已正确设置。
DKIM密钥不匹配:请确保您在AWS SES中正确配置了DKIM密钥,并将对应的公钥添加到Cloudflare的DNS设置中。如果DKIM密钥不匹配,验证将失败。请检查AWS SES中的DKIM密钥配置和Cloudflare的DNS设置是否一致。
以下是一个使用AWS SDK for Python(Boto3)的示例代码,可以用于在AWS SES中配置DKIM密钥:
import boto3
def create_dkim_key():
ses_client = boto3.client('ses')
response = ses_client.verify_domain_dkim(
Domain='example.com'
)
return response['DkimTokens']
dkim_tokens = create_dkim_key()
此代码将使用AWS SES客户端创建DKIM密钥,并返回DKIM令牌列表。您可以将这些令牌添加到Cloudflare的DNS设置中,以完成DKIM验证。
请注意,这只是一个示例代码,您需要根据您的具体情况进行相应修改。