Subversion sur Jessie

Bonjour à tous

je viens d’installer une vm de Debian jessie destinée à recevoir subversion

N’ayant jamais installé subversion j’ai donc suivi ce tuto à la lettre:

http://denisrosenkranz.com/mise-en-place-dun-serveur-de-subversion-svn-sous-debian-6-avec-authentification-ldap-active-directory/
et
https://www.howtoforge.com/installing-subversion-and-configuring-access-through-different-protocols-on-debian-squeeze

la machine est bien dans le domaine AD.

j’ai essayé avec le fichier svn.conf comme dans le tuto

<VirtualHost *:80>
 
#Config generale du Vhost
    ServerAdmin info@xxx.lan

    ServerName  subversion.xxx.lan
    ServerAlias subversion

    # Droits d'acces au repertoire
 
    <Directory /var/svn/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

<Location /var/svn>
        DAV svn
        SVNParentPath /var/svn
 
        #LDAP authentication
        AuthBasicProvider ldap
        AuthType Basic
        AuthzLDAPAuthoritative on
        AuthLDAPBindDN svnuser@xxx.lan #Un utilisateur capable de se connecter à l'AD)
        AuthLDAPBindPassword xxx #Mot de passe de cet utilisateur
 
        AuthName "Connection au dépôt de versionnage"
 
        AuthLDAPURL "ldap://172.16.0.253:389/CN=Users,DC=xxx,DC=lan?sAMAccountName?sub?(objectClass=*)"
        Require valid-user
        ErrorDocument 404 default
</Location>
ErrorLog /var/log/apache2/svn_error.log
    CustomLog /var/log/apache2/svn_access.log combined
</VirtualHost>

mais j’avais une erreur au restart de apache:

/etc/init.d/apache2 restart[....] Restarting apache2 (via systemctl): apache2.serviceJob for apache2.service failed. See 'systemctl status apache2.service' and 'journalctl -xn' for details.
 failed!

j’ai donc trouvé un autre exemple de fichier que j’ai modifié pour l’adapter au mon reseau.

voila mon fichier de conf /etc/apache2/sites-available/svn.conf

<VirtualHost *:80>
 
#Config generale du Vhost
    ServerAdmin info@xxx.lan

    ServerName  subversion.xxx.lan
    ServerAlias subversion

    # Droits d'acces au repertoire
 
    <Directory /var/svn/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

<Location /var/svn>
    DAV svn
    AuthType basic
    SVNParentPath /var/svn
    SVNListParentPath On
    AuthName "Subversion xxx"
    AuthBasicProvider ldap
    AuthLDAPURL "ldap://172.16.0.253:389/dc=xxx,dc=lan?sAMAccountName" NONE
    AuthLDAPBindDN "CN=svnuser,OU=users,DC=xxx,DC=lan"
    AuthLDAPBindPassword "xxx"
    #Require ldap-group CN=svn,OU=groups,DC=example,DC=com
    Require ldap-group CN=users,OU=groups,DC=xxx,DC=lan
</Location>

    ErrorLog /var/log/apache2/svn_error.log
    CustomLog /var/log/apache2/svn_access.log combined
</VirtualHost>

svnuser est un user créé sous AD avec son mot de passe xxx (le temps du test)
Je n’ai pas touché aux autres fichiers

le restart de apache se passe cette fois ci sans problème.

seulement au lancement de l’interface j’ai le message suivant

svn info http://subversion.xxx.lan
svn: E175002: Unable to connect to a repository at URL 'http://subversion.xxx.lan'
svn: E175002: Unexpected HTTP status 504 'Gateway Timeout' on '/'
svn: E175002: Additional errors:
svn: E175002: Échec de la requête OPTIONS sur '/' : 504 Gateway Timeout

si je vais voir dans /var/log/apache2/svn_error.log, j’ai

[Tue Sep 01 16:03:05.335057 2015] [:warn] [pid 10151:tid 140306901096192] [client 127.0.0.1:46347] [mod_vhost_ldap.c]: lookup failure, retry number #[1], sleeping for [2] seconds
[Tue Sep 01 16:03:07.337249 2015] [:warn] [pid 10151:tid 140306901096192] [client 127.0.0.1:46347] [mod_vhost_ldap.c]: lookup failure, retry number #[2], sleeping for [3] seconds
[Tue Sep 01 16:03:10.340463 2015] [:warn] [pid 10151:tid 140306901096192] [client 127.0.0.1:46347] [mod_vhost_ldap.c]: lookup failure, retry number #[3], sleeping for [5] seconds
[Tue Sep 01 16:03:15.345707 2015] [:warn] [pid 10151:tid 140306901096192] [client 127.0.0.1:46347] [mod_vhost_ldap.c]: lookup failure, retry number #[4], sleeping for [8] seconds
[Tue Sep 01 16:03:23.353946 2015] [:warn] [pid 10151:tid 140306901096192] [client 127.0.0.1:46347] [mod_vhost_ldap.c]: lookup failure, retry number #[5], sleeping for [13] seconds

