Add 2015 kAFS slides to page.
[openafs-wiki.git] / GettingAuthenticated.mdwn
1 This is a rough outline.
2
3 There are basically three options with several variants
4
5 - [[KaServer]] -- the standard option to comes with IBMAFS, implements [[KerberosIV]] with some custom features.
6 - [[KerberosIV]] -- the original MIT implementation, and [[Krb4KTH]], an export version of [[KerberosIVMIT]] (aka "bones"), but with encryption support put back in by the fine folks at KTH.
7 - [[KerberosV]] -- version five of this protocol has numerous improvements over version four and is available from many sources: MIT, DCE, Microsoft (aka [[ActiveDirectory]]) and [[HeimdalKTH]].
8
9 The consensus these days is to use [[KerberosV]], even though lacking native support for V5, AFS still needs various conversion and migration tools. See [[KerberosAFSInstall]] for (what will be) a step-by-step procedure to install a new [[OpenAFS]] cell where authentication is handled by a [[KerberosV]] realm.
10
11 For [[KerberosV]], there are two main open-source solutions for Unix: [[KerberosVMIT]] and [[HeimdalKTH]]. A quick comparison of the two:
12
13 [[KerberosVMIT]] Advantages:
14
15 - Excellent documentation
16 - The "reference" implementation everyone else uses as a baseline
17 - Great library support. Third-party software compiles easily with the libraries MIT provides.
18
19 [[KerberosVMIT]] Disadvantages:
20
21 - Poor integration with AFS. Requires the AFS-Kerberos5 migration kit to work with AFS.
22 - Export issues
23
24 [[HeimdalKTH]] Advantages:
25
26 - Excellent integration with AFS.
27
28 [[HeimdalKTH]] Disadvantages:
29
30 - Client API is just different enough from MIT to keep most applications from compiling out of the box.
31
32 Note that you can mix-and-match. Currently I'm using a [[HeimdalKTH]] KDC with [[KerberosVMIT]] clients. If you take this route the one big thing to watch out for is administrative tools - kadmin, kpasswd, and such.
33
34 Some other topics that should be explained.
35
36 - SSH -- There are two issues. First is mutually authenticating you and the SSH server to each other using Kerberos. See [[KerberosV]] for a link to patches to kerberize [[OpenSSH]]. Second is passing local AFS authentication to the remote shell (in this case an AFS Client) in the form of AFS service tickets (tokens).
37   - these instructions from [[CharlesClancy]] for building openssh might be useful <http://lists.openafs.org/pipermail/openafs-info/2002-January/002846.html>
38   - another perspective from Owen LeBlanc <http://lists.openafs.org/pipermail/openafs-info/2002-January/002856.html>
39   - [[SSHKeyAuthentication]]
40 - How to choose between [[KaServer]], [[KerberosVMIT]], [[HeimdalKTH]] and [[ActiveDirectory]].
41 - [[StringToKey]] issues.
42 - Authenticating applications that need AFS access and can't depend upon human interaction to enter a password.
43 - [[ProcessAuthenticationGroups]] (aka PAGs).
44 - [[KeyVersonNumber]] (aka kvno) synchronization.
45 - [[AccessControlLists]] (aka ACLs).
46 - [[IPAccessControl]] -- how to put IP addrs on ACLs
47 - How to configure various authentication servers to issue tickets (tokens) with lifetimes longer than 25 hours.
48 - [[IntegrationWithNIS]]. See the [[GeneralFAQ#1_05_d_Improved_security]], but basically you use NIS vis NSS for names of users and Kerberos via PAM for authentication. There is still the question of integrating group management.
49 - [[OtherGroupServers]] are not well integrated as far as I know. The big ones are [[ActiveDirectory]] and [[NIS]] and maybe some LDAP systems. While one could imagine wrapping a [[PtServer]] interface around such a thing, there are probably some features that would make seamless integration difficult. Has anyone seriously looked into this?
50   - In a 10-Oct-2002 message from Derrick Brashear: <q>...something to allow LDAP queries of the PTS database... /afs/andrew.cmu.edu/usr/shadow/back-pts.tar.gz / The README inside explains how it works.</q>
51
52 -- Ted Anderson - 22-24, 29 Jan 2002<br /> -- Jason Garman - 30 Jan 2002<br /> -- Ted Anderson - 06-07 Feb, 11 Oct 2002<br /> -- Ted Anderson - 27 Feb 2003<br />
53
54 ----
55
56 See [[AuthCommands]].