kumomta icon indicating copy to clipboard operation
kumomta copied to clipboard

RFC9477 Header Support

Open MHillyer opened this issue 1 year ago • 2 comments

Historically Validity has provided a centralized FBL broker service where senders can sign up at Validity and in return receive FBL data from a collection of Mailbox Providers.

Recently Validity has moved from that being a free service to instead providing it as a paid service. This means that many senders, as well as some Mailbox Providers, are looking to move to alternate decentralized mechanisms for providing FBL data.

One proposed solution is RFC9477 - https://datatracker.ietf.org/doc/html/rfc9477

This involves injecting a header that specifies the email address that FBLs should be sent to, so that the MBP can dynamically send FBLs without pre-registration required.

For most cases it's just a matter of adding the header, unless the destination domain is not the same as the sending domain, in which case a DKIM signature on the FBL destination domain must also be added to the message.

Should be straightforward to implement.

MHillyer avatar Nov 17 '23 16:11 MHillyer

Pretty sure that this is just:

kumo.on('smtp_server_message_received', function(msg)
  msg:prepend_header('CFBL-Address', '[email protected]; report=arf')
end)

what more do we need to do here?

wez avatar Nov 17 '23 20:11 wez

Mainly logic around whether the FBL domain needs a signature because it’s not part of the message’s from/return path domains.

MHillyer avatar Nov 17 '23 20:11 MHillyer