voila le fichier mod_vhost.ldap.conf

### mod_vhost_ldap depends on mod_ldap ###
### you have to enable mod_ldap as well ###

<IfModule mod_vhost_ldap.c>
    VhostLDAPEnabled on
    VhostLDAPUrl "ldap://127.0.0.1/ou=vhosts,ou=web,dc=localhost"
    VhostLdapBindDN "cn=admin,dc=localhost"
    VhostLDAPBindPassword "changeme"
</IfModule>

je l’ai donc corrigé pour avoir ça

### mod_vhost_ldap depends on mod_ldap ###
### you have to enable mod_ldap as well ###

<IfModule mod_vhost_ldap.c>
    VhostLDAPEnabled on
    VhostLDAPUrl "ldap://172.16.0.253:389/ou=vhosts,ou=web,dc=xxx,dc=lan"
    VhostLdapBindDN "cn=svnuser,dc=xxx,dc=lan"
    VhostLDAPBindPassword "xxx"
</IfModule>

et la au lancement, aprés restart de apache bien sur, j’ai

svn info http://subversion.xxx.lan
svn: E175002: Unable to connect to a repository at URL 'http://subversion.xxx.lan'
svn: E175002: Unexpected HTTP status 500 'Internal Server Error' on '/'
svn: E175002: Additional errors:
svn: E175002: Échec de la requête OPTIONS sur '/' : 500 Internal Server Error

avec le message suivant dans /var/log/apache2/svn_error.log

[Tue Sep 01 16:12:51.279944 2015] [:warn] [pid 10421:tid 140209324807936] [client 127.0.0.1:46375] [mod_vhost_ldap.c] translate: translate failed; virtual host subversion.xxx.lan; URI / [Invalid credentials]

et la je patauge.

info complementaire:

apache2 -v
Server version: Apache/2.4.10 (Debian)
Server built:   Aug  1 2015 20:53:57
svn --version
svn, version 1.8.10 (r1615264)
   compiled Aug  9 2015, 13:48:39 on x86_64-pc-linux-gnu

Copyright (C) 2014 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/

Les modules d'accès à un dépôt (RA) suivants sont disponibles :

* ra_svn : Module d'accès à un dépôt avec le protocole réseau propre de svn.
  - avec authentification Cyrus SASL
  - gère le schéma d'URL 'svn'
* ra_local : Module d'accès à un dépôt sur un disque local.
  - gère le schéma d'URL 'file'
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
  - using serf 1.3.8
  - gère le schéma d'URL 'http'
  - gère le schéma d'URL 'https'
uname -a
Linux subversion 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u3 (2015-08-04) x86_64 GNU/Linux

merci beaucoup pour votre aide

Salut,

[quote=“Minus”]mais j’avais une erreur au restart de apache:

/etc/init.d/apache2 restart[....] Restarting apache2 (via systemctl): apache2.serviceJob for apache2.service failed. See 'systemctl status apache2.service' and 'journalctl -xn' for details. failed!
[/quote]

Depuis Jessie, le répertoire de l’indien se situe en [mono]/var/www/html/<…>[/mono], par défaut.

donc cela veut dire qu’il faut que je mette les depots subversion non pas au niveau de /var/svn mais au niveau de /var/www/html/svn ?

Et, ajuster le fichier [mono]/etc/apache2/sites-available/svn.conf[/mono] en conséquence.

ok merci

je regarde ça demain matin et te tiens au courant

Bonjour

Bon ben ca deconne toujours :013

voila mon fichier svn.conf

<VirtualHost *:80>
 
#Config generale du Vhost
    ServerAdmin info@xxx.lan

    ServerName  subversion.xxx.lan
    ServerAlias subversion

    # Droits d'acces au repertoire
 
    <Directory /var/www/html/svn>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

