CME Structure and Configurations

These sections explains the main concepts of CME configuration.

CME Directories and Files

  • The CME is located in this directory on the Security Management or Multi-Domain Security Management Server:

    /opt/CPcme/

  • To execute the configuration tool for autoscaling solutions (such as Azure VMSS, AWS ASG, and GCP MIG) run this command in Expert mode:

    autoprov_cfg

    A more detailed description of autoprov_cfg is described in Using the autoprov_cfg Command Line Configuration Tool.

  • Run this command in Expert mode to execute command line configurations menu:

    cme_menu

    For each CME feature that requires the CME Menu, see the specific instructions in the related chapter.

  • Configuration tool for AWS Transit Gateway:

    tgw_menu

    For a more detailed description of the tgw-menu features, see Configuring the tgw_menu.

About CME Service Commands

After a successful installation, CME runs the 'cme' service.

Function

Run this Command

Stop the service

service cme stop

Start the service

service cme start

Restart the service

service cme restart

Test the service

service cme test

Get the status of the service

service cme status

Locating the Configuration Files

CME primary configuration file is autoprovision.json, and CME maintains backup files for it:

  • autoprovision.json.bak - when there is a configuration change.

  • autoprovision.json.bak_schema - when CME schema version is updated - See Schema section.

To find the CME configuration files use one of these directories:

  • On a Security Management Server: $FWDIR/conf/

  • On a Multi-Domain Security Management Server: $MDSDIR/conf

The configuration files are synchronized between the primary and secondary server in a Management High Availability environment.

The CME Logs

The CME log files are:

  • Primary CME Service log: /var/log/CPcme/cme.log*

  • CME command line menu log: /var/log/CPcme/cme_menu.log

More logs used by Check Point Support:

  • rest_infra.log

  • cme_api.log

  • gunicorn_server.log

  • diagnostics.log

See CME Log Collector.

CME Authentication

This section describes the necessary steps for CME authentication with different public cloud platforms.

AWS

Refer to sk130372 > 3. Creating an AWS IAM User and IAM Role section.

AWS Controller (account) connects to these URLs:

  • https://ec2.<region_code>.amazonaws.com

  • https://elasticloadbalancing.<region_code>.amazonaws.com

For example: https://ec2.ap-northeast-2.amazonaws.com/

Azure

Create a Microsoft Entra ID (formerly Azure AD) and Service Principal

With the Microsoft Entra ID and Service Principal, the Check Point Security Management Server monitors the creation and status of the VMSS, so it can complete the provision of these gateways.

  1. Connect to portal.azure.com.

  2. Click Active Directory -> App registrations -> New registration.

  3. Create new registration:

    1. Select a meaningful Name.

    2. Supported account types - Select Single tenant.

    3. Redirect URL - Select Web, and type https://localhost/vmss-name - instead of: vmss-name. It can be any name.

    4. Click Register.

    5. Open Certificates and secrets pane -> click New secret key.

    6. Add the duration for the key.

    7. Backup the key. You cannot look at the key later. Save it now.

After you create the application, write down these values, for "Configure the Check Point Security Management Server"

  • Application ID

    client_id

  • Key value

    client_secret

  • Tenant ID

    tenant

  • Directory ID

Note - We recommend that you set the key to never expire.

Permissions:

Give the Azure Active Directory application a minimum role of Reader to the VMSS and the VNET as explained here.

Azure Controller (account) connects to these URLs:

  • AzureCloud

    • https://login.windows.net

    • https://management.azure.com

  • AzureChinaCloud

    • https://login.chinacloudapi.cn

    • https://management.chinacloudapi.cn

  • AzureUSGovernment

    • https://login.microsoftonline.us

    • https://management.usgovcloudapi.net

GCP

Create a Google Cloud Platform (GCP) Service Account

The GCP Service account is used by the Check Point Security Management Server to monitor the creation and state of the autoscaling Managed Instance Group. This allows the Management Server to complete the provisioning of these gateways.

