My domain name registrar offers email aliases and forwarding; however, this feature causes my mail server's SPF checks to fail because the registrar's mail relay sends on behalf of the originating server. I fixed it by white-listing the registrar's mail relay IP block in SpamAssassin.
1. Add a "trusted_networks" line to the SpamAssassin config. As of Zimbra 8.5 and later, the reported location to customize SpamAssassin is here:
/opt/zimbra/data/spamassassin/localrulesI refer to this article for the latest location for customizing SpamAssassin: https://wiki.zimbra.com/wiki/Anti-spam_Strategies#Customizing_SpamAssassin
Edit the file in here called local.cf and add your "trusted_networks" (example below). You'll notice this file contains a comment at that top that says something like, "This is the place to customize SpamAssassin..." I've also seen a file called user_prefs.cf being used instead. To be honest I don't think the file name matters much because I believe SpamAssassin reads all the cf files in this folder.
# TRUST REGISTRAR RELAY
2. Restart Zimbra.
su - zimbra