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
- Log in to your Linux server as a root user.
- Type $ sudo apt-get install libpam-radius-auth libpam0g-dev gcc and press Enter to install PAM with Radius Authentication Module.
- 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 #.
- 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.
- 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).
- Add the configuration folder:
- Type $ sudo mkdir /etc/raddb and press Enter.
- Type $ sudo cp /etc/pam_radius_auth.conf /etc/raddb/server and press Enter.
- Type $ sudo service ssh restart and press Enter to restart the ssh service.
Before AuthPoint can receive Linux PAM authentication requests from Linux PAM, you must specify the Linux PAM client in AuthPoint. You must also assign the Linux PAM to the user group that will authenticate through Linux PAM.
Add a Radius Resource in AuthPoint
From the AuthPoint management UI:
- From the navigation menu, select Resources.
- From the Choose a Resource Type drop-down list, select RADIUS Client. Click Add Resource.
- Configure the settings for all options on the RADIUS page.
Add an Access Policy to AuthPoint
You must have at least one user group in AuthPoint for authentication with Linux PAM, and you must assign an access policy for the Linux PAM resource to that group. If you already have a group, you do not have to add another group.
In the AuthPoint management UI:
- From the navigation menu, select Groups.
- To add a new group, click Add Group. If you already have a group that you want to use, select the group to edit it.
- In the Name text box, type a descriptive name for the group.
- (Optional) In the Description text box, type a description of the group.
- In the Access Policy section, click Add Policy.
- In the Add Policy dialog box, from the Resource drop-down list, select the resource you want to add an access policy for.
- (Optional) To require that users type their password before they authenticate for this resource, enable the Require Password Authentication toggle.
- Select the authentication options that users in this group can select from when they authenticate.
For SAML resources, if you select more than one authentication option, users must select one of the available options when they authenticate. For example, if you select OTP and Push, users can choose to type their OTP or approve a push to authenticate. You cannot require that they do both.
- Click Add.
- (Optional) Add one or more safe locations to your group. For more information about safe locations and detailed instructions to add them, see About Safe Locations.
- Click Save.
Before you assign users to a group, you must add the users to AuthPoint. You can manually add user accounts or import user accounts from an external user database. For more information on how to add user accounts, see Add User Accounts.
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. For more information, see About Gateways.
- From the navigation menu, select Gateway.
- Select the Name of the Gateway.
- 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.
- In the Select a RADIUS resource drop-down list, select your RADIUS client resource.
- Click Save.
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.
- In an SSH client, connect to Linux server.
- If required, type your AuthPoint password.
- Approve the authentication request that is sent to your mobile device.
You are logged in to Linux.