Challenges of Building A Mail Gateway on Linux When You’re Not a Linux Person…

I’m a Microsoft guy through and through.  I started on Windows 95 as a teenager, learned the Microsoft Server stack in college, and every professional environment I have worked in was Active Directory-based.

One of the goals that I want to accomplish before my son’s first birthday is completing my Exchange 2007 certification.  To accomplish that, I’ve started building an Exchange 2007 VM on my home server.  I aim to have it running as a live, Internet-connected email system.
That means dealing with spam.  And viruses.  I think you know where I’m going with this, and what better way to filter spam than to build your own mail gateway.
One thing I’m not is a Linux/Unix person, but I’d like to learn it so I can expand my skill set.  This would be the perfect project as it should be well documented, and it would use far fewer system resources than an Exchange Edge Server.

After a few Google searches for information, I have 10 different sets of instructions for setting up Amavis-New, ClamAV, and SpamAssassin (with or without pyzor, razor, and dcc) on a CentOS box.

Unfortunately, none of the instructions match up or work properly.  Some want to edit files that don’t exist.  Some try to install items that aren’t in the base repositories (that can be found elsewhere, but that isn’t included in the instructions).  Almost all of them are two-three years old.
Not that there is anything wrong with this.  The benefit of using a VM means that I can quickly revert to a snapshot of a clean install and try again.  I know it’s a very Windows-like way of solving the problem, but if it makes me more comfortable with the Linux command line, I don’t see there being any harm in doing it that way for now.
And maybe…hopefully…I’ll have an updated set of instructions by the time I’m done.