Using sieve to forward mail

The Sympl documentation for Mail config says:

Note that when using external email addresses which are not hosted on the same server, then the mail is forwarded on directly without the sender being rewritten, which may cause delivery issues if the sender or recipient are using any anti-spam measures.

For this reason, it is generally best to either deliver to a local mailbox which is collected by the user, or to use a Sieve forward rule in a local mailbox to ensure delivery.

Sadly the link to the Wiki page is empty.

I just wondered if anyone has a handy recipe for this? I presume that the idea is to avoid spf (and DKIM?) problems by setting the envelope sender to the mailbox owner.

That’s correct - if you log in via webmail, you should be able to find the sieve settings in the mailbox configuration, and set the forward rule there.

Alternatively, if your mail client supports it (may need plugins) you can edit the sieve rules directly.

I can re-write the From - which probably works - but means that a reply to the message doesn’t really function. Needs a dovecot extension which isn’t included by default BTW.

It seems on investigation that there is a protocol involved - and raw exim support is apparently ‘experimental’. However I see that Mythic does some stuff for ‘Hosted Accounts’ - is there a possibility of extending some form of support to Sympl customers? I’d love to be able to send mail onto some server that does this stuff - so the forward file has some magic that sends it on.

The normal forward functionality in Symbiosis was never particularly resilient, and falls foul of DKIM/SPF fairly frequently nowadays.

The “Sender Rewriting Scheme” side of things used at Mythic (and elsewhere) is fairly complex, but I can certainly look into potentially duplicating the functionality in Sympl.

1 Like

Just to add that I would really like SRS, as it would address a couple of my use cases (e.g. hosting a website for a client who also wants a few email aliases but no mailboxes).

A very quick look into what’s needed to implement it suggests it’s fairly complex (including a database and so on), but I’ll have a more detailed look into it when I can.