To create a GCP service account:

  1. Go to https://cloud.google.com/iam/docs/creating-managing-service-accounts.

    Use these parameters:

    Name

    check-point-autoprovision

    Role

    Compute Engine \ Compute Viewer

  2. Click Create Key > JSON (as the key type). A .json file is downloaded to your computer).

    Note - This .json file is used later as the credentials file in CME Structure and Configurations.

Permissions:

"Compute viewer"

GCP Controller (account) connects to this URL:

https://www.googleapis.com/

Using the cme_menu Command Line Configuration Tool

  • The cme_menu is a command line based menu to configure CME components and features.

  • To start the menu, run cme_menu when logged into Expert mode on the Security Management or Multi-Domain Security Management Server.

  • Use the instructions in this guide to configure the CME with the cme_menu as needed.

Using the autoprov_cfg Command Line Configuration Tool

  • The autoprov_cfg is a command-line tool to configure autoscaling solutions, such as Azure VMSS, AWS ASG, and GCP MIG.

  • Refer to the specific solutions administration guide for specific information about how to use autoprov_cfg.

  • For instructions about how to use the autoprov_cfg, run:

    autoprov_cfg -h

  • Commands summary:

    Command Description

    init

    Initialize auto-provision with Management, a Configuration Template, and a Controller (account) configuration

    show

    Show all or specific configuration settings

    add

    1. Add a new Configuration Template or a Controller

    2. Add a new configuration to the Management or to a Configuration Template or a Controller

    set

    Set values in an existing configuration of Management, Configuration Template or a Controller

    delete

    1. Remove a Configuration Template or a Controller

    2. Remove a configuration from the Management or from a Configuration Template or a Controller

    -v

    Show the version of CME

    -h

    Shows specific help documentation

  • Specific help documentation is available for each option that you select.

    For example, this command shows the available initialization parameters for AWS and their definition:

    autoprov_cfg init AWS -h

Schema

  1. Starting from CME Take 212, the CME configuration has a schema version.

  2. This attribute ensures that only compatible CME runs with the given CME configuration.

  3. CME does not run when the schema version in the CME configuration is not compatible.

  4. Example scenarios that can cause incompatibility:

    1. Revert to older CME Take.

    2. Upgrade - export configuration and importing it on a machine with an older CME Take.

    3. High Availability Management/Multi Domain servers where the CME on the two members is not from the same take.

  5. CME adds/updates a schema version parameter automatically and stores a backup of the previous configuration file in the autoprovision.json.bak_schema file.

  6. To show the current schema version value, look for the schema value in CME configuration:

    autoprov_cfg show all
  7. This is a read-only parameter.

  8. This attribute ensures that only compatible CME runs with the given CME configuration.

Delay

  • The delay parameter sets the sleep time between CME iterations.

  • The default delay value is 30 seconds.

  • To see the current delay value, looks for the delay value in CME configuration:

    autoprov_cfg show all
  • To edit the delay configuration, run:

    autoprov_cfg set delay <NEW_TIME_IN_SEC>

Management

  • There is one Management configuration for CME.

  • The Management configuration applies to each controller, and each template.

    To see the current Management configurations, run:

    autoprov_cfg show management

    To edit the management configurations, run:

    autoprov_cfg set management -h

Management Parameters

Parameter Value

Description

-mn

MANAGEMENT-NAME

The name of this CME management configuration.

This name must match the management name configured for each deployed scale-set.

Note - This name is configurable and not related to CPM management name.

-d

DOMAIN:

The domain name or the domain UID that manage CME.

This parameter is mandatory for MDS environments when one domain manages CME.

If more than one domain manages CME, you should remove this parameter and configure it in the controller part, as explained below in the controller section.

-cs

SCRIPT FULL PATH

This parameter let you set a custom script to be executed on the Management Server in these scenarios:

  1. After the restrictive policy installation step (even if restrictive policy is skipped).

  2. After installing the policy specified in the Configuration Template.

  3. After removing a Security Gateway.

In each of these scenarios, CME runs the script with different arguments as listed in the table below:

Scenario Arguments

Example

Restrictive policy installation

