I went ahead and did Postfix + postfix.admin + Dovecot + Roundcube and the setup was very easy. I used this tutorial
http://www.campworld.net/thewiki/pmwiki.php/LinuxServersCentOS/Cent6VirtMailServer
I used parts from this tutorial to setup pipes
http://wiki.zimbra.com/wiki/Configuring_Postfix_to_work_with_piped_scripts
Mainly this part.. (Edited since we are not using Zimbra)
Edit /etc/postfix/transport and place the following lines at the top
# Pipe transports for RT queues
# YOU HAVE TO ADD THE PIPES TO /etc/postfix/master.cf if you want them to work!!!
rt@example.com rt-pipe
rt-comment@example.com rt-comment-pipe
Create the transport db by executing
postmap /etc/postfix/transport
The transport definitions 'rt-pipe' and 'rt-comment-pipe' must now be defined. Edit /etc/postfix/master.cf.in and add the following lines to the end of the file
rt-pipe unix - n n - - pipe
flags= user=www argv=/usr/bin/php -q /path/to/php/script.php
rt-comment-pipe unix - n n - - pipe
flags= user=www argv=/usr/bin/php -q /path/to/php/script.php
To make it all work, I had to create an alias for rt@example.com back to its self rt@example.com in postfix.admin, otherwise I was presented with this error..
550 5.1.1 : Recipient address rejected: User unknown in virtual mailbox table
This part will probably differ depending on the setup you have used
Restart postfix and test
service postfix restart
I decided the setup I was going for just could not be accomplished, so I'm hosting email in two spots. It isn't a huge deal though, everything is working fine for me now. DNS is helping point where the email is hosted, and we have no issues with this setup what so ever.
Also should note that mxtoolbox reports it is not an open relay, and all is configured nicely. This is actually the preferred setup for what we are going to be doing with our servers anyway, so I've added all the steps to an auto configuration script for new servers :)