Skip to content

Commit 41e16bd

Browse files
Addressing issues and updating ARO restrict egress traffic doc
1 parent 08ee0ea commit 41e16bd

File tree

1 file changed

+43
-41
lines changed

1 file changed

+43
-41
lines changed

articles/openshift/howto-restrict-egress.md

Lines changed: 43 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -10,74 +10,76 @@ ms.date: 10/10/2023
1010
---
1111
# Control egress traffic for your Azure Red Hat OpenShift (ARO) cluster
1212

13-
This article provides the necessary details that allow you to secure outbound traffic from your Azure Red Hat OpenShift cluster (ARO). With the release of the [Egress Lockdown Feature](./concepts-egress-lockdown.md), all of the required connections for a private cluster are proxied through the service. There are additional destinations that you may want to allow to use features such as Operator Hub, or Red Hat telemetry. An [example](#private-aro-cluster-setup) is provided at the end showing how to configure these requirements with Azure Firewall. Keep in mind, you can apply this information to Azure Firewall or to any outbound restriction method or appliance.
13+
This article provides the necessary details that allow you to secure outbound traffic from your Azure Red Hat OpenShift cluster (ARO). With the release of the [Egress Lockdown Feature](./concepts-egress-lockdown.md), all of the required connections for an ARO cluster are proxied through the service. There are additional destinations that you may want to allow to use features such as Operator Hub or Red Hat telemetry.
1414

1515
> [!IMPORTANT]
1616
> Do not attempt these instructions on older ARO clusters if those clusters don't have the Egress Lockdown feature enabled. To enable the Egress Lockdown feature on older ARO clusters, see [Enable Egress Lockdown](./concepts-egress-lockdown.md#enable-egress-lockdown).
1717
18+
## Endpoints proxied through the ARO service
1819

19-
## Before you begin
20-
21-
This article assumes that you're creating a new cluster. If you need a basic ARO cluster, see the [ARO quickstart](./tutorial-create-cluster.md).
22-
23-
## Minimum Required FQDN - Proxied through ARO service
24-
25-
This list is based on the list of FQDNs found in the OpenShift docs here: https://docs.openshift.com/container-platform/latest/installing/install_config/configuring-firewall.html
26-
27-
The following FQDNs are proxied through the service, and won't need additional firewall rules. They're here for informational purposes.
20+
The following endpoints are proxied through the service, and do not need additional firewall rules. This list is here for informational purposes only.
2821

2922
| Destination FQDN | Port | Use |
3023
| ----------- | ----------- | ------------- |
31-
| **`arosvc.azurecr.io`** | **HTTPS:443** | Global Internal Private registry for ARO Operators. Required if you don't allow the service-endpoints Microsoft.ContainerRegistry on your subnets. |
32-
| **`arosvc.$REGION.data.azurecr.io`** | **HTTPS:443** | Regional Internal Private registry for ARO Operators. Required if you don't allow the service-endpoints Microsoft.ContainerRegistry on your subnets. |
24+
| **`arosvc.azurecr.io`** | **HTTPS:443** | Global container registry for ARO required system images. |
25+
| **`arosvc.$REGION.data.azurecr.io`** | **HTTPS:443** | Regional container registry for ARO required system images. |
3326
| **`management.azure.com`** | **HTTPS:443** | Used by the cluster to access Azure APIs. |
3427
| **`login.microsoftonline.com`** | **HTTPS:443** | Used by the cluster for authentication to Azure. |
35-
| **`*.monitor.core.windows.net`** | **HTTPS:443** | Used for Microsoft Geneva Monitoring so that the ARO team can monitor the customer's cluster(s). |
36-
| **`*.monitoring.core.windows.net`** | **HTTPS:443** | Used for Microsoft Geneva Monitoring so that the ARO team can monitor the customer's cluster(s). |
37-
| **`*.blob.core.windows.net`** | **HTTPS:443** | Used for Microsoft Geneva Monitoring so that the ARO team can monitor the customer's cluster(s). |
38-
| **`*.servicebus.windows.net`** | **HTTPS:443** | Used for Microsoft Geneva Monitoring so that the ARO team can monitor the customer's cluster(s). |
39-
| **`*.table.core.windows.net`** | **HTTPS:443** | Used for Microsoft Geneva Monitoring so that the ARO team can monitor the customer's cluster(s). |
40-
41-
> [!NOTE]
42-
> For many customers exposing *.blob, *.table and other large address spaces creates a potential data exfiltration concern. You may want to consider using the [OpenShift Egress Firewall](https://docs.openshift.com/container-platform/latest/networking/openshift_sdn/configuring-egress-firewall.html) to protect applications deployed in the cluster from reaching these destinations and use Azure Private Link for specific application needs.
28+
| **Specific subdomains of `monitor.core.windows.net`** | **HTTPS:443** | Used for Microsoft Geneva Monitoring so that the ARO team can monitor the customer's cluster(s). |
29+
| **Specific subdomains of `monitoring.core.windows.net`** | **HTTPS:443** | Used for Microsoft Geneva Monitoring so that the ARO team can monitor the customer's cluster(s). |
30+
| **Specific subdomains of `blob.core.windows.net`** | **HTTPS:443** | Used for Microsoft Geneva Monitoring so that the ARO team can monitor the customer's cluster(s). |
31+
| **Specific subdomains of `servicebus.windows.net`** | **HTTPS:443** | Used for Microsoft Geneva Monitoring so that the ARO team can monitor the customer's cluster(s). |
32+
| **Specific subdomains of `table.core.windows.net`** | **HTTPS:443** | Used for Microsoft Geneva Monitoring so that the ARO team can monitor the customer's cluster(s). |
4333

4434
---
4535

46-
## List of optional FQDNs
36+
## List of optional endpoints
4737

48-
### ADDITIONAL CONTAINER IMAGES
38+
### Additional container registry endpoints
4939

50-
- **`registry.redhat.io`**: Used to provide images for things such as Operator Hub.
51-
- **`*.quay.io`**: May be used to download images from the Red Hat managed Quay registry. Also a possible fall-back target for ARO required system images. If your firewall can't use wildcards, you can find the [full list of subdomains in the Red Hat documentation.](https://docs.openshift.com/container-platform/latest/installing/install_config/configuring-firewall.html)
40+
| Destination FQDN | Port | Use |
41+
| ----------- | ----------- | ------------- |
42+
| **`registry.redhat.io`** | **HTTPS:443** | Used to provide container images and operators from Red Hat. |
43+
| **`quay.io`** | **HTTPS:443** | Used to provide container images and operators from Red Hat and third-parties. |
44+
| **`cdn.quay.io`** | **HTTPS:443** | Used to provide container images and operators from Red Hat and third-parties. |
45+
| **`cdn01.quay.io`** | **HTTPS:443** | Used to provide container images and operators from Red Hat and third-parties. |
46+
| **`cdn02.quay.io`** | **HTTPS:443** | Used to provide container images and operators from Red Hat and third-parties. |
47+
| **`cdn03.quay.io`** | **HTTPS:443** | Used to provide container images and operators from Red Hat and third-parties. |
48+
| **`access.redhat.com`** | **HTTPS:443** | Used to provide container images and operators from Red Hat and third-parties. |
49+
| **`registry.access.redhat.com`** | **HTTPS:443** | Used to provide third-party container images and certified operators. |
50+
| **`registry.connect.redhat.com`** | **HTTPS:443** | Used to provide third-party container images and certified operators. |
5251

53-
---
52+
### Red Hat Telemetry and Red Hat Insights
53+
54+
By default, ARO clusters are opted-out of Red Hat Telemetry and Red Hat Insights. If you wish to opt-in to Red Hat telemetry, allow the following endpoints and [update your cluster's pull secret](./howto-add-update-pull-secret.md).
5455

55-
### TELEMETRY
56+
| Destination FQDN | Port | Use |
57+
| ----------- | ----------- | ------------- |
58+
| **`cert-api.access.redhat.com`** | **HTTPS:443** | Used for Red Hat telemetry. |
59+
| **`api.access.redhat.com`** | **HTTPS:443** | Used for Red Hat telemetry. |
60+
| **`infogw.api.openshift.com`** | **HTTPS:443** | Used for Red Hat telemetry. |
61+
| **`console.redhat.com/api/ingress`** | **HTTPS:443** | Used in the cluster for the insights operator that integrates with Red Hat Insights. |
5662

57-
You can opt out of telemetry, but make sure you understand this feature before doing so: https://docs.openshift.com/container-platform/4.12/support/remote_health_monitoring/about-remote-health-monitoring.html
58-
- **`cert-api.access.redhat.com`**: Used for Red Hat telemetry.
59-
- **`api.access.redhat.com`**: Used for Red Hat telemetry.
60-
- **`infogw.api.openshift.com`**: Used for Red Hat telemetry.
61-
- **`https://cloud.redhat.com/api/ingress`**: Used in the cluster for the insights operator that integrates with Red Hat Insights (required in 4.10 and earlier only).
62-
- **`https://console.redhat.com/api/ingress`**: Used in the cluster for the insights operator that integrates with Red Hat Insights.
63+
For additional information on remote health monitoring and telemetry, see the [Red Hat OpenShift Container Platform documentation](https://docs.openshift.com/container-platform/latest/support/remote_health_monitoring/about-remote-health-monitoring.html).
6364

64-
---
65+
### Other additional OpenShift endpoints
6566

66-
### OTHER POSSIBLE OPENSHIFT REQUIREMENTS
67+
| Destination FQDN | Port | Use |
68+
| ----------- | ----------- | ------------- |
69+
| **`api.openshift.com`** | **HTTPS:443** | Used by the cluster to check if updates are available for the cluster. Alternatively, users can use the [OpenShift Upgrade Graph tool](https://access.redhat.com/labs/ocpupgradegraph/) to manually find an upgrade path. |
70+
| **`mirror.openshift.com`** | **HTTPS:443** | Required to access mirrored installation content and images. |
71+
| **`*.apps.<cluster_domain>*`** | **HTTPS:443** | When allowlisting domains, this is used in your corporate network to reach applications deployed in ARO, or to access the OpenShift console. |
6772

68-
- **`mirror.openshift.com`**: Required to access mirrored installation content and images. This site is also a source of release image signatures.
69-
- **`*.apps.<cluster_name>.<base_domain>`** (OR EQUIVALENT ARO URL): When allowlisting domains, this is used in your corporate network to reach applications deployed in OpenShift, or to access the OpenShift console.
70-
- **`api.openshift.com`**: Used by the cluster for release graph parsing. https://access.redhat.com/labs/ocpupgradegraph/ can be used as an alternative.
71-
- **`registry.access.redhat.com`**: Registry access is required in your VDI or laptop environment to download dev images when using the ODO CLI tool. (This CLI tool is an alternative CLI tool for developers who aren't familiar with kubernetes). https://docs.openshift.com/container-platform/4.6/cli_reference/developer_cli_odo/understanding-odo.html
72-
- **`access.redhat.com`**: Used in conjunction with `registry.access.redhat.com` when pulling images. Failure to add this access could result in an error message.
73+
---
7374

7475
## ARO integrations
7576

7677
### Azure Monitor container insights
7778

7879
ARO clusters can be monitored using the Azure Monitor container insights extension. Review the pre-requisites and instructions for [enabling the extension](../azure-monitor/containers/container-insights-enable-arc-enabled-clusters.md).
7980

80-
81+
---
82+
<!-- @todo Migrate this to a secondary article if we find customer demand.
8183
## Private ARO cluster setup
8284
The goal is to secure ARO cluster by routing Egress traffic through an Azure Firewall
8385
### Before:
@@ -373,4 +375,4 @@ az aro delete -n $CLUSTER -g $RESOURCEGROUP
373375
374376
# Remove the resource group that contains the firewall, jumpbox and vnet
375377
az group delete -n $RESOURCEGROUP
376-
```
378+
``` -->

0 commit comments

Comments
 (0)