Kerberos Single Sign On
The UserCheck agent supports single sign on through the Kerberos An authentication server for Microsoft Windows Active Directory Federation Services (ADFS). network authentication protocol. Kerberos is the default authentication protocol used in Windows 2000 domains and above.
The Kerberos protocol is based on the idea of tickets, encrypted data packets issued by a trusted authority, in this case the Active Directory (AD). When a user logs in, the user authenticates to a domain controller that provides an initial ticket granting ticket (TGT). This ticket vouches for the user's identity.
When the user needs to authenticate against the DLP Gateway through the UserCheck agent, the agent presents this ticket to the domain controller and requests a service ticket (SR) for a specific resource (the DLP Gateway). The UserCheck agent presents this service ticket to the Security Gateway Dedicated Check Point server that runs Check Point software to inspect traffic and enforce Security Policies for connected network resources..
For more detailed information on Kerberos SSO, see:
Single Sign-On Configuration has two steps:
-
AD Configuration
You create a user account and map it to a Kerberos primary name.
Performing AD Configuration
The AD configuration involves:
-
Creating a New User Account
-
Mapping the User Account to a Kerberos Principle Name
Creating a new User Account
-
In Active Directory, open Active Directory Users and Computers (Start > Run > dsa.msc)
-
Add a new user account. You can select any username and password.
For example: a user account named
ckpsso
with the passwordqwe123!@#
to the domaincorp.acme.com
-
Clear User must change password at next logon and select Password Never Expires.
Mapping the User Account to a Kerberos Principle Name
This step uses the ktpass utility to create a Kerberos principal name that is used by both the Security Gateway and the AD. A Kerberos principal name consists of a service name (for the DLP Gateway that the UserCheck agent connect to) and the domain name to which the service belongs.
The ktpass is a command-line tool available in Windows 2000 and higher.
Retrieving the correct executable
You must install the correct ktpass.exe version on the AD. Ktpass.exe is not installed by default in Windows 2003.
-
Windows 2003:
-
Retrieve the correct executable for your service pack from the Microsoft Support site prior to installation. It is part of the Windows 2003 support tools. For example, AD 2003 SP2 requires support tools for 2003 sp2.
-
Download the support.cab and suptools.msi files to a new folder on your AD server.
-
Run the
suptools.msi
.
-
-
Active Directory 2008:
The ktpass utility is already installed on your server in the Windows\System32 folder and you can run the command line. You need to open the command prompt as an administrator by right clicking it and selecting "run as an Administrator".
Use the ktpass
-
Open a command line to run the ktpass tool (Start > Run > cmd).
-
At the command prompt, run ktpass with this syntax:
ktpass -princ ckp_pdp/domain_name@DOMAIN_NAME -mapuser username@domain_name -pass password -out unix.keytab -crypto RC4-HMAC-NT
Important - Enter the command exactly as shown. It is case-sensitive.
This is an example of running ktpass with these parameters:
Parameter
Value
domain_name@DOMAIN_NAME
corp.acme.com@CORP.ACME.COM
username@domain_name
ckpsso@corp.acme.com
password
qwe123@#
The AD is ready to support Kerberos authentication for the Security Gateway.
The example above shows the ktpass syntax on Windows 2003. When using Windows 2008/2008 R2 Server, the ktpass syntax is slightly different. Parameters are introduced using a forward slash "
/
" instead of a hyphen "-
".Example (Windows 2008)
ktpass /princ ckp_pdp/corp.acme.com@CORP.ACME.COM /mapuser ckpsso@corp.acme.com /pass qweQWE!@# /out unix.keytab /crypto RC4-HMAC-NT
Authentication Failure
Authentication fails if you used the ktpass utility before for the same principal name (ckp_pdp/domain_name@DOMAIN_NAME) but with a different account.
If you have used the ktpass utility before:
-
On the AD server, run:
ldifde -f check_SPN.txt -t 3268 -d "dc=corp,dc=acme,dc=com" -l servicePrincipalName -r "(servicePrincipalName=ckp_pdp*)" -p subtree
-
Open the
check_SPN.txt
file and verify that only one record is present.If multiple records exist, you must delete the different account or remove its association to the principal name.
Remove the association with the principle name by running:
settspn -D ckp_pkp/domain_name old_account name.
For example:
setspn -D ckp_pdp/corp.acme.com ckpsso
-
-
SmartConsole Configuration
You create an LDAP Account Unit and configure it to support SSO.
Configuring SmartConsole for DLP SSO
Configure the object in SmartConsole
Check Point GUI application used to manage a Check Point environment - configure Security Policies, configure devices, monitor products and events, install updates, and so on. for an LDAP Account Unit to support SSO.
To create a host object for the AD server:
-
In SmartConsole, click Objects > Object Explorer (Ctrl+E).
-
Click New > Host.
-
Configure the settings for the host.
-
Click OK.
-
Publish the SmartConsole session.
To configure the LDAP account unit:
-
From the Object Explorer, click New > Server > LDAP Account Unit.
-
In the General tab of the LDAP Account Unit Properties window, enter these settings:
-
Enter the Name.
-
In Profile, select Microsoft_AD.
-
In the Domain field, enter the domain name.
Best Practice - Configure this field for account units that you want to use for Identity Awareness
Check Point Software Blade on a Security Gateway that enforces network access and audits data based on network location, the identity of the user, and the identity of the computer. Acronym: IDA.. This setting does not affect other LDAP Account Units.
-
Select CRL retrieval and User management.
-
-
Click Active Directory SSO configuration.
-
In the Active Directory SSO configuration window, configure these settings:
-
Select Use Kerberos Single Sign On.
-
Enter the Domain Name.
-
Enter the Account Name and Password for the AD account.
-
Do not change the default settings for Ticket encryption method.
-
Click OK.
-
-
Configure these settings in the Servers tab:
-
Click Add.
-
In Host, select the host object for the AD server.
-
Enter the Login DN of the user (added in the AD) for LDAP operations.
-
Enter the Password and confirm it.
-
In the Check Point Gateways are allowed to section, make sure that Read data from this server is selected.
-
-
Click the Encryption tab, and configure these settings:
-
Click Use Encryption (SSL).
-
Click Fetch.
-
Click OK.
Note - LDAP over SSL is not supported by default. If you have not configured your domain controller to support LDAP over SSL, either skip step 6 or configure your domain controller to support LDAP over SSL.
-
-
Click the Objects Management tab, and configure these settings:
-
In the Manage objects on field, select the host object for the AD server
-
Click Fetch Branches to configure the branches in use.
-
Set the number of entries supported.
-
-
Click the Authentication tab, and configure these settings:
-
In the Users's default values section, click Default authentication scheme.
-
Select Check Point Password.
-
-
Click OK.
-
Publish the SmartConsole session.
-