Hm.. If you need to ask such a question, I'd suggest you do not develop such a site, but get started on thinking about what it entails first.
- You can use open source stuff, however, do keep in mind that you will need intimate knowledge of the packages to create a auto-replicatable version and possibly a lot of add-on scripts to allow access to the tools once people register.