I don't have the strongest UNIX background, so I'm a little concerned about getting SVN set up correctly and securely for remote access by multiple shell users. I've done a whole bunch of reading and googling, and this is what I came up with... Is this list of steps that one needs to take (after simply getting the software installed) correct and complete?
1) Create an "svn" group for all SVN users:
$ sudo groupadd svn
$ sudo useradd -g svn svn $ passwd svn
(This doesn't have to be done for the svn command? this seems to imply that it doesn't, but I don't understand why not.)
a) move binaries to another location:
$ sudo mv /usr/bin/svnserve /usr/bin/svnserve.real $ sudo mv /usr/bin/svnadmin /usr/bin/svnadmin.real $ sudo mv /usr/bin/svnlook /usr/bin/svnlook.real
#!/bin/sh umask 002 /usr/bin/svnserve.real "$@"
#!/bin/sh umask 002 /usr/bin/svnadmin.real "$@"
#!/bin/sh umask 002 /usr/bin/svnlook.real "$@"
$ sudo chmod +x /usr/bin/svnserve /usr/bin/svnadmin /usr/bin/svnlook
(/var/svn is just one possible place to put it, right? what's a recommended location?)
$ sudo svnadmin create /var/svn
(Presumably if you create the repository in an area that isn't owned by root, you can just run svnadmin as the svn user instead of using sudo and reassigning ownership, right?)
$ sudo chown -R svn:svn /var/svn
$ sudo pico /etc/group
ummm.... ask your friendly neighborhood sysadmin?
How do I get SVN to recognize the hostname? Can I just use any host whose A record resolves to any IP assigned to the box?
From remote machine:
$ svn list svn+ssh://HOSTNAME/var/svn/projectname
(Once I get this worked out, maybe I'll write it up as a "for dummies" -- would anyone find that useful?.)