Linux PAM Integration with AuthPoint

Deployment Overview

This document describes how to set up multi-factor authentication (MFA) for Linux PAM with AuthPoint. Linux PAM 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.

Contents

Integration Summary

The hardware and software used in this guide include:

  • AuthPoint Gateway v7.3.0 or higher
  • Linux distributions:
    • Ubuntu
    • Red Hat Enterprise Linux (RHEL)
    • CentOS
  • PAM with the Radius Authentication Module
  • SSH client

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.

Topology diagram

Before You Begin

Before you begin these procedures, make sure that:

  • You have installed and configured the AuthPoint Gateway (see About Gateways)
  • You have installed the PAM with the RADIUS Authentication Module in your Linux server.
  • The secure shell daemon (SSHD) is running and connectivity is being tested from a suitable SSH client.
  • A token is assigned to a user in AuthPoint

The steps to configure multi-factor authentication for Linux PAM with AuthPoint vary depending on your Linux distribution version.

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. Click Add Resource.
    The Add Resource page opens.

  1. From the Type drop-down list, select RADIUS Client.
    Additional fields appear.

  1. In the Name text box, type a descriptive name for the resource.
  2. In the RADIUS client trusted IP or FQDN text box, type the IP address that your RADIUS client uses to send RADIUS packets to the AuthPoint Gateway. This must be a private IP address. If you specified the vrf field in the previous section, this address is the IP address of the network interface assigned to the VRF device.
  3. From the Value sent for RADIUS attribute 11 drop-down list, specify what is sent for the attribute 11 (Filter-ID) value in RADIUS responses. You can choose to send the user's AuthPoint group or the user's Active Directory groups.
  4. In the Shared Secret text box, type the shared secret key. This is the password that the RADIUS server (AuthPoint Gateway) and the RADIUS client (Linux Server) will use to communicate. The shared secret key must be the same one you configured in the /etc/pam_radius_auth.conf file.
  5. Click Save.

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 WatchGuard Cloud-hosted group to the WatchGuard Cloud Directory:

  1. Go to Configure > Directories and Domain Services.
  2. Click the WatchGuard Cloud Directory domain name. If you have not yet added the WatchGuard Cloud Directory, click Add Authentication Domain and select the WatchGuard Cloud Directory.
    The New Group page appears.

Screenshot that shows the Directories and Domain Services page.

  1. In the Groups tab, click Add Group.
  2. In the Group Name text box, type a descriptive name for the group.
  3. (Optional) In the Description text box, type a description of the group.

Screen shot of the Add Group page.

  1. Click Save.
    Your group is added to the WatchGuard Cloud Directory and to AuthPoint.

Add a Zero Trust Authentication Policy

Zero Trust policies specify which resources users can authenticate to and which authentication methods they can use.

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

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

For the Linux PAM RADIUS client resource, you must select the password authentication option in your authentication policies.

To configure a Zero Trust authentication policy:

  1. Go to Configure > Zero Trust. If you have a Service Provider account, you must select an account from Account Manager.
  2. Click Add Policy.
  3. Type a name for this policy.
  4. In the Target section, from the Content drop-down list, select which groups this policy applies to. You can make multiple selections to add multiple groups.
  5. In the Resources section, select the AuthPoint resources this policy applies to.
  6. In the Conditions section, select the conditions that apply to this policy. When you add a condition to an authentication policy, the policy applies only to user authentications that match the policy and the policy conditions. For example, if you add a time schedule to a policy, the policy only applies to user authentications that occur within that time schedule. Users who only have a policy that includes a time schedule do not get access to the resource when they authenticate outside of the allowed times (because they do not have a policy that applies, not because authentication is denied). For more information, go to About Zero Trust Conditions

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

    1. (Optional) To create a new condition, click Add New Condition. After you create a new condition, you must still add the condition to the policy.
    2. From the Type drop-down list, select the type of condition to add to the policy.
    3. From the Name drop-down list, select which condition of the chosen type to add to the policy.
    4. To add more conditions, repeat Step 6.

      If you add conditions to a policy, we recommend that you create a second policy for the same groups and resources without the conditions. Assign a higher priority to the policy with the policy objects. For more information about priority, go to About Zero Trust Policy Precedence.

  7. In the Action section, select an option to specify whether to allow or deny authentications for the resources in this policy. In our example, we want to allow authentications.
    • Allow — Allow user groups in this policy access to the resources associated with this policy.
    • Deny — Deny authentications when users in the groups associated with this policy try to authenticate to the resources associated with this policy.
  8. If you allow access with this policy, select the check box for each authentication option users can select when they authenticate to resources in this policy with MFA.

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

    QR code authentication is not supported for RADIUS client resources.

    For RADIUS authentication, you append your OTP to the end of your password. Do not add a space. For example, password112233.

  9. Click Save.
    Your policy is created and added to the end of the policy list.
  10. Review the order of your policies and adjust as necessary. For more information about priority, go to About Zero Trust Policy Precedence.

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. From 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. From 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 WatchGuard Cloud-hosted 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 the configuration of your Linux, you can authenticate with a mobile token on your mobile device. For RADIUS resources, you can choose a one-time password (OTP) or push. If you enable both the Push and OTP authentication methods for a policy, the RADIUS client resources will use push notifications to authenticate users. To allow users to authenticate with OTP, you must select only the password and OTP authentication methods.

In this example, we show the push authentication method.

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