Где поддержать центральный исходный репозиторий?

У меня были нулевые проблемы с этим. Это не может наиболее полироваться, но это работало безупречно за достойную цену.

10
задан 8 November 2010 в 22:26
7 ответов

Если бы Вы обеспокоены этим находиться на общедоступном сервере, но хотели бы доступ откуда-либо, необходимо полагать, что наличие разработчиков использует основанную на клиенте VPN для вхождения в сеть удаленно для доступа к внутреннему серверу управления исходным кодом.

13
ответ дан 2 December 2019 в 22:00
  • 1
    Можно ли объяснить обоснование относительно того, почему Вы полагаете, что VPN более безопасна, чем основанный на SSL/TLS сервер, учитывая, что обе потребности быть "общедоступной"? VPNs используют familar шифрование для SSL/TLS. Таким образом, если Вы могли бы взломать VPN, Вы получаете все. –  Matt 9 November 2010 в 10:11
  • 2
    @Matt, Если нет никакой причины для него иметь его репозиторий на общедоступном сегменте, то почему помещенный это там? Кроме того, VPN может обладать другими преимуществами для его разработчиков. Вы также отметите, что я никогда не говорил нигде, что "VPN более безопасна, чем SSL/TLS", не помещайте слова в мой рот:) –  phoebus 9 November 2010 в 16:47
  • 3
    Верный. Я чувствовал, что безопасность подразумевалась в myr операторе. Возможно, можно квалифицировать это: "Если Вы обеспокоены этим находиться на общедоступном сервере" –  Matt 10 November 2010 в 00:10

Я не слишком уверен, почему люди думают, что подход VPN является лучшим. Это не обязательно больше безопасно и только предлагает одно преимущество, о котором я могу думать.

PPTP, например, как известно, имеет меньше, чем идеальная безопасность, хотя я полагаю, что это улучшено несколько, так как сначала представлено... так быть осторожным, какое решение VPN Вы используете. Я пошел бы с OpenVPN или IPSEC.

Однако Вы не можете биться, удобство SSL/TLS без VPN (читайте далее вниз). И сделать это еще более безопасным можно сделать это сертификатом только.

Однако, если Вы думаете, что могли бы предложить другие услуги кроме управления исходным кодом, затем рассматривают решение VPN, потому что Вы туннелируете другие сервисы по нему.

Недостаток с использованием VPN - то, что Ваш ПК становится эффективно частью сети, в которую это соединяется. Это также может быть преимуществом. Но, если Вы на расстоянии в миллион миль из дома, и сетевое соединение с основной базой не слишком быстро затем каждый раз, когда Вы хотите сделать, разность или регистрация или кодировать Вас могли бы соединиться и разъединить VPN.

Я могу говорить от личного опыта здесь, поскольку я - разработчик, и это была реальная боль в заднице для выполнения этого!!! Идеально, обе опции предпочтены.

Таким образом, если Вы собираетесь быть просмотром веб-сайтов и т.д. затем, он мог бы сделать чтение новостей, и т.д. скорее замедляются. Но по крайней мере Вы получаете безопасный доступ к электронной почте. Поэтому рассмотрите, как Вы будете использовать его сначала... На вашем месте я рассмотрел бы реализацию обоих.

4
ответ дан 2 December 2019 в 22:00

На самом деле мне нравится Ваше предложение. Если Вы делаете свой репозиторий исходного кода доступным ТОЛЬКО через SSL/TLS, и Вы удостоверяетесь, что Ваши разработчики не используют easy-to-brute-force пароли (или еще лучше, используйте сертификаты), то это должно быть столь же безопасно как что-либо.

Вы могли, вместо этого, скрыть свой сервер в Вашей LAN и вынудить разработчиков использовать VPN для получения доступа, но это просто означает, что разработчики должны поместить свое имя пользователя/пароль (и/или сертификат) в другое поле входа в систему. Я рекомендовал бы против создания точки входа в Вашу сеть, последствия безопасности которой не могут всегда быть очевидными, только чтобы предоставить доступ к единственному сервису. Если Вам уже настроили VPN и защищенный для другого использования, то уверенный, это - легкая задача, разрешение, и используйте его. Иначе это может быть более простым, и таким образом более безопасным, для создания самого сервиса непосредственно доступным через SSL/TLS.

3
ответ дан 2 December 2019 в 22:00

Промышленный стандарт, вероятно, зависит от того, какова Ваш (или Ваши клиенты) промышленность :-)

Практически необходимо рассмотреть, кто Вы хотите предоставить доступ к, и что они могут обработать. Некоторые люди, к которым Вы могли бы хотеть/нуждаться получить доступ, не смогут справиться намного больше, чем имя пользователя/пароль. Другие смогли получать голову вокруг ssh и закрытого ключа, который, если можно надежно получить ключ к ним, не плох. Клиент TortoiseSVN может обработать ssh+svn и поддерживает закрытые ключи с небольшим количеством скручивания руки. Это было достаточно хорошо в моих целях.

Туннель VPN является также справедливым предложением, хотя во многих местах Вы были бы рады предоставить внешних людей доступ только к Вашему управлению исходным кодом, но не Вашей целой сети!

3
ответ дан 2 December 2019 в 22:00

Как другие, я предпочитаю VPN. Альтернатива была бы туннелем SSH, который я предполагаю, на практике своего рода VPN так или иначе.

2
ответ дан 2 December 2019 в 22:00

Сделайте это внутренним единственным и реализуйте удаленного пользователя решение VPN. Дубликат/Doh-.

0
ответ дан 2 December 2019 в 22:00

Если вам нужен доступ из любого места, тогда вам нужен общедоступный сервер - это ясно.

На этом сервере вы хотите как можно меньше раскрывать , предпочтительно только Mercurial / Subversion и ничего больше. Это сделано для предотвращения распространения нарушения безопасности из системы контроля версий на остальную часть вашей компании. По этой причине я соглашусь с Мэттом , когда он говорит, что VPN может быть опасным: он дает гораздо более широкий доступ, чем необходимо.

Для Mercurial вы можете жестко заблокировать вещи, используя ] hg-ssh , чтобы ограничить команды, доступные клиентам, которые подключаются через SSH. Используя SSH, вы можете легко потребовать, чтобы клиенты использовали аутентификацию с открытым ключом вместо паролей. Это защищает ваш сервер от атак грубой силы при входе в систему.

Даже если ключ SSH скомпрометирован (возможно, у него была слабая парольная фраза и портативный компьютер, хранящий его, был украден), худший ущерб, который может нанести злоумышленник, - это добавить историю мусора в Mercurial. Используемый протокол изначально предназначен только для добавления, поэтому ничего нельзя удалить с помощью hg push .

Для HTTPS аутентификация выполняется интерфейсным веб-сервером . Это означает, что вы можете потребовать сертификаты клиент-сайт, если хотите, и таким образом получить безопасность, такую ​​как аутентификация с открытым ключом SSH, описанная выше.

Используемый протокол изначально предназначен только для добавления, поэтому ничего нельзя удалить с помощью hg push .

Для HTTPS аутентификация выполняется интерфейсным веб-сервером . Это означает, что вы можете потребовать сертификаты клиент-сайт, если хотите, и таким образом получить безопасность, такую ​​как аутентификация с открытым ключом SSH, описанная выше.

Используемый протокол изначально предназначен только для добавления, поэтому ничего нельзя удалить с помощью hg push .

Для HTTPS аутентификация выполняется интерфейсным веб-сервером . Это означает, что вы можете потребовать сертификаты клиент-сайт, если хотите, и таким образом получить безопасность, такую ​​как аутентификация с открытым ключом SSH, описанная выше.

0
ответ дан 2 December 2019 в 22:00

Теги

Похожие вопросы