delete <gateway name>

$FWDIR/conf/mgmt-script.sh delete cloudguard-gateway1

Configuration Template policy installation

add <gateway name>

$FWDIR/conf/mgmt-script.sh add cloudguard-gateway1

Security Gateway removal

delete <gateway name>

$FWDIR/conf/mgmt-script.sh delete cloudguard-gateway1

Notes:

  • CME expects to find the script in the $FWDIR/conf directory. For example: $FWDIR/conf/mgmt-script.sh.

  • The script must have only admin read permission. You can give this permission with the command: chmod 400 $FWDIR/conf/<script filename>

You can download an example of the Custom Management Script from here.

To add parameters to the script see CUSTOM_PARAMETERS in Configuration Templates (gateway-configurations) > General Parameters.

Controllers (accounts)

  • To connect to your cloud account and automatically provision Security Gateways deployed in the account, the Security Management Server needs cloud-specific information, such as credentials and regions.

    This information is related to a controller in the automatic provisioning configuration.

  • To see the current controllers used by the Management Server connected to the cloud environments, run:

    autoprov_cfg show controllers

  • To add a new controller to an existing automatic provisioning configuration, run:

    autoprov_cfg add controller -h

Important - Each controller in the configuration must have unique credentials, with the exception of the MDS configuration.

General Parameters

Parameter Value

Description

-cn

CONTROLLER-NAME

The name of the cloud environment controller. The name must be unique.

-dto

DELETION-TOLERANCE:

The number of cycles until a Gateway object in SmartConsole is deleted.

-ct

CONTROLLER TEMPLATES

An optional list of templates that are linked to this specific controller.

This parameter is mandatory for MDS environments with more than one domain configured.

for example, TEMPLATE1-NAME TEMPLATE2-NAME

-cd

CONTROLLER DOMAIN

Specify the domain name or the domain UID that manage this controller.

This parameter is mandatory for MDS environments with more than one domain configured.

Parameters for AWS only

Parameter Value

Description

-r

REGIONS

A comma-separated list of AWS regions in which the gateways are being deployed. For example: eu-west-1,us-east-1,eu-central-1

-ak

AWS ACCESS KEY:

AWS Access Key ID

-sk

AWS SECRET KEY

AWS Secret Key

-iam

-

Use this flag to specify if you use an IAM role profile

-fi

AWS CREDENTIALS FILE PATH

The path to a text file with the AWS credentials

-sr

STS ROLE

The STS Role ARN of a role to assume

-se

STS EXTERNAL ID

An optional STS External Id to use when assuming a role in account

-sn

SUB-CREDENTIALS NAME

Sub account name. The name must be unique

-sak

AWS SUB-CREDENTIALS ACCESS KEY

AWS Access Key ID for the sub account

-ssk

AWS SUB-CREDENTIALS SECRET KEY

AWS Secret Key for a sub account

-sfi

AWS SUB-CREDENTIALS FILE PATH

The path to a text file containing AWS credentials

for a sub account

-siam

-

Use this flag to specify whether to use an IAM role profile for a sub account

-ssr

AWS SUB-CREDENTIALS STS ROLE

STS Role ARN of a role to assume for a sub-account

-sse

AWS SUB-CREDENTIALS STS EXTERNAL ID

An optional STS External Id to use when assuming a role in this sub account

-com

COMMUNITIES

An optional comma-separated list of communities, which are allowed for VPN connections that this controller discovers. If this attribute is missing or its value is an empty list, it means that any community may be joined by VPN connections that belong to this controller.

This is useful to prevent automatic addition of VPN connections to a community based on the customer gateway public IP address.

-sv

-

Use this flag to enable the auto-provisioning of VPN objects

-slb

-

Use this flag to enable the auto-provisioning of load balancer Access and NAT rules

-ss

-

Use this flag to enable scan subnets with Centralized GWLB solution

Parameters for Azure only

Parameter Value

Description

-sb

SUBSCRIPTION ID

The Azure subscription ID

-en

-:

An optional attribute that specifies Azure's environment type.

