Firebase Cloud Messaging

Citrix recommends that you use Firebase Cloud Messaging (FCM) to control how and when Android devices connect to Endpoint Management. By using the following configuration, any security action or deploy command triggers a push notification to prompt the user to reconnect to the Endpoint Management server.

Firebase Cloud Messaging (FCM) was previously known as Google Cloud Messaging (GCM). Some Endpoint Management console labels and messages refer to GCM.

After you complete the configuration steps in this article and a device checks in, the device registers with the Firebase Cloud Messaging service in Citrix Endpoint Management. That connection enables near real-time communication from your Endpoint Management service to your device by using FCM. When Endpoint Management needs to initiate a connection to the device, it connects to the FCM service and the FCM service notifies the device to connect. This type of connection is similar to what Apple uses for its Push Notification Service.

Prerequisites

  • Latest Secure Hub client
  • Google developer account credentials

Firewall ports

  • Open port 443 on Endpoint Management to Android.apis.google.com and Google.com.
  • Open ports 5228, 5229, and 5230 for incoming messages.
  • To allow outgoing connections, FCM recommends whitelisting ports 5228 through 5230 with no IP restrictions. However, if you require IP restrictions, FCM recommends whitelisting all the IP addresses in the IPv4 and IPv6 blocks. Those blocks are listed in the Google ASN of 15169. Update that list monthly.

Architecture

This diagram shows the communication flow for FCM in the external and internal network.

Image of the FCM architecture

To configure your Google account for FCM

  1. Sign in to the following URL using your Google developer account credentials:

    https://console.firebase.google.com/

  2. Click Add project.

    Image of the Create a project option

  3. After you create the project, click Project settings.

    Image of the Project settings option

  4. Click the Cloud Messaging tab. Copy the Server key and Sender ID values. You must provide those values in the Endpoint Management console. It is important to note that any Server Keys created after September 2016 must be created in the Firebase console.

    Image of the Cloud Messaging tab

To configure Endpoint Management for FCM

In the Endpoint Management console, go to Settings > Google Cloud Messaging.

  • Edit GCM API key, and type the Firebase Cloud Messaging Server key that you copied in the last step of Firebase Cloud Messaging configuration.

  • Edit GCM Sender ID, and type the Sender ID value you copied in the previous procedure.

Image of the Sender ID value entry

After you complete the setup, you can remove your Scheduling device policy or change that policy to connect less often.

To test your configuration

  1. Enroll an Android device.

  2. Leave the device idle for some time, so that it disconnects from Endpoint Management.

  3. Sign in to the Endpoint Management console, click Manage, select the Android device, and then click Secure.

    Image of the Secure Android device option

  4. Under Device Actions, click Selective Wipe.

    Image of the Selective Wipe option

    In a successful configuration, selective wipe occurs on the device.