I Want to setup a secure small business for game development, and was thinking of best way to secure content but still allow for people to develop. Of course, since development will take a few years, and anything can happen in that time, I want to be as paranoid as possible. Therefore we want something that protects against both intrusion AND extrusion, but still allows us to develop our UE3 game. Here are our challenges and requirements:
Have 5 people, are all at different locations, and only have around 35mbps down and up to work with for where we plan to place our network infrastructure.
Need to keep data secure in transit, secure on the server, and secure on the client.
Server-side at the bare minimum we need an SVN repo, internal webserver, internal mail server, and a VPN server.
Our budget is $1k - 1.5k, 2k only if absolutely necessary
All options I have considered include:
A Juniper SSG-5 network security appliance with AV and DPI licenses. Whatever sort of encrypted VPN setup the Juniper might support. A server with 5 clients. Virtualization (ESX/ESXi, CentOS + Xen, etc.) Full disk encryption for server and clients.
Virtualize everything. Have everyone log in to a virtual machine hosted on a server at our location. Have a second physical machine that mirrors all of the VM's/acts as failover for redundancy.
Pros: All data is stored on the server this way, so it cannot be stolen from client computers, unless they possess a log-in to the server, which could be deactivated to prevent loss.
Cons: While Maya could potentially run and renders could be pushed to a farm, I do not think (correct me if I'm wrong) something like UE3 would run there due to terrible support as far as I know for 3D-intensive applications.
Let each person use SVN to upload/download assets or code to their own computer.
Pros: Most convenient way to develop.
Cons: No way to control where the data goes (anywhere on the internet? onto a flash drive or DVD to pass on to a competitor?) after it is client side.
The problem with these options is that the 1st one seems like it's just inadequate for developing a game, and the 2nd one is woefully insecure. What would you guys suggest for a secure setup and why?