CP R80.10 CloudGuard IaaS High Availability For Microsoft Azure
CP R80.10 CloudGuard IaaS High Availability For Microsoft Azure
CHECK POINT
CLOUDGUARD IAAS HIGH
AVAILABILITY FOR
MICROSOFT AZURE
R80.10
Deployment Guide
Classification: [Protected]
© 2018 Check Point Software Technologies Ltd.
All rights reserved. This product and related documentation are protected by copyright and
distributed under licensing restricting their use, copying, distribution, and decompilation. No part
of this product or related documentation may be reproduced in any form or by any means without
prior written authorization of Check Point. While every precaution has been taken in the
preparation of this book, Check Point assumes no responsibility for errors or omissions. This
publication and features described herein are subject to change without notice.
RESTRICTED RIGHTS LEGEND:
Use, duplication, or disclosure by the government is subject to restrictions as set forth in
subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS
252.227-7013 and FAR 52.227-19.
TRADEMARKS:
Refer to the Copyright page http://www.checkpoint.com/copyright.html for a list of our
trademarks.
Refer to the Third Party copyright notices http://www.checkpoint.com/3rd_party_copyright.html
for a list of relevant copyrights and third-party licenses.
Important Information
Latest Software
We recommend that you install the most recent software release to stay up-to-date
with the latest functional improvements, stability fixes, security enhancements and
protection against new and evolving attacks.
Certifications
For third party independent certification of Check Point products, see the Check Point
Certifications page
https://www.checkpoint.com/products-solutions/certified-check-point-solutions/.
Feedback
Check Point is engaged in a continuous effort to improve its documentation.
Please help us by sending your comments
mailto:[email protected]?subject=Feedback on Check Point
CloudGuard IaaS High Availability for Microsoft Azure R80.10 Deployment Guide.
Revision History
Date Description
20 September 2018 Updated: Step 1: Deploy with a Template in Azure (on page 16) - added
"Standard Load Balancers and High Availability ports are not available on
the Azure Government Cloud environment".
Updated: Known Limitations (on page 40) - added "Standard Load
Balancers and High Availability ports are not available on the Azure
Government Cloud environment".
Terms
Also, Fail-over. Transferring of a control over
traffic (packet filtering) from a cluster
member that suffered a failure to another
Active Directory (AD) cluster member (based on internal cluster
algorithms).
Active Directory. Microsoft® directory
information service. Stores data about user, Load Balancer
computer, and service identities for
A resource that distributes incoming traffic
authentication and access.
among computers in a network. In Azure, a
Active Member load balancer distributes traffic to Virtual
Machines defined in a load-balancer set. A
A cluster member that handles network load balancer can be Internet-facing, or it
connections that pass through the cluster. In can be internal. (Description from the
a cluster deployment, only one cluster Microsoft Azure glossary)
member is Active and can handle
connections. Resource
Prerequisites
To set up your system most efficiently, you have to be familiar with these topics:
Microsoft Azure
• Virtual Networks
• Virtual Machines
• Load Balancers
• High Availability ports
• Public IP addresses
• User Defined Rules (UDR)
• Role Based Access Control (RBAC)
Check Point
• R80.10
• Check Point with Microsoft Azure
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 7
Check Point CloudGuard IaaS R80.10 High Availability for Azure
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 8
CHAPTE R 2
Network
In This Section:
Network Diagram ...........................................................................................................9
Diagram Components...................................................................................................11
Failover ..........................................................................................................................13
Traffic Flows .................................................................................................................14
Follow this network diagram to configure your system, but make sure to replace the IP addresses
in the sample environment with the IP addresses in your environment.
Network Diagram
See the routing tables below the diagram.
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 9
Network
3 Destination Nexthop
10.0.0.0/16 None (Drop)
4 Destination Nexthop
0.0.0.0/0 None (Drop)
5 Frontend Nexthop
App
6 Frontend Nexthop
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 10
Network
Diagram Components
The diagram shows:
• Virtual Network in Azure that is divided into four subnets
• Frontend
• Backend
• Web
• App
• On-premises network with these components
• Security Gateway
• Hosts
Check Point R80.10 High Availability consists of two cluster members, Member 1 and Member 2.
Each member has two interfaces.
When the cluster members are in the same Availability Set, it guarantees that the two members
are in separate fault domains. For more information, see Managing the availability of Virtual
Machines
https://docs.microsoft.com/en-us/azure/virtual-machines/windows/manage-availability?toc=%2F
azure%2Fvirtual-machines%2Fwindows%2Ftoc.json.
In the diagram:
• The R80.10 cluster is protecting two web applications.
• There is Site-to-Site VPN connectivity between the cluster members and on-premises
gateways.
Each web application has:
• Public IP address
• Web server
• Application server
Manually configure these components:
• Backend hosts
• Subnets
• Routing tables for Web and App servers
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 11
Network
Static IP Addresses
Name Attached to Use
Cluster public address The external interface of the VPN
Active member.
Use the Azure Load Balancer rules to forward traffic that comes from the Internet.
Note - The following ports cannot be used:
• 80
• 443
• 444
• 8082
• 8880
• 8117
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 12
Network
Failover
This is what happens at failover:
1. The member that fails, immediately stops responding to the Load Balancer health probes.
2. The member that gets promoted to Active, starts responding to the Load Balancer health
probes.
3. The Azure External Load Balancer and Internal Load Balancer detect the new health status of
each member, and forward traffic to the healthy member. See Azure Load Balancer probes
https://docs.microsoft.com/en-us/azure/load-balancer/load-balancer-custom-probe-overvie
w for more information.
This usually happens in under 15 seconds based on the health probe Load Balancer
configuration. This affects inbound, outbound, and East-West traffic inspection.
4. The member that gets promoted to Active uses the Azure API to associate itself with the
cluster private and public IP addresses.
This usually happens in under 2 minutes. This affects VPN tunnel failover.
These are the expected failover times based on use case:
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 13
Network
Traffic Flows
If the Security Management Server is in the Virtual Network, make sure to have specific routes to
allow traffic between the Management Server Virtual Machine and the cluster members.
Note - No other Virtual Machines can be deployed in the R80.10 solution subnets.
Inbound Traffic
• Traffic travels into the External Load Balancer.
• The External Load Balancer forwards the traffic to the Active cluster member.
• The Active member inspects the traffic, and forwards it to the destination.
Outbound Traffic
• Traffic travels to an Internal Load Balancer based on the UDR.
• The Internal Load Balancer forwards the traffic to the Active member.
• The Active Member inspects the traffic and forwards it to the destination.
East-West Traffic
• Traffic travels from one of the internal servers to the Internal Load Balancer of the Check
Point solution.
• The Internal Load Balancer forwards the traffic to the Active member.
• The Active member forwards the traffic to the destination.
Note - The Internal Load Balancer deploys by default as part of the solution template. It is
automatically configured to listen and forward any TCP or UDP traffic High Availability ports. It
gets an automatically assigned name: backend-lb.
Probes monitor the health of the cluster members on TCP port 8117 from the source IP address:
168.63.129.16
Intra-Subnet Traffic
• Traffic travels freely in the subnet without inspection.
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 14
CHAPTE R 3
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 15
Workflow for Setting Up a High Availability Gateway in Azure
Parameter Description
Cluster object name Name of the cluster object resource group.
Credentials Public key or user name and password for SSH connections to the
cluster members.
Resource group Azure resource group into which the cluster object is deployed.
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 16
Workflow for Setting Up a High Availability Gateway in Azure
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 17
Workflow for Setting Up a High Availability Gateway in Azure
Field Parameter
Name Application_Name
Example: check-point-<cluster>
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 18
Workflow for Setting Up a High Availability Gateway in Azure
Best practice - We recommend that you set the key to never expire. Go to your resource.
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 19
Workflow for Setting Up a High Availability Gateway in Azure
Note - If traffic inspection is required inside the Web/App subnets, override Rule 1 in the route
tables above, <web-subnet>-local, and <app-subnet>-local.
Important - Associate the newly created routing table with the subnet to which it belongs.
If the subnet houses the Security Management Server that manages the cluster members, add the
following routes as well. This allows the Security Management Server to communicate directly
with each cluster member, without passing through the Active member.
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 20
Workflow for Setting Up a High Availability Gateway in Azure
For example:
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 21
Workflow for Setting Up a High Availability Gateway in Azure
Example:
clish -c 'set static-route 10.0.0.0/16 nexthop gateway address 10.0.2.1 on' -s
Parameters:
• <virtual-network-prefix> is the prefix of the entire Virtual Network.
Example: 10.0.0.0/16
• <eth1-router> is the first unicast IP address on the subnet to which eth1 is connected
Example: 10.0.2.1
Notes:
• If the Virtual Network is comprised of several non-contiguous address prefixes, repeat the
command for each prefix.
• For vNET Peering:
• Add a compatible route on each peer network.
• Add the route for vNET Peering to each cluster member.
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 22
Workflow for Setting Up a High Availability Gateway in Azure
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 23
Workflow for Setting Up a High Availability Gateway in Azure
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 24
Workflow for Setting Up a High Availability Gateway in Azure
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 25
Workflow for Setting Up a High Availability Gateway in Azure
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 26
Workflow for Setting Up a High Availability Gateway in Azure
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 27
Workflow for Setting Up a High Availability Gateway in Azure
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 28
Workflow for Setting Up a High Availability Gateway in Azure
Configuring VPN
Let's use SmartConsole to create a Network Group object to represent the encryption domain for
the cluster. To create an object for the VPN configuration, see Creating Objects in SmartConsole
(on page 39). See the R80.10 Security Management Server Administration Guide
http://downloads.checkpoint.com/dc/download.htm?ID=54842 for more information.
Step 1: Create a Network Group object to represent the encryption domain of the cluster and
define the VPN domain:
From the Object Explorer in SmartConsole, select New > Network Group.
Step 2: Define your Network Group and the encryption domain of the cluster object:
1. Double-click the cluster object.
The Gateway Cluster Properties window shows.
2. Go to Network Management > VPN Domain.
3. From the manually defined field, select the cluster object Network Group object.
This Network Group object is the encryption domain of the cluster object.
Step 3: Define the outgoing interface:
1. From the Gateways & Servers tab in SmartConsole, double-click the network object.
2. From the menu at the left, click IPsec VPN > Link Selection.
These three sections show in the Gateway Cluster Properties window.
• IP Selection by Remote Peer
• Outgoing Route Selection
• Tracking
3. From IP Selection by Remote Peer, select Always use this IP address > Main address.
4. From Outgoing Route Selection, select Source IP address settings > Manual > Selected
address from topology table.
5. Select the private cluster object VIP address.
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 29
Workflow for Setting Up a High Availability Gateway in Azure
6. Click OK.
Step 4: Add tunnels to the VPN.
1. From SmartConsole, go to the Object Explorer > VPN Communities.
2. Double-click the VPN community that the cluster participates in.
The VPN Community window shows.
3. Go to Tunnel Management > Set Permanent Tunnels.
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 30
CHAPTE R 4
Additional Information
In This Section:
Testing and Troubleshooting .......................................................................................32
Using the Azure High Availability Daemon ..................................................................34
Using a Different Azure Cloud Environment ...............................................................36
Working with a Proxy ....................................................................................................37
Changing Template Components ................................................................................38
Creating Objects in SmartConsole ..............................................................................39
Known Limitations ........................................................................................................40
Related Solutions..........................................................................................................41
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 31
Additional Information
Use the cluster configuration test script on each cluster member to confirm the member is
configured correctly.
Run the script from Expert Mode with this command (do not change the syntax):
# $FWDIR/scripts/azure_ha_test.py
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 32
Additional Information
Message Recommendation
The attribute (ATTRIBUTE) is
missing in the configuration
Primary DNS server is not The cluster member is not configured with a DNS
configured server.
Failed to resolve (host)
Failed in DNS resolving test Confirm that DNS resolution on the cluster
member works.
You do not seem to have a valid Make sure that the member configuration on the
cluster configuration Check Point Security Management Server is
complete and that the Security Policy is installed.
failed to read configuration file: The Azure cluster member configuration is not up
/opt/CPsuite-R80/fw1/conf/azure-h to date, or written correctly.
a.json
Simulate a cluster failover. For example, shut down the internal interface of the Active cluster
member.
From Expert Mode enter:
# ip link set dev eth1 down
In a few seconds the second member has to report itself as the Active cluster member.
If you are experiencing issues:
• Make sure you have set up an Azure Active Directory Service Account. The service has to have:
• Contributor privileges to the resource group
• At least minimum privileges on the member deployment resources. See Minimum Roles in
Changing Template Components (on page 38).
• To make the networking changes automatically, the members have to communicate with
Azure. This requires HTTPS connections over TCP/443 to the Azure end points.
• Make sure the Security Policy that is installed on the Security Gateway allows this type of
communication.
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 33
Additional Information
Note - If you use your own service principal, the credentials attribute contains:
• Your Client-id
• Your Client-secret
• Grant type: client-credentials
• Your tenant id
You can confirm that the daemon in charge of communicating with Azure is running on each
cluster member. From Expert Mode, enter:
# cpwd_admin list | grep -E "PID|AZURE_HAD"
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 34
Additional Information
Notes:
• The script appears in the output
• The STAT column should show E (executing)
• The #START column should show 1 (the number of times this script was started by the
Check Point WatchDog)
To troubleshoot issues related to this daemon, generate debugging printouts. From Expert Mode:
• To enable debug printouts
# azure-ha-conf --debug --force
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 35
Additional Information
# $FWDIR/scripts/azure_ha_cli.py reconf
Note -If you deploy in the default global cloud environment, you can omit this attribute.
Important note about the service principal:
If you use any of these different environments, you have to create your own service principal. No
default service principal is created.
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 36
Additional Information
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 37
Additional Information
Naming Constraints
• Cluster members in Azure have to match the cluster member names with a suffix of '1' and '2'.
• The IP address of the cluster has to match the configuration file.
• By default it should match the cluster name.
Permissions
It is possible to assign service principal permissions to specific Azure resources. See sk116585
http://supportcontent.checkpoint.com/solutions?id=sk116585 for information on how to find the
image version.
To allow the cluster to update the necessary Azure resources on failover, the service principal has
to be assigned at least the following roles on these resources or on their respective resource
group.
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 38
Additional Information
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 39
Additional Information
Known Limitations
• For outbound and VPN traffic, you cannot delete or disable the public IP address of cluster
members.
• The feature is only available in Azure Resource Manager deployments. It is not supported with
Azure Service Manager (also known as classic) deployments.
• Only two members per cluster are supported.
• Only High Availability Mode (Active/Standby) is supported. Load Sharing Mode is not supported.
• VRRP is not supported.
• Only the Active member can reach services from the cluster via VPN. The Standby member can
reach those services only when it becomes the Active member.
• When you use the standard Internal Load Balancer it does not support Stateful failover.
• Managed service identity for Virtual Machines is only available in the Azure Cloud environment.
Other environments require a manual service identity management.
• Standard Load Balancers and High Availability ports are not available on the Azure
Government Cloud environment
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 40
Additional Information
Related Solutions
• sk109360 http://supportcontent.checkpoint.com/solutions?id=sk109360. Check Point
Reference Architecture for Azure
• sk113583 http://supportcontent.checkpoint.com/solutions?id=sk113583. How to add a network
interface to a Check Point Security Gateway in Azure
• sk113476 http://supportcontent.checkpoint.com/solutions?id=sk113476. Azure Virtual Network
peering
Check Point CloudGuard IaaS High Availability for Microsoft Azure Deployment Guide R80.10 | 41