Installing Moonshot Libraries on an Ubuntu 14.04 LTS Client

Page obsolete

This page is obsolete. Please, refer to Install Moonshot Libraries on a Debian/Ubuntu/Raspbian Client instead.

On this page you will find instructions on how to install the Moonshot Libraries on an Ubuntu 14.04 (Trusty Tahr) device to enable its use as a Moonshot Client.

Contents

Assumptions & Prerequisites

This guide assumes you have root access to the Linux device. This is required as new software needs to be installed system-wide.

Ubuntu 14.04 LTS (Trusty Tahr) is not currently an "officially" supported platform, and Moonshot packages for Trusty are not yet available. However, using a mixture of Moonshot packages from Debian 7 and Moonshot daily packages for Ubuntu 13.04 (Raring Ringtail) Trusty can be made to support Moonshot until such a time as official Trusty packages are available.

1. System Preparation

First, there are a few Ubuntu configuration options that need to be set in advance.

1.1. Add the Moonshot Repository

  1. Add the Moonshot Debian Wheezy repository to your system. To do this, run the following command (as root, or using sudo):

    $ echo "deb http://repository.project-moonshot.org/debian-moonshot wheezy main" > /etc/apt/sources.list.d/moonshot.list
  2. Install the Moonshot GPG key:

    $ wget -O - http://repository.project-moonshot.org/key.gpg | apt-key add -
  3. Add the Moonshot Daily PPA Raring repository to your system. To do this, run the following command (as root, or using sudo):

    $ echo "deb http://ppa.launchpad.net/moonshot/daily/ubuntu raring main" > /etc/apt/sources.list.d/moonshot-daily.list
  4. Install the Moonshot daily key:

    $ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys B18F7887
  5. Update the apt cache with the new repository information:

    $ apt-get update

1.2. Configure APT

Since we've added the Debian and Ubuntu Moonshot repositories, we must tell apt that the Ubuntu repository has precedence.

  1. Create a file called /etc/apt/preferences.d/moonshot, with the following content:

    Package: *
    Pin: release o=LP-PPA-moonshot-daily
    Pin-Priority: 1200

1.3. Install Older Packages

Ubuntu 14.04 LTS ships with some some versions of packages that are too new to work with the Ubuntu 13.04 packages that we're temporarily using on 14.04 LTS. So, we need to install the older versions alongside the newer.

  1. Download the following two packages:
    1. lib-xml-security-c16:
      1. (64 bit) http://old-releases.ubuntu.com/ubuntu/pool/universe/x/xml-security-c/libxml-security-c16_1.6.1-7~build0.13.04.1_amd64.deb
      2. (32 bit) http://old-releases.ubuntu.com/ubuntu/pool/universe/x/xml-security-c/libxml-security-c16_1.6.1-7~build0.13.04.1_i386.deb
    2. libxerces-c3.1:
      1. (64 bit) http://old-releases.ubuntu.com/ubuntu/pool/universe/x/xerces-c/libxerces-c3.1_3.1.1-3_amd64.deb
      2. (32 bit) http://old-releases.ubuntu.com/ubuntu/pool/universe/x/xerces-c/libxerces-c3.1_3.1.1-3_i386.deb
  2. Install them:

    $ dpkg -i libxml-security-c16_1.6.1-7~build0.13.04.1_*.deb libxerces-c3.1_3.1.1-3_*.deb
  3. You will receive several errors about dependencies. Install the dependencies:

    $ apt-get install -f

1.4. Moonshot GSS Mechanisms

Create a new file at /usr/etc/gss/mech (you will likely need to create the /usr/etc/gss directory) with the following content:

#
# Sample mechanism glue configuration for EAP GSS mechanism. 
#
# Any encryption type supported by Kerberos can be defined as the
# last element of the OID arc.
#
eap-aes128    1.3.6.1.5.5.15.1.1.17    mech_eap.so
eap-aes256    1.3.6.1.5.5.15.1.1.18    mech_eap.so

In the future we hope for this step to be done automatically on installing the software. For now, however, this is a manual step.

1.5. Install the Moonshot Client libraries

We’re now ready to install the Moonshot software and its required dependencies. Install the software by running the following command:

$ apt-get install moonshot-gss-eap moonshot-ui

2. Next steps

At this point, you now have all of the required Moonshot software on your device, including the Moonshot Identity Selector. Depending on what client application you are using and wish to enable Moonshot authentication for, you job may now be done, or you may need to go and install a Moonshot compatible version of the client software or configure your existing client. Check the section on client compatibility if you are unsure.