CVS and Kerberos authentication: Howto


The Concurrent Versioning System CVSis an open-source version control system that keeps track of all work and all changes in a set of files, typically the implementation of a software project, and allows several (potentially widely-separated) developers to collaborate.

CVS users can authenticate to the CVS server using gssapi/Kerberos5. Most linux/BSD distributions, however, do not include CVS binaries with Kerberos5 support. This is a howto for compiling, installing and using cvs with Kerberos authentication.


Build and install

You need to follow these simple steps :

  ./configure --with-gssapi=/usr/heimdal --enable-encryption
  make
  make install

Setup and use


Setup the cvs server

 (on the KDC)
 kadmind -l add cvs/your.cvs.host@YOUR-REALM
 (on the KDC)
 kadmind -l ext_keytab --keytab=/tmp/keytab-cvs
 (on the KDC)
 scp /tmp/keytab-cvs root@your.cvs.host:/tmp
 ktutil copy /tmp/keytab-cvs /etc/krb5.keytab
  cvspserver  stream  tcp  nowait  root  /usr/bin/cvs cvs --allow-root=/storage/cvsroot pserver

Change /storage/cvsroot to the path of your own CVSROOT


Setup the client side

  apt-get install heimdal-clients 
  alias kvs="cvs -d :gserver:$USER@your.cvs.host:/storage/cvsroot"
  kinit 
  kvs co -c

Pre-compiled binaries (old and may not work)

FreeBSD Download
Linux Download

Both binaries require the gssapi to be insalled in your system, for linux, you need to type

  apt-get install libgssapi4-heimdal




Labels: , , , Wireless Internet Security Coding Network Monitoring