Project

General

Profile

Can't auth to svn

Added by Riccardo Pedrielli over 12 years ago

Here's my setup:

Ubuntu Server 11.04
Apache 2.2.17
MySQL 5.1.54

RAILS_ENV=production /usr/share/redmine/script/about

About your application's environment
Ruby version              1.8.7 (i686-linux)
RubyGems version          1.3.7
Rack version              1.1
Rails version             2.3.11
Active Record version     2.3.11
Active Resource version   2.3.11
Action Mailer version     2.3.11
Active Support version    2.3.11
Edge Rails revision       unknown
Application root          /usr/share/redmine
Environment               production
Database adapter          mysql
Database schema version   20110511000000

/etc/apache2/sites-available/default

<VirtualHost *:80>
        DocumentRoot /mnt/data/vortex/Dev/Web
        ErrorLog ${APACHE_LOG_DIR}/apache_error.log
        CustomLog ${APACHE_LOG_DIR}/apache_access.log combined
</VirtualHost>

/etc/apache2/sites-available/redmine

DocumentRoot /mnt/data/vortex/Dev/Web/redmine

PassengerDefaultUser www-data
RailsEnv production
RailsBaseURI /redmine

ErrorLog ${APACHE_LOG_DIR}/redmine_error.log
CustomLog ${APACHE_LOG_DIR}/redmine_access.log combined

/etc/apache2/conf.d/redmine-svn.conf

PerlLoadModule Apache::Authn::Redmine
<Location /svn>
        DAV svn
        SVNParentPath "/mnt/data/svn" 

        AuthType Basic
        AuthName Redmine
        Require valid-user

        PerlAccessHandler Apache::Authn::Redmine::access_handler
        PerlAuthenHandler Apache::Authn::Redmine::authen_handler

        RedmineDSN "DBI:mysql:database=redmine_default;host=localhost" 

        RedmineDbUser "redmine" 
        RedmineDbPass "***" 
</Location>

/etc/cron.d/redmine

*/10 * * * * root ruby /usr/share/redmine/extra/svn/reposman.rb --redmine localhost/redmine --svn-dir /mnt/data/svn --owner www-data --url file:///mnt/data/svn --key=***

Everything in redmine is working fine, the repositories get created by reposman and can be browsed from their project page.
The problem arises when i try to access a svn repo via a remote pc.
If i type svn ls http://server-ip/svn/prj it shows me the repo content without asking for login.
With svn mkdir http://server-ip/svn/prj/dir instead it asks for password but as i enter it, I get prompted for login again. After the third try i get the following error:

svn: MKACTIVITY di '/svn/test1/!svn/act/25265483-dc10-4e3b-a7a5-a2e5bb84486f': authorization failed: Could not authenticate to server: rejected Basic challenge (http://192.168.1.201)

I was expecting for authentication on both situations (and of course that authentication works).
I also checked the sessions on MySQL and I can't see any for the user 'redmine' when i try to access the repository, while I see a session when reposman.rb do its work, so it seems something is not configured properly for remote svn access, maybe in /etc/apache2/conf.d/redmine-svn.conf?

Does someone knows how to fix my problem?

Thank you


Replies (5)

RE: Can't auth to svn - Added by Vincent Weber over 12 years ago

Hi,
Did you do this ?
You first need to copy or link Redmine.pm to /usr/lib/perl5/Apache/Redmine.pm

RE: Can't auth to svn - Added by Riccardo Pedrielli over 12 years ago

Yes I did, without it Apache would not start, complaining for the missing module.

RE: Can't auth to svn - Added by Vincent Weber over 12 years ago

And is it a new install of Redmine or an old one ?

RE: Can't auth to svn - Added by Riccardo Pedrielli over 12 years ago

A new install.
I've experience with Apache and MySQL but I'm totally new to Redmine and Ruby applications in general.

RE: Can't auth to svn - Added by Trung Huynh over 12 years ago

Having same issue.
installation following this guide :

PerlLoadModule Redmine
<Location /svn>
    DAV svn
    SVNParentPath "/opt/svn" 
    AuthType Basic
    AuthName "Redmine SVN Repository" 
    Require valid-user

    PerlAccessHandler Apache::Authn::Redmine::access_handler
    PerlAuthenHandler Apache::Authn::Redmine::authen_handler

    RedmineDSN "DBI:mysql:database=redmine;host=localhost" 

    RedmineDbUser "redmine" 
    RedmineDbPass "****" 
</Location>

    (1-5/5)