The possible values are:

  • AzureCloud (default)

  • AzureChinaCloud

  • AzureGermanCloud

  • AzureUSGovernment

-at

TENANT ID

The Azure Active Directory tenant ID.

-aci

CLIENT ID

The service principal's client ID value.

-acs

CLIENT SECRET

The service principal’s client secret value.

Parameters for NSX only

Parameter Value

Description

-nf

NSX FINGERPRINT

NSX-T manager fingerprint

-np

NSX MANAGER PASSWORD:

NSX-T manager password

-nu

NSX MANAGER USERNAME

NSX-T manager username

-nh

NSX MANAGER HOST

NSX-T manager host IP

-nsm

NSX SERVICE MANAGER PASSWORD

NSX service manager password

-nad

NSX AD AUTH

NSX-T manager ad auth

Parameters for Nutanix only

Parameter Value

Description

-nf

NUTANIX PRISM FINGERPRINT

Nutanix Prism fingerprint

-np

NUTANIX PRISM PASSWORD:

Nutanix Prism password

-nu

NUTANIX PRISM USERNAME

Nutanix Prism username

-nh

NUTANIX PRISM IP

Nutanix Prism IP

Parameters for GCP only

Parameter Value

Description

-proj

GCP-PROJECT

The GCP project in which you are deploying CloudGuard Security Gateways. For example, "ACME-Production".

-cr

GCP-SERVICE-ACCOUNT-KEY

Full path to GCP Service Account key file. The file has to be located in $FWDIR/conf and only have admin read permissions.

For example, $FWDIR/conf/ACME-Production13cebb.json.

-crd

GCP-SERVICE-ACCOUNT-DATA

The content of GCP service account data encoded in base64.

Configuration Templates (gateway-configurations)

  • Information required to automatically provision Security Gateways, such as what policy to install and which Software Blades to enable, is placed in a configuration template in the automatic provisioning configuration.

  • To see the current configuration templates that you can apply on Security Gateways, run:

    autoprov_cfg show templates

  • To add a new configuration template to an existing automatic provisioning configuration, run the command:

    autoprov_cfg add template -tn <CONFIGURATION-TEMPLATE-NAME> -otp <SIC-KEY> -ver <VERSION> -po <POLICY-NAME>

Supported Configuration Template parameters

Configuring Name Prefix for Provisioned Gateways

By default, CME provision the gateway objects using these naming convention:

  • AWS:<CONTROLLER-NAME>--<SCALE-SET-INSTANCE-NAME>--<REGION-NAME>

  • Azure: <CONTROLLER-NAME>--<SCALE-SET-INSTANCE-NAME>--<RESOURCE-GROUP-NAME>

  • GCP: <CONTROLLER-NAME>--<SCALE-SET-INSTANCE-NAME>

  • Nutanix: <CONTROLLER-NAME>--<VM-NAME>

  • NSX-T: <CONTROLLER-NAME>--<VM-NAME>

To add the template name as a name prefix (that comes before the controller name), run:

autoprov_cfg set template -tn <CONFIGURATION-TEMPLATE-NAME> -pn ""

To add a unique name as a name prefix (that comes before the controller name), run:

autoprov_cfg set template -tn <CONFIGURATION-TEMPLATE-NAME> -pn <UNIQUE-NAME-PREFIX>

Note - Currently, the Automatic HF deployment does not support name-prefix.

Configuring Network Group

CME automatically creates and updates a network group object with all the provisioned scale-set instances in the Security Management/Multi-Domain Server.

