Check out the lightweight on-premises email archiving software developed by iRedMail team: Spider Email Archiver.
With OpenLDAP backend, per-domain transport is set in domain account with
mtaTransport, per-user transport is set in user account with
the same attribute. For example:
With SQL backends, per-domain transport is set in SQL table
transport. For example:
sql> USE vmail; -- Check current transport settings sql> SELECT domain,transport from domain LIMIT 10; -- Update transport setting for domain 'my_domain.com' sql> UPDATE domain SET transport='[new_transport_here]' WHERE domain='my_domain.com';
Per-user transport is set in table
Per-user transport has higher priority. If no per-user transport is set for your mail user, per-domain transport will be used.
With iRedAdmin-Pro, you can easily manage per-domain or per-user transport in account profile page. Screenshots attached.