WOW, i'll try out as soon as i have the server back :-) <br><br>/thanks <br>adrian <br><br><div><span class="gmail_quote">2007/10/3, Thibault Genessay <<a href="mailto:tibogens@gmail.com">tibogens@gmail.com</a>>:
</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi Adrian<br><br>Here's how I installed and configured apache for svn + dav + ssl on our SVN server. It has not been hacked so far, but who knows, my configuration might also be breakable. I'm not running svnserve at all, and got no problem accessing my repo from tortoise svn on windows, and the command line svn on linux.
<br><br>I use a Debian 4 box. The paths may change for another linux distribution but I guess the method remains the same. This tuto assumes that your box's URL is '<a href="http://mybox.osg.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">

mybox.osg.com</a>
'<br><br>1) install apache2 and openssl if not already done. Also, install the SVN package for apache2 (on debian it is 'libapache2-svn')<br>2) make sure mod_dav and auth_basic modules are activated by looking into /etc/apache2/mods-enabled (if a symlink is present, the module is activated). By default basic_auth is. Use 'a2enmod' to activate the modules 'dav' and 'dav_svn'.
<br>3) set up a virtual host for your HTTPS server. You can use the following file as a replacement for '/etc/apache2/sites-available/default'<br><br>NameVirtualHost *:443<br><VirtualHost *:443><br>        ServerAdmin 
<a href="mailto:webmaster@osg.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">webmaster@osg.com</a><br><br>        SSLEngine on<br>        SSLCertificateFile /etc/apache2/ssl/server.crt<br>        SSLCertificateKeyFile /etc/apache2/ssl/server.pem
<br><br>        ServerName 
<a href="http://mybox.osg.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">mybox.osg.com</a><br><br>        DocumentRoot /var/www/mysite/<br><br>        <Directory /><br>                AuthType Basic
<br>                Require valid-user<br>                AuthName "My site"
<br>                AuthUserFile /etc/apache2/mysite.pwd<br>                Options FollowSymLinks<br>                AllowOverride None<br>        </Directory><br><br>        # Subversion<br>        <Location /svn>
<br>                DAV svn<br>                SVNPath /var/svn/projects<br>                AuthType Basic<br>                AuthName "Subversion repository"<br>                AuthUserFile /etc/apache2/mysite-
svn.pwd<br>                Require valid-user<br>        </Location><br>        ErrorLog /var/log/apache2/error.log<br><br>        # Possible values include: debug, info, notice, warn, error, crit,<br>        # alert, emerg.
<br>        LogLevel warn<br><br>        CustomLog /var/log/apache2/access.log combined<br>        ServerSignature Off<br><br></VirtualHost><br><br>As you can see, we've assumed that several files and directories exist:
<br>- the website itself, located in /var/www/mysite/ (does not really *need* to exist, if you only need subversion)<br>- the svn repository, located in /var/svn/projects<br>- the /etc/apache2/ssl/server.crt and /etc/apache2/ssl/server.pem files, which constitute the SSL certificate
<br>- /etc/apache2/mysite.pwd and /etc/apache2/mysite-svn.pwd. Those are apache password files created with htpasswd. If the users that can access the web page are the same than the users that can use SVN, you can use the same file.
<br><br>4) now create a self-signed RSA certificate (of course, if you have your own signed certificate, use it). This procedure is a very brief summary of what can be found on <a href="http://www.akadia.com/services/ssh_test_certificate.html" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">


http://www.akadia.com/services/ssh_test_certificate.html</a><br><br>cd /tmp<br># Create a private key<br>openssl genrsa -des3 -out server.key 1024<br># Create a sign request<br>openssl req -new -key server.key -out server.csr


<br># Remove the password from the private key so that we don't type it each time apache starts<br>cp server.key <a href="http://server.key.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">

server.key.org</a><br>
               openssl rsa -in <a href="http://server.key.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">server.key.org</a> -out server.key<br># Sign the certificate using the request<br>openssl x509 -req -days 365 -in 
server.csr -signkey server.key -out
              server.crt<br># Install the stuff<br>mkdir /etc/apache2/ssl<br>cp server.crt server.pem /etc/apache/ssl<br>chmod 400 /etc/apache2/ssl/*<br><br>5) Populate your HTTPS password file(s) by using 'htpasswd'. 
E.g. if you want 'bobby' and 'scotty' to access your repo, then you can do<br>htpasswd -c /etc/apache2/mysite-svn.pwd bobby<br>htpasswd /etc/apache2/mysite-svn.pwd scotty<br><br>6) make sure that your various passwords and certificates files are only readable by root
<br>
<br>7) Restart apache and you're done<br><br>I certainly have forgotten something so it won't work "as is" - it never does - but you've got the plan<br><br>Note that this configuration allows for a very simple access scheme: the persons listed in your 
mysite-svn.pwd will be given read-write access. So the access is all or nothing. This might not be sufficient for your needs. If you need finer grained access control, have a look at the AuthzSVNAccessFile directive, e.g
. adding
<br>AuthzSVNAccessFile /etc/apache2/dav_svn.authz<br>in your <Location /svn> section will allow you to configure the r/w accesses with the dav_svn.authz file.<br><br>Hope this helps !<br><br>Cheers<br><span class="sg">
<br>Thibault<br>
<br></span><div><div><span class="e" id="q_11565d53df35577c_3"><span class="gmail_quote">On 10/2/07, <b class="gmail_sendername">
Adrian Egli</b> <<a href="mailto:3dhelp@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">3dhelp@gmail.com</a>> wrote:</span></span></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div><span class="e" id="q_11565d53df35577c_5">

hi <br><br>we got yesterday night an really bad attack on our svn server. it's runs under linux, and i am not a linux expert. so i would like to <br>run svn in an appache, and only if i work with it, the svn server should be executed. is there out an expert who can help me 
<br>with an step by step manual. <br><br>i used just the svnserve and may i did a huge misstake open the firewall :-( <br><br>many thanks <br><br>/adegli<br clear="all"><br>-- <br>********************************************
<br><span>Adrian Egli
</span><br></span></div>_______________________________________________<span class="q"><br>osg-users mailing list<br><a href="mailto:osg-users@lists.openscenegraph.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
osg-users@lists.openscenegraph.org
</a><br><a href="http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
</a><br><br></span></blockquote></div><br>
<br>_______________________________________________<br>osg-users mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:osg-users@lists.openscenegraph.org">osg-users@lists.openscenegraph.org
</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org" target="_blank">http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
</a><br><br></blockquote></div><br><br clear="all"><br>-- <br>********************************************<br>Adrian Egli