ietf-asrg
[Top] [All Lists]

[Asrg] Yet another attempt to fix forwarding

2008-01-30 00:42:32
Hi all,
it is well known how SPF breaks forwarding. SPF is not itself an anti-spam mechanism, but it would help cleaning up the mail transport system by limiting domain abuse. If it were widely employed, that is. Thus, this post is not off topic, although not directly aimed at countering spam.


My tentative solution provides for a local forwarding policy. When a message is being forwarded (i.e. it already has a Return-Path), the mailer should look up the policy in order to determine what envelope sender replacement, if any, it should use.

Not replacing the envelope sender is fine if the mailer can be authenticated and/or whitelisted by the target MTA. Such whitelisting should be granted with per-recipient granularity: the target MTA whitelists only messages destined to specific recipients. The forwarder might use existing extensions to authenticate, e.g. the AUTH parameter of the MAIL FROM command. Either the mailer or the local policy implementation should be able to determine if the target MTA supports this kind of authorization, even if the current recipient has not been authorized yet. In the latter case the current message should remain in the queue (or be rejected with a 4xx response) until the required authorization is granted. If the target MTA does not support this solution, messages may still be forwarded using an SPF-compliant sender replacement, as ruled by the local policy. A sender replacement is needed anyway when the final recipient's addresses are not to be disclosed to the message originator.

Authorizations should be granted automatically by targets MTAs. Different sites may implement different strategies in order to check a specific relay is trustworthy, which may imply manual operations. After a relay has been registered, in case it needs to, it should be able to obtain authorizations for forwarding to each new user in a fully automated fashion.

A forwarder may provide some capabilities, such as querying some DNSBLs, performing SPF checks and similar. Zero or more of the available capabilities may be enabled for each specific recipient. After it has been whitelisted, a forwarder will not be deemed responsible for relayed spam. If both hosts support spam reporting, that activity may be coordinated by sending spam reports back to the forwarder when they belong there.

In return for a forwarding authorization, a forwarder grants the final recipient permissions to directly inquiry, update, and delete the relevant record of its local forwarding policy. To delete here means to not forward any further message, possibly responding "551 user not local". That way a recipient can control and recurse through a chain of forwarders, e.g. via web services. Update and delete actions should be handled differently according to the kind of alias to alias-expansion relationship (1-1 or 1-many).

The target MTA also keeps track of the authorizations it granted. For each authorization, some properties may be relevant, e.g. if the forwarding happens after subscribing to a list, if the address has been double-checked, what was the requesting IP, if an alias is meant for concealing its expansion rather than as an address update, et cetera. The access credentials gained from forwarders are also stored, keyed on both ip or helo name of the forwarder, and recipient address. That would provide an opportunity for verifying opt-in data and to enable end users to maintain their forwarding chains.


More or less, that's it. I've proposed the above description to a postmasters' mailing list, seeking for practical advice. I got almost no response. Why? Perhaps this solution is too simple, or too complicated, or there are obvious reasons why it won't fly. Would anyone on this list be able to spot them, please?

TIA
Ale


_______________________________________________
Asrg mailing list
Asrg(_at_)ietf(_dot_)org
https://www1.ietf.org/mailman/listinfo/asrg