<Location /var/www/html/svn>
        DAV svn
        SVNParentPath /var/www/html/svn
 
        #LDAP authentication
        AuthBasicProvider ldap
        AuthType Basic
        AuthzLDAPAuthoritative on
        AuthLDAPBindDN svnuser@xxx.lan #Un utilisateur capable de se connecter à l'AD)
        AuthLDAPBindPassword .svnuser! #Mot de passe de cet utilisateur
 
        AuthName "Connection au dépôt de versionnage"
 
        AuthLDAPURL "ldap://172.16.0.253:389/CN=Users,DC=xxx,DC=lan?sAMAccountName?sub?(objectClass=*)"
        Require valid-user
        ErrorDocument 404 default

</Location>
ErrorLog /var/log/apache2/svn_error.log
    CustomLog /var/log/apache2/svn_access.log combined
</VirtualHost>

et donc

/etc/init.d/apache2 restart[....] Restarting apache2 (via systemctl): apache2.serviceJob for apache2.service failed. See 'systemctl status apache2.service' and 'journalctl -xn' for details.
 failed!
journalctl -xn
-- Logs begin at lun. 2015-08-31 18:01:24 CEST, end at mer. 2015-09-02 09:33:01 
sept. 02 09:33:01 subversion apache2[16064]: Starting web server: apache2 failed
sept. 02 09:33:01 subversion apache2[16064]: The apache2 configtest failed. ... 
sept. 02 09:33:01 subversion apache2[16064]: Output of config test was:
sept. 02 09:33:01 subversion apache2[16064]: AH00526: Syntax error on line 25 of
sept. 02 09:33:01 subversion apache2[16064]: Invalid command 'AuthzLDAPAuthorita
sept. 02 09:33:01 subversion apache2[16064]: Action 'configtest' failed.
sept. 02 09:33:01 subversion apache2[16064]: The Apache error log may have more 
sept. 02 09:33:01 subversion systemd[1]: apache2.service: control process exited
sept. 02 09:33:01 subversion systemd[1]: Failed to start LSB: Apache2 web server
-- Subject: L'unité (unit) apache2.service a échoué
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- L'unité (unit) apache2.service a échoué, avec le résultat failed.
sept. 02 09:33:01 subversion systemd[1]: Unit apache2.service entered failed sta

j’ai donc commenté la ligne

#AuthzLDAPAuthoritative on

et obtenu encore ça

/etc/init.d/apache2 restart
[....] Restarting apache2 (via systemctl): apache2.serviceJob for apache2.service failed. See 'systemctl status apache2.service' and 'journalctl -xn' for details.
 failed!
journalctl -xn
-- Logs begin at lun. 2015-08-31 18:01:24 CEST, end at mer. 2015-09-02 09:36:13 
sept. 02 09:36:13 subversion apache2[16121]: Starting web server: apache2 failed
sept. 02 09:36:13 subversion apache2[16121]: The apache2 configtest failed. ... 
sept. 02 09:36:13 subversion apache2[16121]: Output of config test was:
sept. 02 09:36:13 subversion apache2[16121]: AH00526: Syntax error on line 26 of
sept. 02 09:36:13 subversion apache2[16121]: AuthLDAPBindDN takes one argument, 
sept. 02 09:36:13 subversion apache2[16121]: Action 'configtest' failed.
sept. 02 09:36:13 subversion apache2[16121]: The Apache error log may have more 
sept. 02 09:36:13 subversion systemd[1]: apache2.service: control process exited
sept. 02 09:36:13 subversion systemd[1]: Failed to start LSB: Apache2 web server
-- Subject: L'unité (unit) apache2.service a échoué
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- L'unité (unit) apache2.service a échoué, avec le résultat failed.
sept. 02 09:36:13 subversion systemd[1]: Unit apache2.service entered failed sta

j’ai donc commenté les deux lignes:

#AuthLDAPBindDN svnuser@xxx.lan #Un utilisateur capable de se connecter à l'AD)
#AuthLDAPBindPassword xxx #Mot de passe de cet utilisateur

pour enfin avoir:

/etc/init.d/apache2 restart
[ ok ] Restarting apache2 (via systemctl): apache2.service.

mais impossible de ce connecter au serveur:

svn info http://subversion.xxx.lan/svn
svn: E175002: Unable to connect to a repository at URL 'http://subversion.xxx.lan/svn'
svn: E175002: Unexpected HTTP status 500 'Internal Server Error' on '/svn'
svn: E175002: Additional errors:
svn: E175002: Échec de la requête OPTIONS sur '/svn' : 500 Internal Server Error

svn info http://subversion.xxx.lan/
svn: E175002: Unable to connect to a repository at URL 'http://subversion.xxx.lan'
svn: E175002: Unexpected HTTP status 500 'Internal Server Error' on '/'
svn: E175002: Additional errors:
svn: E175002: Échec de la requête OPTIONS sur '/' : 500 Internal Server Error

