Linux PAM Integration with AuthPoint

Deployment Overview

This document describes how to set up multi-factor authentication (MFA) for Linux PAM with AuthPoint. Linux must already be configured and deployed before you set up MFA with AuthPoint.

Your Linux can be configured to support MFA in several modes. For this integration, we set up RADIUS authentication with AuthPoint. RADIUS authentication requires that you install the AuthPoint Gateway on your network, which functions as a RADIUS server.

This integration was tested with Ubuntu 16.04 LTS.

Linux PAM Authentication Data Flow with AuthPoint

AuthPoint communicates with various cloud-based services and service providers with the Radius protocol. This diagram shows the data flow of an MFA transaction for Linux.

Before You Begin

Before you begin these procedures, make sure that:

  • You have installed and configured the AuthPoint Gateway (see About Gateways)
  • End-users can log in to the Linux PAM
  • A token is assigned to a user in AuthPoint

Configure Ubuntu 16.04 LTS

  1. Log in to your Linux server as a root user.
  2. Type $ sudo apt-get install libpam-radius-auth libpam0g-dev gcc and press Enter to install PAM with Radius Authentication Module.
  3. Edit the /etc/ssh/sshd_config file to enable PAM authentication in ssh service. Make sure ChallengeResponseAuthentication yes and UserPAM yes are enabled and do not include a #.
  4. Edit the /etc/pam.d/sshd file and add the line auth sufficient pam_radius_auth.so in the beginning of the file to enable PAM with Radius in PAM module.
  5. Edit the /etc/pam_radius_auth.conf file and add a line that specifies the IP address of the RADIUS server (AuthPoint Gateway) and shared secret. The added line should be written as server:port SharedSecret timeout (10.0.1.201:1812 123456 60).
  6. Add the configuration folder:
    1. Type $ sudo mkdir /etc/raddb and press Enter.
    2. Type $ sudo cp /etc/pam_radius_auth.conf /etc/raddb/server and press Enter.
  7. Type $ sudo service ssh restart and press Enter to restart the ssh service.

Configure AuthPoint

Before AuthPoint can receive authentication requests from Linux PAM, you must:

Add a Radius Resource in AuthPoint

From the AuthPoint management UI:

  1. From the navigation menu, select Resources.
  2. From the Choose a Resource Type drop-down list, select RADIUS Client. Click Add Resource.

  1. Configure the settings for all options on the RADIUS page.

Add a Group in AuthPoint

You must have at least one user group in AuthPoint to configure MFA. If you already have a group, you do not have to add another group.

To add a group to AuthPoint:

  1. From the navigation menu, select Groups.
  2. Click Add Group.
    The New Group page appears.

Screenshot that shows the Groups page.

  1. In the Name text box, type a descriptive name for the group.
  2. (Optional) In the Description text box, type a description of the group.

Screen shot of the New Group page.

  1. Click Save.
    Your group is listed on the Groups page.

Screenshot of the Save button on the New Group page.

Add an Authentication Policy to AuthPoint

Authentication policies specify which resources users can authenticate to and which authentication methods they can use (Push, QR code, and OTP).

You must have at least one authentication policy in AuthPoint that includes the Linux PAM RADIUS client resource. If you already have authentication policies, you do not have to create a new authentication policy. You can add this resource to your existing authentication policies.

Users that do not have an authentication policy for a specific resource cannot authenticate to log in to that resource.

To configure an authentication policy:

  1. From the navigation menu, select Authentication Policies.
  2. Click Add Policy.

Screenshot of the Add Policy button on the Authentication Policies page.

  1. Type a name for this policy.
  2. From the Select the authentication options drop-down list, select Authentication options and select which authentication options users can choose from when they authenticate.

    If you enable the push and OTP authentication methods for a policy, RADIUS resources associated with that policy will use push notifications to authenticate users.

    QR code authentication is not supported for RADIUS resources.

  1. Select which groups this policy applies to. You can select more than one group. To configure this policy to apply to all groups, select All Groups.
  2. Select the resource that you created in the previous section. If you want this policy to apply to additional resources, select each resource this policy applies to. To configure this policy to apply to all resources, select All Resources.

Screenshot of the Add Policy page with the groups and resources selected

  1. (Optional) If you have configured policy objects such as a Network Location, select which policy objects apply to this policy. When you add a policy object to a policy, the policy only applies to user authentications that match the conditions of the policy objects. For example, if you add a Network Location to a policy, the policy only applies to user authentications that come from that Network Location. Users who only have a policy that includes a Network Location do not get access to the resource when they authenticate outside of that Network Location (because they do not have a policy that applies, not because authentication is denied).

    For RADIUS authentication, policies that have a Network Location do not apply because AuthPoint does not have the IP address of the user.

    If you configure policy objects, we recommend that you create a second policy for the same groups and resources without the policy objects. The policy with the policy objects should have a higher priority.

Screenshot of the Policy Objects drop-down list.

  1. Click Save.
    Your policy is created and added to the end of the policy list.

    When you create a new policy, we recommend that you review the order of your policies. AuthPoint always adds new policies to the end of the policy list.

Screenshot of the Save button on the Add Policy page.

Bind the RADIUS Resource to a Gateway

To use RADIUS authentication with AuthPoint, you must have the AuthPoint Gateway installed on your corporate network and you must assign your RADIUS resources to the Gateway in the AuthPoint web UI. The Gateway functions as a RADIUS server.

If you have not configured and installed the AuthPoint Gateway, see About Gateways.

  1. From the navigation menu, select Gateway.
  2. Select the Name of the Gateway.
  3. In the RADIUS section, in the Port text box, type the port number used to communicate with the Gateway. The default ports are 1812 and 1645.

    If you already have a RADIUS server installed that uses port 1812 or 1645, you must use a different port for the AuthPoint Gateway.

  4. In the Select a RADIUS resource drop-down list, select your RADIUS client resource.
  5. Click Save.

Add Users to AuthPoint

Before you assign users to a group, you must add the users to AuthPoint. There are two ways to add AuthPoint user accounts:

  • Sync users from an external user database
  • Add local AuthPoint users

Each user must be a member of a group. You must add at least one group before you can add users to AuthPoint.

Test the Integration

To test the integration of AuthPoint and configuration of your Linux, you can authenticate with a mobile token on your mobile device. For RADIUS resources, you can choose one-time password (OTP) or push.

In this example, we show the push authentication method.

  1. In an SSH client, connect to Linux server.
  2. If required, type your AuthPoint password.
  3. Approve the authentication request that is sent to your mobile device.
    You are logged in to Linux.