¿Qué debo considerar para proteger SVN en Windows?

¿Qué debo considerar para proteger SVN en Windows?

Actualmente estoy usando VisualSVN Server y solo es accesible en mi red doméstica. Con el tiempo habrá otros accediendo a él, pero por ahora solo soy yo y me gustaría poder bajar a la cafetería (o donde sea) y poder trabajar fuera de casa.

Actualmente estoy accediendo al servidor en http://user-pc:xx/svn/Projects/. Cuando configuro mi enrutador para reenviar el puerto XX a mi servidor, ¿qué pasos debo seguir para proteger el servidor?

Tenga en cuenta que estoy haciendo esto en Windows y, aunque uso ampliamente el símbolo del sistema normal, no he estado en SVN por mucho tiempo y no he usado nada más que TortoiseSVN para trabajar con él hasta este momento.

Editar: Lo único dañino que podría hacer un atacante, que yo sepa, es: adivinar mi número de puerto, nombre de usuario y contraseña para ingresar al repositorio. Sin embargo, como dice el refrán, no sé lo que no sé.

Así que no estoy necesariamente pidiendo instrucciones paso a paso (aunque ciertamente también me gustaría tenerlas), sino más bien qué cosas debo tener en cuenta paracualquiertipo de ataque que podría realizarse una vez que el puerto esté abierto.

Respuesta1

  1. Utilice una buena contraseña para proteger el servidor VisualSVN
  2. Utilice un puerto superior para el servidor, por ejemplo, 39517 en lugar del puerto predeterminado 80 o 443. Hace que sea más difícil de adivinar para un atacante. El atacante tendría que confiar en un escaneo de puertos.
  3. El servidor VisualSVN no permitirá el acceso anónimo. Debe definir explícitamente los usuarios.
  4. Otorgue acceso de usuario solo a personas que conoce o en las que confía.

Respuesta2

  1. Use https en el lado del servidor, no http simple (AuthType Basic es interceptable) o use autenticación Digest (debe configurar Apache a mano)
  2. Utilice un certificado (gratuito) emitido por una CA en el servidor, no autofirmado (puede utilizar un certificado autofirmado, pero tendrá (?) verificarlo visualmente cada vez)
  3. Mantener la versión actualizada del servidor VisualSVN (con correcciones para posibles problemas en Apache y/o el propio SVN)
  4. Habilite el inicio de sesión en httpd.conf para la auditoría de seguridad (sin registro de forma predeterminada en VisualSVN Server)

Respuesta3

Recomendaría usar acceso ssh a su servidor svn. Personalmente prefiero la autenticación de clave pública/privada.

Aun así, las sugerencias de desaivv también son cosas que recomendaría.

información relacionada