Skip to content
This repository has been archived by the owner on Apr 6, 2021. It is now read-only.

Enable PAM module to work with VPN software (POC provided) #118

Closed
ThomasHabets opened this issue Oct 10, 2014 · 4 comments
Closed

Enable PAM module to work with VPN software (POC provided) #118

ThomasHabets opened this issue Oct 10, 2014 · 4 comments

Comments

@ThomasHabets
Copy link
Contributor

Original issue 119 created by tore.lonoy on 2011-11-11T08:27:32.000Z:

Currently google-authenticator cannot be used to authenticate with a single password that consists of the one time key and a personal password.

What I would like to do is this:

  1. Assume username "root"
  2. Assume "root"s username is "test1234" (in /etc/passwd)
  3. Assume next one time key is "abcdabcd", and is always 8 in lenght
  4. SSH to server
  5. Provide username "root"
  6. Provide password "test1234abcdefg"

When 6. is checked with PAM, the google-authenticator will get the last 8 chars if the password provided, and validate it. If auth OK, the module will return OK and "test1234", and hand it over to the next PAM, pam_unix.so.

Yubico (http://yubico.com/) has done this with their yubikey.

The source code to their PAM module is located here: http://code.google.com/p/yubico-pam/

This would enable users to use google-authenticator with e.g. pfsense and PPTP, and just about any other PAM enabled application.

@ThomasHabets
Copy link
Contributor Author

Comment #1 originally posted by tore.lonoy on 2011-11-12T11:14:21.000Z:

If you look at line 781 in yubico's source code the relevant code for this to work is present:
https://github.com/Yubico/yubico-pam/blob/master/pam_yubico.c#L781

In line 791 they use the pam_set_item function to also return the supplied password part:
retval = pam_set_item (pamh, PAM_AUTHTOK, onlypasswd);

Hope this is enoug information for someone to add this feature.

@ThomasHabets
Copy link
Contributor Author

Comment #2 originally posted by markus@google.com on 2011-12-15T08:37:41.000Z:

Can you let me know, whether the "forward_pass" option that I just added is sufficient to do what you want?

@ThomasHabets
Copy link
Contributor Author

Comment #3 originally posted by markus@google.com on 2011-12-15T08:52:04.000Z:

<empty>

@ThomasHabets
Copy link
Contributor Author

Comment #4 originally posted by markus@google.com on 2011-12-15T08:53:13.000Z:

<empty>

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant