1
0
mirror of https://github.com/Yubico/yubico-pam.git synced 2024-11-29 00:24:11 +01:00
Yubico Pluggable Authentication Module (PAM)
Go to file
2009-05-02 19:35:45 +00:00
build-aux Create m4/ and build-aux/ and use them. 2008-06-25 13:20:38 +00:00
m4 Use libyubikey-client instead of curl directly. 2008-06-25 13:40:19 +00:00
configure.in Bump versions. 2009-01-13 09:13:50 +00:00
COPYING Import from private CVS repository. 2008-01-11 12:41:21 +00:00
Makefile.am Fix release target. 2008-09-15 14:32:28 +00:00
NEWS Bump versions. 2009-01-13 09:13:50 +00:00
pam_yubico.c Changes for Two Factor Authentication using FreeRADIUS and Yubico YMS 2009-05-02 18:14:10 +00:00
README Add new parameter 'url' to specify the server template URL. 2008-09-15 14:25:14 +00:00
test.c Import from private CVS repository. 2008-01-11 12:41:21 +00:00
Yubico_PAM_Module_Configuration_for_FreeRADIUS_on_Linux_Platform_V1.doc Adding PAM configuration and test setup guide for RADIUS_on_Premise branch 2009-05-02 19:35:45 +00:00

#summary Installation and configuration of the Yubico PAM module
#labels Featured,Phase-Deploy

= Yubico PAM module =

The Yubico PAM module provides an easy way to integrate the Yubikey
into your existing user authentication infrastructure.  PAM is used by
GNU/Linux, Solaris and Mac OS X for user authentication, and by other
specialized applications such as NCSA !MyProxy.

== Status and Roadmap ==

The module is working for single-user systems.

Several items have been identified that needs to be implemented before
it can reach production quality:

  * Multi-user mappings from Yubikey to username.

  * Support disconnected AES key usage.

The development community is co-ordinated via Google Code:

  http://code.google.com/p/yubico-pam/

The license for pam_yubico is the same as for Linux-PAM, namely a
dual-license between 3-clause BSD and the GPL.  See the file COPYING
for more information.

== Building from SVN ==

Skip to the next section if you are using an official packaged
version.

You may check out the sources using SVN with the following command:

{{{
  svn checkout http://yubico-pam.googlecode.com/svn/trunk/ yubico-pam
}}}

This will create a directory 'yubico-pam'.  Enter the directory:

{{{
  cd yubico-pam
}}}

Autoconf, automake and libtool must be installed.  For the
documentation, asciidoc and docbook are also required.

Generate the build system using:

{{{
  autoreconf --install
}}}

== Building ==

You will need to have libyubikey-client (libykclient.h,
libyubikey-client.so) and libpam-dev (security/pam_appl.h, libpam.so)
installed.  Get the libyubikey-client library from:

http://code.google.com/p/yubico-c-client/

The build system uses Autoconf, to set up the build system run:

{{{
  ./configure
}}}

Then build the code, run the self-test and install the binaries:

{{{
  make check install
}}}

== Configuration ==

Install it in your PAM setup by adding a line to an appropriate file
in /etc/pam.d/:

{{{
  auth sufficient pam_yubico.so id=16 debug
}}}

and move pam_yubico.so into /lib/security/:

{{{
  mv /usr/local/lib/security/pam_yubico.so /lib/security/
}}}

Supported PAM module parameters are:

{{{
  "id":       to indicate your client identity,
  "debug":    to enable debug output to stdout,
  "alwaysok": to enable that all authentication attempts should succeed
              (aka presentation mode).
  "url":      specify the URL template to use, this is set by calling
              yubikey_client_set_url_template, which uses by default:
	      http://api.yubico.com/wsapi/verify?id=%d&otp=%s
}}}

If you are using "debug" you may find it useful to create a
world-writable log file:

{{{
  touch /var/run/pam-debug.log 
  chmod go+w /var/run/pam-debug.log 
}}}

== Examples ==

If you want to use the Yubikey to authenticate you on linux console
logins, add the following to the top of /etc/pam.d/login:

{{{
auth sufficient pam_yubico.so id=16 debug
}}}

== Feedback ==

If you want to discuss anything related to the Yubico PAM module,
please contact <simon@yubico.com>.