Prerequisitos

Para poder utilizar SvnAdmin, es necesario disponer de una instalación de Subversion funcionando en alguna máquina. En esta sección se describen los pasos necesarios para configurar este sistema de control de versiones en un equipo con Ubuntu (testado con Ubuntu 7.10).

Instalación

Subversion puede funcionar en modo "standalone" como un servicio del sistema. Sin embargo lo habitual es integrarlo con Apache. De esta forma es este popular servidor web el que se encarga de la autenticación. Para integrarlos necesitamos instalar a través del gestor de paquetes de Ubuntu los siguientes paquetes:

  • apache2: nos permitirá acceder al repositorio mediante HTTP. Apache nos permite navegar por el repositorio a través de páginas web
  • subversion
  • libapache2-svn: este paquete permite transformar las peticiones HTTP de los clientes en operaciones sobre los repositorios
  • ssl-cert: necesario para crear el certificado de seguridad que va con SSL
  • openssh-server: necesario para que el cliente se pueda conectar al servidor para invocar comandos o bajar y subir ficheros

Configuración

Como queremos que las conexiones al servidor sean seguras, hay que activar SSL. Para ello debemos ejecutar los siguientes comandos:

sudo mkdir /etc/apache2/ssl
sudo /usr/sbin/make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem

A continuación habilitamos un host bajo SSL. Para ello primero copiamos el fichero de configuración que viene por defecto con un nuevo nombre:

sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/sites-ssl

Y ahora modificamos sites-ssl cambiando lo siguiente:

  • NameVirtualHost por NameVirtualHost *:443
  • VirtualHost por VirtualHost *:443
en la siguiente línea se añade:

LoadModule ssl_module /usr/lib/apache2/modules/mod_ssl.so
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.pem

Quedando algo como esto:

NameVirtualHost *:443

ServerAdmin webmaster@localhost

LoadModule ssl_module /usr/lib/apache2/modules/mod_ssl.so
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.pem

DocumentRoot /var/www/

A continuación hay que decirle a Apache que escuche peticiones por el puerto 443, si no está ya configurado para ello. Hay que incluir la línea

Listen 443

al fichero /etc/apache2/ports.conf

Por último activamos sites-ssl y reiniciamos Apache:

sudo a2ensite sites-ssl
sudo /etc/init.d/apache2 restart

last modified by Administrator on 2009/07/23 18:06

Creator: Administrator on 2009/07/23 18:05
This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 1.9.3.22597 - Documentation