Normally, I position FortiMail for anti-SPAM at customers. However, today I decided to play with the Anti-SPAM feature on the FortiGate itself. NOTE: You will require the UTM, Enterprise or the ala carte Email filtering license on the FortiGate.

Here are the Fortinet FortiGate Bundles at time of this writing. Check with your Fortinet Partner or Account Manager for the latest bundle features.
Enabling the Features on the FortiGate
Lets go to System then Feature Visibility and enable Email Filter and Email Collection

Configuring the Profile
Now that we have the feature enabled, you should see the option under the Security Profiles section.

Once you are in the Email Filter section, you cam...

- Go to
Security Profiles
- Then
Email Filter
- Choose the
default and choose Clone (Note: You can create one from scratch)

In this example, we are going to choose Enable Spam Detection and Filtering on the top. Then we are going to add a prefix to the Spam that is there to tag the subject and change it to FGT-Spam . You can leave it as SPAM but I have noticed that some mail clients will add Spam to the subject line. This way you can track it easier but creating a unique name.
You can either turn on the FortiGuard filtering that includes
- IP Address Check
- URL Check
- Detect Phishing URL in Email
- Email Checksum Check
- Spam Submission
Or you can turn on Local Spam Filtering which allows you to create your own:
- Black List
- White List
- Return DNS Check
- HELO DNS Check
Creating a Policy
Now we need to create a policy and apply the MonkeyBiz email filter to it.

Here we can see that I am allowing IMAP, IMAP2, POP3, POP3S and SMTP from the three networks depicted above and have applied the MonkeyBiz email profile.
Results
Now if you go to your Log & Reports then Anti-Spam.

Here we can see some messages that were tagged

Hope this helps