¿Cuál es el propósito de ejecutar VCS a través de SSH?

No estoy muy familiarizado con los sistemas SSH y * nix en general, así que por favor, perdónenme por una pregunta posiblemente estúpida.

¿Cuál es el beneficio y cuál es el propósito exacto detrás de tener un VCS de uno ser canalizado (espero que este es un término apropiado aquí) sobre una connection SSH? ¿Es velocidad? O la security? ¿O algo mas?

Seguridad y que SSH es un protocolo de transporte estándar. También es común el uso de authentication de key con SSH para proporcionar una interacción sin contraseña con el VCS. La velocidad no es un beneficio ya que SSH encripta las transmisiones y, por lo tanto, se requiere time para encriptar / descifrar.

¿Por qué elegir un protocolo de transporte estándar? Obtener la autorización del cortafuegos es más directo, el VCS no tiene que redevise la rueda, etc.

Esta es una respuesta subjetiva, pero aquí hay tres razones por las que haría un túnel de cualquier protocolo de aplicación a través de SSH, en order de importancia:

  1. Autenticacion y autorizacion

    No tengo que mantener mi propia database de usuarios, no tengo que pensar en el encryption de passwords, no tengo que darle a los administradores de sistemas otra cosa más para administrar.

  2. Gestión de connection

    Puedo centrarme en mis comunicaciones a nivel de aplicación, sin preocuparme de haber creado un agujero de security explotable.

  3. Es más probable que los administradores abran puertos conocidos