Network group object naming convention in the Security Management/Multi-Domain Server by cloud providers:

  • General: CME_<CONTROLLER-NAME>--<PLATFORM-UNIQUE-IDENTIFIER>

  • AWS: CME_<CONTROLLER-NAME>--<SCALE-SET-NAME>--<REGION-NAME>

  • GCP: CME_<CONTROLLER-NAME>--<SCALE-SET-NAME>

  • Azure: CME_<CONTROLLER-NAME>--<SCALE-SET-NAME>--<RESOURCE-GROUP-NAME>

  • Nutanix: CME_<CONTROLLER-NAME>--<NETWORK-FUNCTION-PROVIDER>

  • NSX-T: CME_<CONTROLLER-NAME>--<REGISTERED-SERVICE-NAME>

  • Long names:

    Because of object names restriction in the Security Management Server, for Network group objects with Platform Unique Identifier larger than 150 characters, the CME replaces it with the hash (SHA256) of the Platform Unique Identifier.

    For example, in the GCP the group name is:

    CME_<CONTROLLER-NAME>--< SCALE-SET-NAME-HASH-VALUE>

  • Object comment:

    The comment of the Network Group objects (for new objects starting CME Take 243) is the clear/full name of the Network Group object.

You can use the Network Group object in these policies and policy columns:

  • Access Control rule columns:

    • Source

    • Destination

    • Install On

  • NAT rule columns:

    • Original Source

    • Original Destination

Notes:

  • If you use an empty network group object (a scale set has 0 instances) in Access Policy ("Install On" column), policy installation will fail.

  • CME creates only one unique network group object for each scale set.

Default-features

Default-features is a section in the CME configuration. It contains Configuration Template attributes, which are enabled automatically for each new Configuration Template.

Default-features section:

  • Initializing CME with autoprov_cfg init creates/copies the Default-features section based on:

    • If there is no CME configuration on this server, the Default-features section is being created with the latest available Default features.

    • If there is a CME configuration on the server, the Default-features section is copied (if it exists) from the former configuration.

  • To view the existing Default-features, look for the Default-features value in the CME configuration:

    autoprov_cfg show all

New template creation:

When you create a new Configuration Template, if the Default-features section exists, its attributes are automatically added to the template (without specifying its attributes in the command).

Note - If an attribute has version limitations, it is added automatically only if the template's versions is applicable for the attribute.

To see the existing configuration template, run:

autoprov_cfg show template -tn <TEMPLATE NAME>

Enabling and Disabling Software Blades

See Supported Configuration Template parameters for parameter information.

CME API

With CME Management API you can configure the CME utility.

For more information, see the CME API SwaggerHub documentation.

Prerequisites:

  • CME Take 139 or higher installed on the Check Point Management Server.

  • Management API version 1.8 or higher installed on the Check Point Management Server (see the Check Point Management API Reference).

Configuring the tgw_menu

The Transit Gateway menu is a command-line based menu to configure the AWS Transit Gateway solution.

For more information, see the CloudGuard Network for AWS Transit Gateway R80.20 and Higher Deployment Guide.

Implied Rules and Restrictive Policy

A restrictive access policy package has only a drop-all cleanup rule. During Security Gateway provisioning cycle (scale out), CME can first install a restrictive policy package to prevent Security Gateway from answering load balancer's health probes.

  • CME Take 250 and higher:

    Azure:

    Gateway version

    Load Balancer

    Gateway Load Balancer

    Application Gateway

    All versions

    SKIP

    SKIP

    INSTALL

    AWS:

    Gateway version

    Network Load Balancer

    Gateway Load Balancer

    Application Load Balancer

    R81.10 and higher

    SKIP

    SKIP

    INSTALL

    R81 and lower

    INSTALL

    SKIP

    INSTALL

    GCP

    Gateway version

    All Load Balancer types

    R81.10 and higher

    SKIP

    R81 and lower

    INSTALL

    Private Cloud Vendors (NSX-T, Nutanix): CME installs restrictive policy on all solutions.

  • CME Take 250 and lower:

    CME always installs restrictive policy.

For CME Takes lower than 250, if the Implied Rules are disabled, it is required to configure a custom restrictive policy package and to set it in the Configuration Template.

For more details see:

If it necessary to use the Multi-Domain Server Global Policy together with automatic provisioning, see Global Policy on a Multi-Domain Server.

Objects Banner

Starting from CME Take 252, objects created by CME have a warning banner.

To show the warning banner, CME creates and attaches a tag to objects.

Example of a warning banner for a host object created by CME: