Что я должен учитывать для защиты SVN в Windows? [закрыто]

14

В настоящее время я использую VisualSVN Server, и он доступен только в моей домашней сети. В конце концов, другие получат доступ к нему, но сейчас я и я бы хотели пойти в кофейню (или куда-нибудь еще) и работать вне дома.

В настоящее время я обращаюсь к серверу по адресу http://user-pc:xx/svn/Projects/. Когда я настраиваю свой маршрутизатор для переадресации порта XX на мой сервер, какие шаги я должен предпринять, чтобы защитить сервер?

Имейте в виду, что я делаю это в Windows, и хотя я широко использую обычную командную строку, я не очень долго работал в SVN и не использовал ничего, кроме TortoiseSVN, для работы с ним до этого момента.

Редактировать : Единственная вредная вещь, которую может сделать злоумышленник, о которой я знаю, это: угадать мой номер порта, имя пользователя и пароль, чтобы попасть в хранилище. Однако, как говорится, я не знаю, чего не знаю.

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

Брэндон Мур
источник
Можете ли вы определить, что такое «защитить себя»? для вас? Защищать свой код, свой Apache, свою Windows от скриптовых детишек?
Ленивый барсук
@LazyBadger См. Мое редактирование
Чтобы ответить на вопрос, который вы оставили на флаге, так близкие избиратели не думали, что этот вопрос заслуживает большего внимания. Они чувствовали, что это явно не по теме (как и здесь, речь идет о домашнем сервере, который не по теме) и не хотели тратить время на то, чтобы снова объяснить, почему, забыв, что для каждого случая это чей-то первый раз . Я не постоянный на ТАК, так что не могу объяснить, что они думают о включении / выключении темы.
sysadmin1138
@ sysadmin1138 Спасибо, что нашли время написать. Я не знаю, что вы имеете в виду, когда проводите время, чтобы объяснить «еще раз», поскольку они никогда ничего не объясняли с самого начала. Я согласен, что это не по теме здесь, однако это не было не по теме в переполнении стека, и я все равно хотел бы объяснить это. Я подозреваю, что нет ни одного, и что они просто произвольно решили, что им не нравится вопрос.
Брэндон Мур
Я оставил флажок на вопросе SO, чтобы посмотреть, смогу ли я перенести это в лучший дом.
sysadmin1138

Ответы:

7
  1. Используйте надежную парольную защиту для защиты сервера VisualSVN
  2. Используйте более высокий порт для сервера, например, 39517 вместо порта по умолчанию 80 или 443. Злоумышленнику будет сложнее угадать. Злоумышленнику придется полагаться на сканирование портов.
  3. Сервер VisualSVN не разрешает анонимный доступ. Вам необходимо явно определить пользователей.
  4. Предоставляйте пользователям доступ только тем людям, которых вы знаете / которым доверяете
Один один
источник
1
Не должно быть 4. Предоставьте доступ пользователям только людям, которым вы доверяете (не позволяйте им использовать вашу учетную запись)
Учитывая его № 3, я и предполагал, что он имел в виду.
@orn, это то, что я имею в виду. Извините за мой английский.
Одна вещь, которая меня интересовала, была попытка взлома пароля грубой силой, но я забыл, что им также придется угадывать имя пользователя, так что это хорошо.
@BrandonMoore, они также должны были бы знать порт.
8
  1. Использовать https на стороне сервера, а не обычный http (AuthType Basic допускает использование), использовать дайджест-аутентификацию (нужно настроить Apache вручную)
  2. Используйте (бесплатно) выданный CA сертификат на сервере, а не самоподписанный (вы можете использовать самоподписанный сертификат, но каждый раз будете иметь (?), Чтобы проверить его на глаз)
  3. Поддерживать актуальную версию VisualSVN Server (с исправлениями для возможных проблем в Apache и | или SVN)
  4. Включите ведение журнала в httpd.conf для аудита безопасности (по умолчанию на VisualSVN Server ведение журнала отсутствует)
Ленивый Барсук
источник
0

Я бы порекомендовал использовать SSH доступ к вашему серверу SVN. Я лично предпочитаю аутентификацию с открытым / закрытым ключом.

Несмотря на это, предложения desaivv также являются вещами, которые я бы порекомендовал.


источник
Спасибо, Роберт. Я обнаружил, что в моих поисках в Google все говорят ... но я пока не нашел простых инструкций по работе с VisualSVN. Со временем я узнаю об этом, но если вы думаете, что знаете руководство для неспециалистов по настройке ssh, которое может быть проще, чем те, с которыми я сталкивался, мне бы очень хотелось его увидеть.
Для настройки клиента: visualsvn.com/support/topic/00008
1
@robertvoliva - Сервер VisualSVN использует только протокол доступа http / https , для svn + ssh: // необходимо использовать другое решение
Lazy Badger
1
@ brandon-moore Нет, речь идет о ssh-туннелях от клиента (TortoiseSVN) к серверу с поддержкой SSH, который не
Lazy Badger
1
VisualSVN (не сервер) - это надстройка для клиентского доступа к SVN-репо, независимая от протокола, основанная на существующем svn-клиенте. Форум поддержки имеет две отдельные основные категории, ссылки из категории «VisualSVN», не связанные с сервером
Lazy Badger