[lug] CVSROOT and CVS/Root
Joseph McDonald
joem at uu.net
Tue Oct 22 09:44:13 MDT 2002
Kerberized CVS is also an option which provides encrypted rsh, rcp
and rshell. It doesn't get around having to add principals for each
user or using a group account but it's an option for those that need
secure software repositories. We use it at UUNET and it simply adds
encryption to CVS, and not a lot more. If you're already using krb,
then it's simple.
--joey
Bear Giles said:
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> As an aside, there are perennial projects in progress to add SSL support
> directly to CVS.
>
> There are a several reasons for doing this. They might seem excessive
> to you, but it can limit CVS adoption at some sites.
>
> First, SSH tunnels require setting up an account for each user, or at
> least for a group 'cvsuser' account, on the CVS server. This prevents
> "closed system" semantics where there are no user accounts... and that
> opens up your server for local attacks, not just remote attacks. Of
> course, a direct connection requires you to open another hole in your
> firewall (unless you run the direct SSL connection through an SSL tunnel!).
>
> Second, the user isn't able to verify the identity of the CVS server.
> If the SSH tunnels are set up with host authentication you can usually
> catch attempts to do a man-in-the-middle attack, but there is no
> affirmative confirmation that you're speaking with the expected CVS
> server via a fully protected communications channel. With a server cert
> and client-side checks, you can have much more confidence in the
> identity of the server.
>
> Third, the server isn't able to verify the identity of the CVS client.
> Again, SSH tunnels can be set up to require "RSA" authentication, but
> how many sites actually do this? And require their clients keep their
> keys encrypted? CVS authentication itself is trivially broken - the
> password is stored in what amounts to plaintext, so if anyone can get
> that file they can impersonate that user. With client certs (if
> required), you can have much more confidence in the identity of the
> person grabbing files or commiting changes.
>
> As I said, this is stuff that won't matter to most users. But it's
> critical if you want true accountability - right now it's far too easy
> for somebody with a little bit of knowledge to impersonate another
> person while making changes.
>
> The problem with adding SSL support is that, ironically, CVS already
> uses a STREAMS-like network layer. So does SSL, and the implementations
> can't be intermixed. So while other applications can simply replace the
> socket calls with the corresponding SSL calls (and stuff all of the
> initialization code that the quickie SSL support inevitably overlooks -
> ephemeral keys, sessions, etc.), with CVS it makes more sense to invest
> the effort to marry the two systems. That's a difficult problem, esp.
> when you can't assume that everyone will be able to link in the SSL
> networking library even if they don't actually use SSL.
>
> Bear
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.0.6 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>
> iD8DBQE9tXB6mr0uXf8FxOURAoEfAKDOmUbFBIxAi6DH7L2LH9UMj7E4YQCgq8nP
> IBHtU1fp4aE4nhG4bBpK+FQ=
> =QL5v
> -----END PGP SIGNATURE-----
>
> _______________________________________________
> Web Page: http://lug.boulder.co.us
> Mailing List: http://lists.lug.boulder.co.us/mailman/listinfo/lug
> Join us on IRC: lug.boulder.co.us port=6667 channel=#colug
>
More information about the LUG
mailing list