First, a mail transfer agent (exchange 2003):
You have 3 basic options:
sendmail -- industry standard. Nightmare to configure and maintain. I'd stay away, too many people think they get it working and end up with an open relay.
The other 2 i'm aware of are:
exim:
http://www.postfix.org/
postfix:
http://www.exim.org/
Haven't had much of an occasion to set either up... just remember setting up a smtp server on the rhce exam.
SQL server.
MySQL certainly seems very popular. Supports standard SQL syntax, and has a subset of its own. Tools exist to convert MSSQL to MySQL. If it doesn't meet your needs, see PostgreSQL.
httpd:
Apache. The obvious choice. However, not so obvious is which version? 1.3.x or 2.x?
Personally I'd go with 2.x unless you have reason to go with the 1.3.x series (which is generally perceived to be more secure and stable).
ftpd:
vsftpd is simplistic, but works if you're intent is to give users ftp access to their home directories.
proftpd is a bit more featurefull.
glftpd seems to targetted more towards those people who have officers knocking on their doors.