Я хочу создать безопасный малый бизнес для разработки игр и думал о том, как лучше защитить контент, но при этом позволять людям развиваться. Конечно, поскольку разработка займет несколько лет, и за это время может произойти что угодно, я хочу быть как можно более параноиком. Поэтому нам нужно что-то, что защищает как от вторжения, так и от выдавливания, но при этом позволяет нам разрабатывать нашу игру UE3. Вот наши задачи и требования:
Имейте 5 человек, все они находятся в разных местах, и у них есть только около 35 Мбит / с, чтобы работать с тем, где мы планируем разместить нашу сетевую инфраструктуру.
Необходимо обеспечить безопасность данных при передаче, безопасность на сервере и безопасность на клиенте.
На стороне сервера нам, как минимум, нужны репозиторий SVN, внутренний веб-сервер, внутренний почтовый сервер и сервер VPN.
Наш бюджет составляет $ 1–1,5 тыс, 2 тыс - только в случае крайней необходимости.
Все варианты, которые я рассмотрел, включают:
Устройство сетевой безопасности Juniper SSG-5 с лицензиями AV и DPI. Какой бы тип зашифрованной настройки VPN ни мог поддерживать Juniper. Сервер с 5 клиентами. Виртуализация (ESX / ESXi, CentOS + Xen и т. Д.) Полное шифрование диска для сервера и клиентов.
1-й сценарий:
Виртуализируйте все. Попросите всех войти в виртуальную машину, размещенную на сервере в нашем местоположении. Имейте вторую физическую машину, которая отражает все виртуальные машины / выполняет функцию аварийного переключения для избыточности.
Плюсы: все данные хранятся на сервере таким образом, поэтому их нельзя украсть с клиентских компьютеров, если они не имеют входа на сервер, который можно отключить, чтобы предотвратить потерю.
Минусы: хотя Maya потенциально может запускаться, а рендеры могут быть отправлены на ферму, я не думаю (поправьте меня, если я ошибаюсь) что-то вроде UE3 будет работать там из-за ужасной поддержки, насколько мне известно для приложений с интенсивным 3D.
2-й сценарий:
Пусть каждый человек использует SVN для загрузки / выгрузки ресурсов или кода на свой компьютер.
Плюсы: Самый удобный способ развития.
Минусы: нет возможности контролировать, куда идут данные (где-нибудь в Интернете? На флэш-накопитель или DVD для передачи конкурентам?) После того, как они находятся на стороне клиента.
Проблема с этими вариантами заключается в том, что первый вариант кажется неадекватным для разработки игры, а второй - прискорбно небезопасным. Что вы, ребята, посоветуете для безопасной установки и почему?
Сдаться. Точка. Ваши пожелания, реальность и бюджет не совпадают.
Вы можете легко установить приличный VPN между людьми и центральным сайтом, но если вы не принудительно используете какой-либо удаленный рабочий стол (и тогда вам не понадобится VPN), вы уже потеряли контроль.
В конце концов, вы должны доверять людям, которые не украдут код или активы и не подадут на них в суд.
Теперь вы могли бы настроить что-то с центральными серверами, большой пропускной способностью - по цене около 3000 долларов США + .... НА РАЗРАБОТЧИКА (уже на уровне 15k). По-прежнему не будет идеальным, но, возможно, «вполне сработает». К сожалению, это пустая трата средств, и ваш .... бюджет не позволяет этого.
Крупные параноидальные фирмы делают это, заставляя всю работу выполнять в пределах своего безопасного физического периметра. Как только вы это сделаете, будет проще фильтровать все цифровые сообщения внутри и за пределами этого периметра. Требуется много усилий для защиты от таких вещей, как камеры сотовых телефонов, USB-накопители и сетевые ключи 3G, но это возможно.
Обеспечение безопасности удаленной рабочей силы также возможно, но вы отказываетесь от части контроля, которую получаете, выполняя всю работу внутри защищенного периметра. Соскабливание экрана с помощью инструментов на базе ОС или камер-камер практически невозможно предотвратить. Разработка с интенсивным использованием графики, такая как та, которая требуется при разработке компьютерных игр, очень трудно или невозможно выполнить через удаленное соединение (пока). Код, тестируемый разработчиком, должен будет совместно использовать локальность с тестовой системой разработчика, что неизбежно выведет его за пределы вашего защищенного периметра. Расширение защищенного физического периметра до удаленной среды разработчика довольно дорого (создание удаленного офиса с физической безопасностью, что сводит на нет экономию за счет наличия удаленной рабочей силы).
Поскольку код должен будет делиться местоположением с разработчиками, даже если это просто скомпилированный код, скомпилированный код будет уязвим для утечки. Я не вижу выхода без объединения всех ваших разработчиков под одной физической крышей.
Вот несколько вещей, которые вы можете сделать, чтобы свести к минимуму вероятность сбоя кода:
И, наконец, имейте в виду, что обременительная безопасность заставляет творческих людей (разработчиков) творчески подходить к ее решению.