da84a2e4448868813eda1f9199d1cc2abfa77368
[devwiki.git] / prepare.mdwn
1 # Preparing to use Moonshot
2
3 This set of instructions assumes you are using system Kerberos libraries; some things will be relative to the installation prefix of Kerberos if you are using Kerberos built from source.
4
5
6 First, look at the mech file in the mech_eap directory of the source tree. Copy this file to /etc/gss/mech (or on Debian/Ubuntu systems /usr/etc/gss/mech). The Debian path is a bug that will be fixed; this page will be updated after.
7
8 Then, create a symlink from /usr/lib/gss/mech_eap.so to the installed mech_eap.so. Are you getting the feeling you're running down some untested code paths here yet?
9
10 On Debian systems if you are using the system freeradius libraries make sure /usr/lib/freeradius is in your default linker search path. Perhaps edit /etc/ld.so.conf and run ldconfig. Yes, that too is a bug. If you are not using system freeradius libraries you probably have to do something similar.
11
12 Create a valid freeradius dictionary in $prefix/etc/radb/dictionary. This may be a bug as well.
13
14 # Configuring Kerberos
15
16 Configure Kerberos, you ask? But I'm not using Kerberos!
17 True, but the Kerberos library is kind of self-centered at the moment and doesn't believe anyone would ever want to not use Kerberos.
18 So, it requires that servers be able to set up Kerberos even if they never use it.
19 Please see also a bug.
20 So you want something like
21
22 Contents of /etc/krb5.conf:
23
24     [libdefaults]
25         default_realm = YOUR_DOMAIN_ALL_CAPS
26
27 Then run ktutil
28
29     addprinc --password -p host/hostname.your_domain@YOUR_DOMAIN_ALL_CAPS -k 1 -e aes256-cts
30
31 Enter a password of your choice
32
33    wkt /etc/krb5.keytab
34     quit
35
36 Then <code>chmod a+r /etc/krb5.keytab</code>. Note that would be a very bad thing to do if you actually were using Kerberos. It may still be a bad thing to do if you have services enabled that can potentially use Kerberos.
37
38 # Configuring libradsec
39
40         cat > $prefix/etc/radsec.conf << EOF
41         config gss-eap {
42             type = "UDP"
43             server {
44                 hostname = "127.0.0.1"
45                 service = "1820"
46                 secret = "$secret"
47             }
48         }
49         EOF
50
51 $secret is the secret you share with the radius server, i.e. the "secret" entry in FreeRADIUS configuration "client" clause.
52
53
54 Todo:
55 * Set up RADIUS
56