У меня есть веб-сервер, и в настоящее время я плачу за хостинг SVN в компании, которая специализируется на хостинге SVN.
Я подумываю просто установить SVN на свой выделенный сервер. Есть ли какие-либо последствия для безопасности?
SVN очень сложно настроить в среде Windows, по крайней мере, если вы хотите разместить SVN, локальный репозиторий отличается. Мое предложение - придерживаться компании или искать более дешевый SVN, который не будет стоить столько денег. Они не сложны в настройке, но вы бы не хотели потерять весь свой исходный код из-за неправильного резервного копирования.
Для простых требований безопасности настройка Subversion с помощью svnserve почти тривиальна. Даже запустить его под Apache для более широких требований безопасности не слишком сложно.
Это хорошая прогулка:
http://donie.homeip.net:8080/pebble/Steve/2006/02/27/1141079943879.html
Я использую VisualSVN Server с http://www.visualsvn.com/server/ , очень прост в установке и может быть интегрирован с активным каталогом. Устанавливается на win2008 без проблем.
Это зависит от того, как далеко вы хотите рассмотреть этот вопрос.
Если вы хотите установить сервер Subversion самостоятельно, похоже, у вас есть два варианта:
- апаш
- Собственный протокол Subversions
В любом случае, проблема не в том, что делают двое, а в том, что двое непреднамеренно делают .
Если в Apache есть ошибки, которые позволяют внешнему злоумышленнику получить доступ к вашим данным, то это плохо. Если есть ошибки в собственном сервере Subversions, который допускает то же самое, это плохо.
Что вам нужно сделать, это рассмотреть риск и последствия для сценариев, и, если возможно, придумать настройку сервера, которая соответствует вашим требованиям.
Случаи, которые вы, по крайней мере, должны были бы рассмотреть:
- Ошибка в любой системе, которая позволяет злоумышленнику поглотить ваш сервер (пример: что-то, что заставляет ваш сервер использовать чрезмерное количество процессорного времени)
- Ошибка в любой системе, которая позволяет злоумышленнику получить доступ к данным на этом сервере
- Ошибка в любой системе, которая позволяет злоумышленнику получить доступ к вашему домену (т. Е. Ко всем вашим серверам и машинам, доступным с этого общедоступного сервера)
Лично я подумал, сколько сейчас хостов серверов Subversion через Apache, и без сомнения установил VisualSVN Server для размещения моего собственного исходного кода.
Небольшое исправление для джедая: это VisualSVN Server с http://www.visualsvn.com/server/
Apache и SVN довольно легко запустить вместе, но есть несколько шагов. Сегодня определенно легче, чем 2 года назад, когда я впервые попробовал. Убедитесь, что у вас есть соответствующие версии модулей, и потратьте некоторое время на локальную игру с Apache, прежде чем развертывать на своем сервере. Существуют версии Apache с и без SSL. Убедитесь, что у вас есть тот, у которого включен OpenSSL для защиты учетных данных в сети.
Установите Apache, чтобы он мог быть запущен вручную, например. не как услуга. Вы хотите сделать это, чтобы избежать столкновения с любыми приложениями IIS на вашем сервере. Вы можете установить Apache для запуска в качестве службы позже, как только ваш конфиг окажется верным.
Обычно Apache использует обычную аутентификацию. Вы должны обеспечить это с помощью SSL, учетные данные не шифруются при передаче. Вы помещаете данные пользователя в тестовый файл на диске. Если вы хотите аутентифицировать пользователей по Windows или активному каталогу, у вас будет более сложная задача (возможно, см. VisualSVN для этого).
Я быстро взглянул на VisuaSVN, и это, кажется, хороший вариант. Однако небольшой опыт настройки Apache может иметь большое значение. Исходя из фона IIS, это было не слишком сложно, просто потребовалось некоторое время, чтобы просмотреть все параметры / настройки.
VisualSVN - такой редкий зверь - инструмент установки, который легче установить SVN в Windows, чем в Linux. А что касается Linux, вам просто нужно набрать "yum install subversion", это похвала.
Однако, если вы действительно беспокоитесь, я бы установил VMware вместе с вашим SVN-сервером в гостевой ОС на вашем веб-сервере.
Безопасность: если вы запустите svnserve, просто заблокируйте доступ к этому порту (3960) для всех, кроме ваших компьютеров. Если нет, вам нужно защитить конфигурационные файлы svn auth. Если вы работаете с Apache, тогда это просто еще один веб-сайт для обеспечения безопасности, так же, как обычно.
Производственный svn-сервер важен с точки зрения доступности, но его никогда не будет достаточно, и не имеет значения, будет ли это Windows Srvr 2007, RH Linux и т. Д. Вам понадобится продуманная политика резервного копирования и заботливое управление доступом.