Kerberos

There are three basic steps to configuring Kerberos:

1. Install Kerberos so that you can authenticate using it. If in doubt, look for the program or package that gives you the kinit command.
  • OS X:
  • Ubuntu: $ sudo apt-get install krb5-user
  • Fedora: $ sudo dnf install krb5-workstation
2. Edit your Kerberos configuration file krb5.conf (most likely /etc/krb5.conf) for use with Fermilab's Kerberos system. This is most easily done by downloading a custom-configured krb5.conf from directly from Fermi: 3. You might need to Kerberize your SSH installation so that you can connect to the SVN server at Fermi. In your SSH config file (most likely ~/.ssh/config, which you may have to create, or /etc/ssh/ssh_config), add

  host *.fnal.gov
   GSSAPIAuthentication yes
   GSSAPIDelegateCredentials yes
  host cdcvs.fnal.gov
   ForwardX11 = no
   # ForwardAgent = yes # only if you're using ssh keys, and not kerberos
   GSSAPIAuthentication yes
   GSSAPIDelegateCredentials yes

To test your setup, first run the kinit command. Then,:

ssh p-quarknet@cdcvs.fnal.gov echo hi

If things are working right, you should get the response

Only 'lscvs' and 'cvs' commands are allowed

This doesn't necessarily indicate everything is perfect with your SVN access - in particular, it will work even if your SSH config isn't right - but it's a good start.

When you run kinit and enter your Kerberos password, the Fermilab Kerberos system authenticates you and issues your computer a ticket verifying this authentication. It's usually good for 24 hours, but you can check using the klist command. As long as you have a valid ticket, you'll be able to communicate freely with the SVN repository via the svn+ssh:// protocol.

Once you think everything is in place (including your ticket!), try running

$ svn co svn+ssh://p-quarknet@cdcvs.fnal.gov/cvs/projects/quarknet/branches/4.0-ND-dev

This should checkout (co) the 4.0-ND-dev branch to your current working directory.

If it doesn't, these links have information that might help:

If you're a Fermilab User, you can also contact the Service Desk for assistance in setting up Kerberos.

Ubuntu 16

/etc/krb5.conf doesn't exist by default, nor anything /etc/krb*.

package krb5-user is what provides the kinit and klist commands.
$ sudo apt-get install krb5-user

Fedora 23

Several Kerberos packages came preinstalled, including
pam_krb5.x86_64      
sssd-krb5.x86_64 
sssd-krb5-common.x86_64

along with some libraries and the /etc/krb5.conf configuration file. To use Kerberos as a client, though, you'll need the krb5-workstation package:
$ sudo dnf install krb5-workstation

This is what gives you the kinit and klist commands you'll need.

After putting Fermilab's krb5.conf file in place (see the link above), you'll also need to amend (or create) your own SSH config file at ~/.ssh/config

-- Main.JoelG - 2016-10-07

Comments

 
Topic revision: r1 - 2016-10-07, JoelG
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback