Looks like you might also want to buy another Nic card to route to other LAN network.
Looked into possibly using more then one computer to run all services could slow your system down greatly.
Just a thought could use Netbsd on a i386 to handle Routing.
Buy a i386 for $5 bucks at a auction or less.
PIII 350
128mb
6.4 gb
1 NIC on board
Bigger Hard-drive to small for all services!
More memory!
File Server and Mail Server. Go on vacation and a month later all the email you receive will cause it to crash possibly.
This is starting to sound like to small of a computer to necessarily run as a server.
This is really sounding like an outdated Workstation limited Hard-drive space and not enough memory.
You may want to find a book that shows the hole infrastructure of the Linux Network to get a better understanding of how to separate Server Services. Such as Mail-server, File Server, Router and maybe even Print Server.....
You have a good idea of what you want but making it happen may take more resources then you have.....
The other issue will definitely be security for Web server and general network.
Best to use BSD so small of an operating system and can set it to do a specific job without the need for a GUI. Like router and firewall you probably need i386 with 16ram and 1 gig hard drive max... The bsd sites state 250MB and up is all that is needed. Not sure how big the router and firewall function would be......
Agree with sergkh...
Apache is small and one of the best web-servers I have ever used..
Apache 1.3.x (add module PHP MYSQL )
later good luck.....