But we need more information about what is being kept internal and what is being shared with customers and why.
This is what I'm talking about, we can't make recommendations about server type, how to configure it, what OS to use, nothing, based on the information we have so far. We know he wants it to be able to securely provide employees and customers with access to "thier information".
Though, looking at the most recent post it does look like at the very least, some sort of AD role on a 2003/2008 server would be good to start with, its extremely expandable and as long as he sets up a decent scheme in the beginning, he should have no problem growing the business to even hundreds of employees. You can restrict file access on file shares with security groups and permissions. That will take care of that side of it. A VPN solution, such as SSL VPN or the like, can take care of the employee access from the outside in to see thier stuff. What we dont know is the nature of what the clients need to see. Is this a web site they are placing orders on and they are seeing order statuses? Are you a break fix computer shop and you are serving a web interface to let customers see thier repair tickets? in these cases, yes a second server would probably be ideal to house any data necessary to be provided to the clients, and of course serve the website that will provide such data. For more security, and depending on the data, the web server can do only that and connect to a database backend to provide the "information". We just have no clue of the nature of what you are trying to show your clients.