I think you'll find that Samba can do everything that you want. If you haven't used Samba before, you may want to take the time to read the 'howto' at the Linux Documentation Project. <
http://www.tldp.org/HOWTO/SMB-HOWTO.html>
You don't say how many are in your workgroup, but I think that from both an administration and data security point of view, you would be much better off using a (Linux) file server. This can be an ordinary PC - RAID and a tape backup are recommended.
The alternative is to set up LOTS of imported shares - this can be an administrative nightmare if you have a lot of people in the workgroup. If you were to set up a public directory on a file server, things would be much simpler.
Hope this helps.