dans svn_error.log j’ai ce message

[Wed Sep 02 09:43:40.521301 2015] [:warn] [pid 16239:tid 140166106699520] [client 127.0.0.1:46609] [mod_vhost_ldap.c] translate: translate failed; virtual host subversion.xxx.lan; URI /svn [Invalid credentials]

donc je suis parti sur une nouvelle piste celle de

/etc/apache2/mods-available # vhost_ldap.conf

si je met la conf d’origine

### mod_vhost_ldap depends on mod_ldap ###
### you have to enable mod_ldap as well ###

<IfModule mod_vhost_ldap.c>
    VhostLDAPEnabled on
    VhostLDAPUrl "ldap://127.0.0.1/ou=vhosts,ou=web,dc=localhost"
    VhostLdapBindDN "cn=admin,dc=localhost"
    VhostLDAPBindPassword "changeme"
</IfModule>

j’ai

svn info http://subversion.xxx.lan
svn: E175002: Unable to connect to a repository at URL 'http://subversion.xxx.lan'
svn: E175002: Unexpected HTTP status 504 'Gateway Timeout' on '/'
svn: E175002: Additional errors:
svn: E175002: Échec de la requête OPTIONS sur '/' : 504 Gateway Timeout

si je met le fichier comme je l’ai modifié

### mod_vhost_ldap depends on mod_ldap ###
### you have to enable mod_ldap as well ###

<IfModule mod_vhost_ldap.c>
    VhostLDAPEnabled on
    VhostLDAPUrl "ldap://172.16.0.253/ou=vhosts,ou=web,dc=xxx,dc=lan"
    VhostLdapBindDN "cn=svnuser,dc=xxx,dc=lan"
    VhostLDAPBindPassword "xxx"
</IfModule>

j’ai l’erreur

svn info http://subversion.xxx.lan
svn: E175002: Unable to connect to a repository at URL 'http://subversion.xxx.lan'
svn: E175002: Unexpected HTTP status 500 'Internal Server Error' on '/'
svn: E175002: Additional errors:
svn: E175002: Échec de la requête OPTIONS sur '/' : 500 Internal Server Error

J’ai besoin de votre aide merci

Je viens d’essayer en passant par le https pour voir si cela changeait quelquechose

et idem même soucis a la tentative de connexion.

svn info https://subversion.xxx.lan
Erreur de validation du certificat du serveur pour 'https://subversion.xxx.lan:443' :
 - Le certificat n'est pas signé pas une autorité de confiance.
   Valider le certificat manuellement !
Informations du certificat :
 - nom d'hôte : subversion.xxx.lan
 - valide de Mar 18 15:00:19 2011 GMT à Mar 15 15:00:19 2021 GMT
 - signataire : 
 - empreinte : xxx
(R)ejet, acceptation (t)emporaire ou (p)ermanente ? p
svn: E175002: Unable to connect to a repository at URL 'https://subversion.xxx.lan'
svn: E175002: Unexpected HTTP status 500 'Internal Server Error' on '/'
svn: E175002: Additional errors:
svn: E175002: Échec de la requête OPTIONS sur '/' : 500 Internal Server Error

j’ai essayé avec mon autre fichier svn.conf

<VirtualHost *:443>

SSLEngine On
SSLCertificateFile /etc/apache2/ssl/subversion.pem

#Config generale du Vhost
    ServerAdmin info@xxx.lan

    ServerName  subversion.xxx.lan
    ServerAlias subversion

    # Droits d'acces au repertoire

    <Directory /var/www/html/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

<Location />
    DAV svn
    AuthType basic
    SVNParentPath /var/www/html/svn
    SVNListParentPath On
    AuthName "Subversion"
    AuthBasicProvider ldap
    AuthLDAPURL "ldap://172.16.0.120:389/dc=xxx,dc=lan?sAMAccountName" NONE
    AuthLDAPBindDN "CN=svnuser,OU=users,DC=xxx,DC=lan"
    AuthLDAPBindPassword "xxx"
   #Require ldap-group CN=svn,OU=groups,DC=example,DC=com
    Require ldap-group CN=users,OU=groups,DC=xxx,DC=lan
</Location>

    ErrorLog /var/log/apache2/svn_error.log
    CustomLog /var/log/apache2/svn_access.log combined
</VirtualHost>

et voila le résultat :088

/etc/init.d/apache2 restart[ ok ] Restarting apache2 (via systemctl): apache2.service.
[11:09] subversion: /etc/apache2/sites-available # svn info https://subversion.xxx.lan
svn: E175002: Unable to connect to a repository at URL 'https://subversion.xxx.lan'
svn: E175002: Unexpected HTTP status 500 'Internal Server Error' on '/'
svn: E175002: Additional errors:
svn: E175002: Échec de la requête OPTIONS sur '/' : 500 Internal Server Error

:angry-banghead: :angry-banghead:

[quote=“Minus”]svn: E175002: Unexpected HTTP status 500 ‘Internal Server Error’ on '/'
svn: E175002: Additional errors:
svn: E175002: [mono]Échec[/mono] de la [mono]requête[/mono] OPTIONS [mono]sur ‘/’[/mono] : [mono]500 Internal Server Error[/mono][/quote]
Il semblerait que le souci se situe dans la directive [mono][/mono], sauf erreur.

je iens de remplacer la ligne <Location />

par <Location /var/www/html/svn>

et j’ai exactement la même erreur

j’ai même essayé en mettant <Location /var/www/html/svn/>

Je pense que [mono]Subversion[/mono] considère sa racine ([mono]/[/mono]) comme étant le répertoire [mono]/var/www/html/[/mono] par défaut.

[mono]/var/www/html/<…?..>[/mono]

[code]<Location /svn>

(…)

[/code]

Relances apache, suis les logs en direct puis connectes toi.

J’ai donc modifié le location comme tu me l’a indiqué et même message d’erreur

svn info https://subversion.xxx.lan
svn: E175002: Unable to connect to a repository at URL 'https://subversion.xxx.lan'
svn: E175002: Unexpected HTTP status 500 'Internal Server Error' on '/'

svn: E175002: Additional errors:
svn: E175002: Échec de la requête OPTIONS sur '/' : 500 Internal Server Error

voila ce qui est apparu dans le fichier error

[Wed Sep 02 15:00:44.674322 2015] [:warn] [pid 20679:tid 140662259316480] [client 127.0.0.1:53667] [mod_vhost_ldap.c] translate: translate failed; virtual host subversion.xxx.lan; URI / [Invalid credentials]

je suis donc allé voir mon fichier mod_vhost_ldap.conf, mais il me semble bon

### mod_vhost_ldap depends on mod_ldap ###
### you have to enable mod_ldap as well ###

<IfModule mod_vhost_ldap.c>
    VhostLDAPEnabled on
    VhostLDAPUrl "ldap://172.16.0.120:389/ou=vhosts,ou=web,dc=xxx,dc=lan"
    VhostLdapBindDN "cn=svnuser,dc=xxx,dc=lan"
    VhostLDAPBindPassword "xxx"
</IfModule>

svp, personne n’a d’idée?

Bonjour

Bon je suis toujours sur ma VM subversion

J’ai donc remis un debian tout propre, abandonné la liaison apache/ad pour mettre en place une authentification locale tout simplement

La partie apache fonctionne parfaitement puisque via mon navigateur je peux voir tout mes dossiers de repo et leur contenu

par contre c’est la partie subversion qui deconne puisque dés que je vais une requete je n’ai pas de retour

svn info http://subversion.xxx.lan/cestuntest
Redirection vers l'URL 'http://subversion.xxx.lan/cestuntest' :
Redirection vers l'URL 'http://subversion.xxx.lan/cestuntest' :
svn: E195019: Cycle de redirection détecté pour l'URL 'http://subversion.xxx.lan/cestuntest'

en cherchant sur le net, j’ai trouvé ça http://stackoverflow.com/questions/18474825/what-is-the-cause-of-svn-e195019-redirect-cycle-detected-for-url

bon ok mon repertoire svn etait dans /var/www/html/svn

j’ai donc tout changé pour le mettre dans /var/svn, modifié mon apache2.conf et svn.conf pour que cela fonctionne et en effet j’ai accés à mon listing de dossier via l’adresse http://subversion.xxx.lan

mais toujours l’erreur svn info http://subversion.xxx.lan/cestuntest Redirection vers l'URL 'http://subversion.xxx.lan/cestuntest' : Redirection vers l'URL 'http://subversion.xxx.lan/cestuntest' : svn: E195019: Cycle de redirection détecté pour l'URL 'http://subversion.xxx.lan/cestuntest'

:angry-banghead: :angry-banghead:

quelqu’un connait subversion et peut m’aider?

punaise c’est bon ca fonctionne

il faut juste creer dans le fichier conf de la vhost, une vhost supp par repo

Bref si vous avez 15 repo il faut ajouter à la mano les 15 vhost dans le fichier conf

Et dire que ce truc va disparaitre dans 3 à 4 mois car on va passer sur Git :12