Tabla de contenidos
Esta sección proporciona una guía paso-a-paso para configurar Subversion y TortoiseSVN para utilizar el protocolo svn+ssh. Si ya está utilizando conexiones SSH autenticadas para identificarse en su servidor, entonces esto ya lo tiene hecho y puede encontrar más detalles en el libro de Subversion. Si no está utilizando SSH pero le gustaría hacerlo para proteger su instalación de Subversion, esta guía le proporciona un método simple con el que no necesita crear una cuenta de usuario SSH diferente en el servidor para cada usuario de Subversion.
En esta implementación creamos una única cuenta de usuario SSH para todos los usuarios de Subversion, y utilizamos diferentes claves de autenticación para diferenciar entre los usuarios reales de Subversion.
En este apéndice asumimos que ya tiene las herramientas de Subversion instaladas, y que ha creado un repositorio tal y como se describe en alguna sección de este manual. Tenga en cuenta que no debería iniciar svnserve como un servicio o demonio cuando se utilice con SSH.
Mucha de esta información viene de un tutorial proporcionado por Marc Logemann, que puede encontrarse en www.logemann.org Thorsten Müller ha proporcionado información adicional sobre cómo configurar un servidor Windows. ¡Gracias tíos!
Necesita tener SSH habilitado en el servidor, y aquí asumimos que utilizará OpenSSH. En la mayoría de distribuciones ya lo tendrá instalado. Para averiguarlo, escriba:
ps xa | grep sshd
y busque trabajos de ssh.
Un punto a tener en cuenta es que si compila Subversion desde el código fuente y no proporciona ningún argumento a ./configure, Subversion crea un directorio bin bajo /usr/local y pone sus binarios ahí. Si desea utilizar el modo túnel con SSH, debe asegurarse de que el usuario que haga login via SSH necesita ejecutar el programa svnserve y algunos otros binarios. Por esta razón, o bien ponga /usr/local/bin en la variable PATH, cree enlaces simbólicos de sus binarios en el directorio /usr/sbin o en cualquier otro directorio que esté incluido en el PATH.
Para comprobar que todo está bien, haga login como el usuario de destino con SSH y escriba:
which svnserve
Este comando le dirá si se puede alcanzar svnserve.
Cree un nuevo usuario que utilizaremos para acceder al repositorio svn:
useradd -m svnuser
Asegúrese de otorgar a este usuario todos los derechos de acceso al repositorio.