Hi all,

I appreciate all the tips and info I've received from my server config 
questions.  It looks like I need to do much more to secure my server before 
tackling he SVN portion.  I'm going to take a step back and do that first.  If 
necessary I'll (re)post once that's complete.

Thanks!
Scott



On Aug 19, 2013, at 12:13 PM, Scott Frankel wrote:

> 
> Hi all,
> 
> Thanks for the replies!  Please see below for additional comments.
> 
> 
> On Aug 19, 2013, at 9:42 AM, David Chapman wrote:
> 
>> On 8/19/2013 9:07 AM, Scott Frankel wrote:
>>> Hi all,
>>> 
>>> I'm new to SVN server configuration and find myself setting up a CentOS 6.4 
>>> server with svn version 1.6.1, following the red-bean book.
>>> 
>>> I'm having difficulty with authorization &/or authentication:  my repo 
>>> appears to be accessible by anyone in spite of requiring "valid-user" and 
>>> specifying digest authentication.  I believe this because 1) I can download 
>>> a full working copy of the repo to a 3rd-party logged into a foreign 
>>> computer, and 2) I have dozens of entries in apache's logfiles, like these 
>>> from this morning, *prior* to any known/legitimate access to my repos today:
>> 
>> Step 1:  Take the real repo offline until you get the security problems 
>> resolved.  Every IP address on the Internet is scanned every single day, and 
>> your repo is vulnerable right now.
>> Step 2:  Run experiments with a dummy repo to resolve the security problems.
>> 
>> Don't ever run security experiments with production data.  Put production 
>> data online only after you know that all security problems have been 
>> resolved.
> 
> Good points!  My repo currently being downloaded by whomever is a testProj 
> with absolutely nothing of value in it.
> 
> 
>>> svn_logfile:
>>> [19/Aug/2013:00:46:32 +0000] - checkout-or-export / r1 depth=infinity
>> 
>> This does not look good at all.  It's quite possible that someone else has 
>> downloaded your repository.  The access_log file may tell you the IP address 
>> from which the request was made; with luck it's the one you were 
>> experimenting with and the time stamp matches your access.
>> 
>>> access_log
>>> 93.174.93.213 - - [19/Aug/2013:07:23:50 +0000] "GET 
>>> /w00tw00t.at.blackhats.romanian.anti-sec:) HTTP/1.1" 404 319 "-" "ZmEu"
>> 
>> If you watch access_log over time, as I do, you will see these sorts of 
>> probes constantly.  Too many to list, they are meant to check for known 
>> vulnerabilities in older versions of Apache or tools installed (SQL 
>> administration, PHP administration, etc.).  These will never go away.  Get 
>> used to them.  They should all fail; if not then you have other security 
>> problems to fix.
> 
> OK.  Getting used to common log entries is important.
> 
> 
>>> error_log
>>> [Mon Aug 19 07:23:51 2013] [error] [client 93.174.93.213] File does not 
>>> exist: /var/www/html/MyAdmin
>>> 
>>> 
>>> This doesn't look good at all.  My Location directive follows below.  The 
>>> /etc/svn-auth.htdigest exists and appears to be valid.  My goal is to setup 
>>> the repo, serve it via Apache, provide access to only a small number of 
>>> people that I approve, use cmd-line svn and do so securely.
>> 
>> These are standard goals.
> 
> Good.  I mention them in hopes it whittles-down in advance any suggestions 
> you might have.  eg: the red-bean book has quite a lot to say about tunneling 
> svnserve, which is not germane to my setup.
> 
> 
>>> This is my first brush with Apache, OpenSSL, and general server config.  
>>> Thanks in advance for your suggestions!  BTW, I'm not subscribed and would 
>>> appreciate being cc'd on any replies.
>>> Scott
>>> 
>>> 
>>> 
>>> <Location /svn>
>>> DAV svn
>>> SVNParentPath /var/svn
>>> 
>>> # Authentication: Digest
>>> AuthName "Subversion repository"
>>> AuthType Digest
>>> AuthUserFile /etc/svn-auth.htdigest
>>> 
>>> # Authorization: Authenticated users only
>>> Require valid-user
>>> </Location>
>>> 
>>> 
>> 
>> How many repositories do you have?  You shouldn't use SVNParentPath if you 
>> have only one repository; use SVNPath.  I don't know if that is the direct 
>> cause of your problem, but you should fix it.
> 
> I chose to use SVNParentPath on purpose.  As soon as I have a secure, working 
> server config, I'll be hosting multiple repos.  Daniel and Thomas, thanks for 
> your suggestions.
> 
> 
>> You can also try working with AuthType Basic, creating passwords with 
>> /usr/sbin/htpasswd, until you figure things out.  I have more experience 
>> with that than AuthType Digest, so I can't help you there.
> 
> I'll try that to see what I discover; but ultimately my research so far 
> points to Digest mode being more secure.
> 
> Thanks for the suggestions!
> Scott
> 
> 
> 
> 
>> 
>> -- 
>>  David Chapman      dcchap...@acm.org
>>  Chapman Consulting -- San Jose, CA
>>  Software Development Done Right.
>>  www.chapman-consulting-sj.com
>> 
> 

Reply via email to