Installazione svn su ubuntu#
- creazione del gruppo subversion, al quale associare gli utenti desiderati
- sudo apt-get install subversion
- sudo mkdir /opt/svn/repository
- sudo chown -R utente:subversion /opt/svn/*
- sudo svnadmin create /opt/svn/repository/
- sudo vi /opt/svn/repository/conf/svnserve.conf
- sudo vi /opt/svn/repository/conf/passwd
- sudo svnserve -d –foreground -r /opt/svn/repository/\
apt-get install apache2 subversion libapache2-svn ssl-certDopo aver installato i pacchetti si deve abilitare il modulo ssl.
a2enmod sslA questo punto si configura Apache per accettare le richieste sulla porta 443 (HTTPS). Per fare ciò è sufficiente aggiungere al file /etc/apache2/ports.conf la riga:
Listen 443\\Fatto questo si deve creare il cerficato per SSL. Solitamente si crea nella directory /etc/apache2/ssl:
mkdir /etc/apache2/ssl make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem chmod 600 /etc/apache2/ssl/apache.pem
Quindi si crea la configurazione per il server virtuale. Per farlo basta copiare il file di default e apportare qualche piccola modifica:
cp /etc/apache2/sites-available/default /etc/apache2/sites-available/default-sslBisogna sostuire la riga:
NameVirtualHost *
con:
NameVirtualHost *:443
e poi la riga:
con:
infine, prima di:
si aggiunge:
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.pem
SSLProtocol all
SSLCipherSuite HIGH:MEDIUM
Ora è possibile abilitare il virtual server in ascolto sulla porta 443 con il comando:
a2ensite default-ssl
Ora è necessario configurare il repository SVN. Per farlo bisogna innanzitutto editare il file /etc/apache2/mods-available/dav_svn.conf che dovrà contenere qualcosa del tipo:
<Location /svn>
DAV svn
SVNPath /var/lib/svn/NOME_REPOSITORY
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
Il file /etc/apache2/dav_svn.passwd si crea con il comando:
htpasswd -c /etc/apache2/dav_svn.passwd NOMEUTENTE
I comandi necessari alla creazione del repository vero e proprio sono:
mkdir /var/lib/svn svnadmin create /var/lib/svn/NOME_REPOSITORY chown -R www-data:www-data /var/lib/svn chmod -R g+ws /var/lib/svn