Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
5fda3ee
attempting to present remote cluster filters
eedugon Sep 18, 2025
e1f7c20
attempting to present remote cluster filters
eedugon Sep 18, 2025
3809a62
Merge remote-tracking branch 'origin/main' into remote_clusters_filte…
eedugon Sep 18, 2025
c801bc9
conflict fix
eedugon Sep 18, 2025
4fcf134
bug fix
eedugon Sep 18, 2025
7a28e29
bug fix
eedugon Sep 18, 2025
c29379e
remote cluster filters updated
eedugon Sep 19, 2025
de26aeb
syncing tabs
eedugon Sep 19, 2025
2b7a3bc
notes updated and added to ECE docs
eedugon Sep 19, 2025
1ea395a
Update deploy-manage/remote-clusters/ec-enable-ccs.md
eedugon Sep 19, 2025
62cc426
Apply suggestions from code review
eedugon Sep 22, 2025
d70dbee
snippets added for ECE filters association and detach
eedugon Sep 23, 2025
f5fa855
updated intro sentence for eck and self-managed plus updated steps
eedugon Sep 23, 2025
71ea6b3
network security table updated for remote cluster filter
eedugon Sep 23, 2025
855a104
moved sections presentation refined
eedugon Sep 23, 2025
c5d0f28
anchor removed
eedugon Sep 23, 2025
d0510dc
Merge remote-tracking branch 'origin/main' into remote_clusters_filte…
eedugon Sep 23, 2025
5163170
sub added for snippet error
eedugon Sep 23, 2025
9a54e0a
Apply suggestion from @shainaraskas
eedugon Sep 23, 2025
772f77d
introducing better ip filters and self-managed locals
eedugon Sep 24, 2025
4387001
Merge branch 'main' into remote_clusters_filters_notes
eedugon Sep 24, 2025
a300bc1
Update deploy-manage/remote-clusters.md
eedugon Sep 25, 2025
dbdf884
applying review comments
eedugon Sep 25, 2025
7f8ace6
ip filters introduced better as an option for unsupported cases
eedugon Sep 26, 2025
3d636e6
content adapted to new supported use cases
eedugon Oct 2, 2025
60b9243
Merge branch 'main' into remote_clusters_filters_notes
eedugon Oct 6, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 49 additions & 4 deletions deploy-manage/remote-clusters.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,52 @@ Depending on the environment the local and remote clusters are deployed on and t

Find the instructions with details on the supported security models and available connection modes for your specific scenario:

- [Remote clusters with {{ech}}](remote-clusters/ec-enable-ccs.md)
- [Remote clusters with {{ece}}](remote-clusters/ece-enable-ccs.md)
- [Remote clusters with {{eck}}](remote-clusters/eck-remote-clusters.md)
- [Remote clusters with self-managed installations](remote-clusters/remote-clusters-self-managed.md)
- [Remote clusters on {{ech}}](remote-clusters/ec-enable-ccs.md)
- [Remote clusters on {{ece}}](remote-clusters/ece-enable-ccs.md)
- [Remote clusters on {{eck}}](remote-clusters/eck-remote-clusters.md)
- [Remote clusters on self-managed installations](remote-clusters/remote-clusters-self-managed.md)

## Remote clusters and network security [network-security]
```{applies_to}
deployment:
ece: ga
ess: ga
```

In {{ech}} (ECH) and {{ece}} (ECE), the remote clusters functionality interacts with [network security](/deploy-manage/security/network-security.md) traffic filtering rules in different ways, depending on the [security model](/deploy-manage/remote-clusters/remote-clusters-self-managed.md#remote-clusters-security-models) you use.

* **TLS certificate–based authentication (deprecated):**
For remote clusters configured using the TLS certificate–based security model, network security policies or rule sets have no effect on remote clusters functionality. Connections established with this method (mTLS) are already considered secure and are always accepted, regardless of any filtering policies or rule sets applied on the local or remote deployment to restrict other traffic.

* **API key–based authentication (recommended):**
When remote clusters use the API key–based authentication model, network security policies or rule sets on the **destination (remote) deployment** do affect remote cluster functionality if enabled. In this case, you can use traffic filters to explicitly control which deployments are allowed to connect to the remote cluster service endpoint.

::::{note}
Because of [how network security works](/deploy-manage/security/network-security.md#how-network-security-works):
* If network security is disabled, all traffic is allowed by default, and remote clusters work without requiring any specific filtering policy.
* If network security is enabled on the remote cluster, apply a [remote cluster filter](/deploy-manage/security/remote-cluster-filtering.md#create-remote-cluster-filter) to allow incoming connections from the local clusters. Without this filter, the connections are blocked.
::::

This section explains how remote clusters interact with network security when using API key–based authentication, and describes the supported use cases.

### Filter types and supported use cases for remote cluster traffic [use-cases-network-security]

With API key–based authentication, remote clusters require the local cluster (A) to trust the transport SSL certificate presented by the remote cluster server (B). When network security is enabled on the destination cluster (B), it’s also necessary to explicitly allow the incoming traffic from cluster A. This can be achieved using different types of traffic filters:

* [Remote cluster filters](/deploy-manage/security/remote-cluster-filtering.md), available exclusively in ECH and ECE. They allow filtering by organization ID or {{es}} cluster ID and are the recommended option, as they combine mTLS with API key authentication for stronger security.

* [IP filters](/deploy-manage/security/ip-filtering.md), which allow traffic based on IP addresses or CIDR ranges.

The applicable filter type for the remote cluster depends on the local and remote deployment types:

| Remote cluster → <br>Local cluster ↓ | Elastic Cloud Hosted | Elastic Cloud Enterprise | Self-managed / Elastic Cloud on Kubernetes |
|-------------------------|----------------------|--------------------------|--------------------------------------------|
| **Elastic Cloud Hosted** | [Remote cluster filter](/deploy-manage/security/remote-cluster-filtering.md) | [IP filter](/deploy-manage/security/ip-filtering.md) | [IP filter](/deploy-manage/security/ip-filtering.md) or [Kubernetes network policy](/deploy-manage/security/k8s-network-policies.md) |
| **Elastic Cloud Enterprise** | [IP filter](/deploy-manage/security/ip-filtering.md) | [Remote cluster filter](/deploy-manage/security/remote-cluster-filtering.md) / [IP filter](/deploy-manage/security/ip-filtering.md) (\*) | [IP filter](/deploy-manage/security/ip-filtering.md) or [Kubernetes network policy](/deploy-manage/security/k8s-network-policies.md) |
| **Self-managed / Elastic Cloud on Kubernetes** | [IP filter](/deploy-manage/security/ip-filtering.md) | [IP filter](/deploy-manage/security/ip-filtering.md) | [IP filter](/deploy-manage/security/ip-filtering.md) or [Kubernetes network policy](/deploy-manage/security/k8s-network-policies.md) |

(*) For ECE, remote cluster filters apply when both clusters are in the **same environment**. Use IP filters when the clusters belong to **different environments**.

::::{note}
When using self-managed security mechanisms (such as firewalls), keep in mind that remote clusters with API key–based authentication use port `9443` by default. Specify this port if a destination port is required.
::::
20 changes: 5 additions & 15 deletions deploy-manage/remote-clusters/ec-enable-ccs.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@ You can configure an {{ech}} deployment to either connect to remote clusters or
* A deployment in an {{eck}} installation
* A self-managed installation.

::::{note}
Refer to [Remote clusters and network security](/deploy-manage/remote-clusters.md#network-security) for details on how remote clusters interact with network security policies and the implications for your deployments.
::::


## Prerequisites [ec-ccs-ccr-prerequisites]

Expand Down Expand Up @@ -51,20 +55,6 @@ The steps, information, and authentication method required to configure CCS and
* [From a self-managed cluster](remote-clusters-self-managed.md)
* [From an ECK environment](ec-enable-ccs-for-eck.md)


## Remote clusters and network security [ec-ccs-ccr-network-security]

::::{note}
[Network security](../security/network-security.md) isn’t supported for cross-cluster operations initiated from an {{ece}} environment to a remote {{ech}} deployment.
::::

You can use [network security policies](../security/network-security.md) to restrict access to deployments used as a local or remote cluster, without impacting cross-cluster search or cross-cluster replication.

Network security for remote clusters supports the following methods:

* [Filtering by IP addresses and Classless Inter-Domain Routing (CIDR) masks](../security/ip-filtering.md)
* Filtering by Organization or {{es}} cluster ID with a **Remote cluster** private connection policy. You can configure this type of policy from the **Access and security** > **Network security** page of your organization or using the [{{ecloud}} RESTful API](https://www.elastic.co/docs/api/doc/cloud) and apply it from each deployment’s **Security** page.

::::{note}
When setting up network security policies for a remote connection to an {{ece}} environment, you also need to upload the region’s TLS certificate of the local cluster to the {{ece}} environment’s proxy. You can find that region’s TLS certificate in the **Security** page of any deployment of the environment initiating the remote connection. This is regardless of whether you are using API key or TLS Certificates (deprecated) to authenticate remote connections.
::::
If you have [network security policies](/deploy-manage/security/network-security-policies.md) applied to the remote cluster, you might need to take extra steps on the remote side to allow traffic from the local cluster. Some remote cluster configurations have limited compatibility with network security. To learn more, refer to [Remote clusters and network security](/deploy-manage/remote-clusters.md#network-security).
11 changes: 10 additions & 1 deletion deploy-manage/remote-clusters/ec-remote-cluster-ece.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ products:

This section explains how to configure a deployment to connect remotely to clusters belonging to an {{ECE}} (ECE) environment.

::::{note}
If network security filters are applied to the remote cluster on ECE, the remote cluster administrator must configure an [IP filter](/deploy-manage/security/ip-filtering-ece.md) to allow traffic from [{{ecloud}} IP addresses](/deploy-manage/security/elastic-cloud-static-ips.md#ec-egress). For more information, refer to [Remote clusters and network security](/deploy-manage/remote-clusters.md#network-security).
::::

## Allow the remote connection [ec_allow_the_remote_connection_3]

Before you start, consider the security model that you would prefer to use for authenticating remote connections between clusters, and follow the corresponding steps.
Expand Down Expand Up @@ -143,7 +147,7 @@ A deployment can be configured to trust all or specific deployments in a remote

7. Provide a name for the trusted environment. That name will appear in the trust summary of your deployment’s **Security** page.
8. Select **Create trust** to complete the configuration.
9. Configure the corresponding deployments of the ECE environment to [trust this deployment](/deploy-manage/remote-clusters/ece-enable-ccs.md). You will only be able to connect two deployments successfully when both of them trust each other.
9. Configure the corresponding deployments of the ECE environment to [trust this deployment](/deploy-manage/remote-clusters/ece-remote-cluster-ece-ess.md#ece-trust-ec). You will only be able to connect two deployments successfully when both of them trust each other.

::::{note}
The environment ID and cluster IDs must be entered fully and correctly. For security reasons, verification of the IDs is not possible. If cross-environment trust does not appear to be working, double-checking the IDs is a good place to start.
Expand Down Expand Up @@ -212,6 +216,11 @@ On the local cluster, add the remote cluster using {{kib}} or the {{es}} API.

* **Server name**: This value can be found on the **Security** page of the {{ece}} deployment you want to use as a remote.

:::{image} /deploy-manage/images/cloud-enterprise-ce-copy-remote-cluster-parameters.png
:alt: Remote Cluster Parameters in Deployment
:screenshot:
:::

::::{note}
If you’re having issues establishing the connection and the remote cluster is part of an {{ece}} environment with a private certificate, make sure that the proxy address and server name match with the the certificate information. For more information, refer to [Administering endpoints in {{ece}}](/deploy-manage/deploy/cloud-enterprise/change-endpoint-urls.md).
::::
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ products:
This section explains how to configure a deployment to connect remotely to clusters belonging to a different {{ecloud}} organization.

::::{note}
If network security policies are applied to the remote cluster, the remote cluster administrator must configure a private connection policy of type remote cluster, using either the organization ID or the Elasticsearch cluster ID as the filtering criteria. For detailed instructions, refer to [Remote clusters and network security](/deploy-manage/remote-clusters/ec-enable-ccs.md#ec-ccs-ccr-network-security).
If network security policies are applied to the remote cluster, the remote cluster administrator must configure a [private connection policy of type remote cluster](/deploy-manage/security/remote-cluster-filtering.md), using either the organization ID or the Elasticsearch cluster ID of the local cluster as the filtering criteria. For more information, refer to [Remote clusters and network security](/deploy-manage/remote-clusters.md#network-security).
::::

## Allow the remote connection [ec_allow_the_remote_connection_2]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ products:
This section explains how to configure a deployment to connect remotely to clusters belonging to the same {{ecloud}} organization.

::::{note}
If network security is enabled on the remote cluster, the remote cluster administrator must configure a private connection policy of type **Remote cluster**, specifying either the organization ID or the Elasticsearch cluster ID. For detailed instructions, refer to [Remote clusters and network security](/deploy-manage/remote-clusters/ec-enable-ccs.md#ec-ccs-ccr-network-security).
If network security policies are applied to the remote cluster, the remote cluster administrator must configure a [private connection policy of type remote cluster](/deploy-manage/security/remote-cluster-filtering.md), using either the organization ID or the Elasticsearch cluster ID of the local cluster as the filtering criteria. For more information, refer to [Remote clusters and network security](/deploy-manage/remote-clusters.md#network-security).
::::

## Allow the remote connection [ec_allow_the_remote_connection]
Expand Down
20 changes: 4 additions & 16 deletions deploy-manage/remote-clusters/ece-enable-ccs.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ You can configure an {{ece}} deployment to either connect to remote clusters or
* A deployment running on an {{eck}} installation
* A self-managed installation

::::{note}
Refer to [Remote clusters and network security](/deploy-manage/remote-clusters.md#network-security) for details on how remote clusters interact with network security filters and the implications for your deployments.
::::

## Prerequisites [ece-ccs-ccr-prerequisites]

Expand Down Expand Up @@ -57,21 +60,6 @@ The steps, information, and authentication method required to configure CCS and
* [From a self-managed cluster](/deploy-manage/remote-clusters/remote-clusters-self-managed.md)
* [From an ECK environment](ece-enable-ccs-for-eck.md)


## Remote clusters and network security [ece-ccs-ccr-network-security]

::::{note}
Network security isn’t supported for cross-cluster operations initiated from an {{ece}} environment to a remote {{ech}} deployment.
::::


For remote clusters configured using TLS certificate authentication, [network security](../security/network-security.md) can be enabled to restrict access to deployments that are used as a local or remote cluster without any impact to cross-cluster search or cross-cluster replication.

Traffic filtering for remote clusters supports two methods:

* [Filtering by IP addresses and Classless Inter-Domain Routing (CIDR) masks](../security/ip-filtering-ece.md)
* Filtering by Organization or {{es}} cluster ID with a Remote cluster type filter. You can configure this type of filter from the **Platform** > **Security** page of your environment or using the [{{ece}} API](https://www.elastic.co/docs/api/doc/cloud-enterprise) and apply it from each deployment’s **Security** page.

::::{note}
When setting up traffic filters for a remote connection to an {{ece}} environment, you also need to upload the region’s TLS certificate of the local cluster to the {{ece}} environment’s proxy. You can find that region’s TLS certificate in the **Security** page of any deployment of the environment initiating the remote connection. This is regardless of whether you are using API key or TLS Certificates (deprecated) to authenticate remote connections. This applies regardless of whether you are using API key or TLS Certificates (deprecated) to authenticate remote connections.
::::
If you have [network security policies](/deploy-manage/security/network-security-policies.md) applied to the remote cluster, you might need to take extra steps on the remote side to allow traffic from the local cluster. Some remote cluster configurations have limited compatibility with network security. To learn more, refer to [Remote clusters and network security](/deploy-manage/remote-clusters.md#network-security).
19 changes: 7 additions & 12 deletions deploy-manage/remote-clusters/ece-remote-cluster-ece-ess.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,11 @@ products:

# Connect {{ece}} deployments to an {{ecloud}} organization [ece-remote-cluster-ece-ess]

This section explains how to configure a deployment to connect remotely to clusters belonging to an {{ecloud}} organization.
This section explains how to configure an {{ece}} (ECE) deployment to connect remotely to clusters belonging to an {{ecloud}} organization.

::::{note}
If network security filters are applied to the remote cluster on {{ecloud}}, the remote cluster administrator must configure an [IP filter](/deploy-manage/security/ip-filtering-cloud.md) to allow connections from the IP addresses (or CIDR ranges) of the local ECE allocator hosts. For more information, refer to [Remote clusters and network security](/deploy-manage/remote-clusters.md#network-security).
::::

## Allow the remote connection [ece_allow_the_remote_connection_3]

Expand Down Expand Up @@ -147,22 +151,13 @@ On the local cluster, add the remote cluster using {{kib}} or the {{es}} API.
* **Name**: This *cluster alias* is a unique identifier that represents the connection to the remote cluster and is used to distinguish local and remote indices.

When using API key authentication, this alias must match the **Remote cluster name** you configured when adding the API key in the Cloud UI.
* **Proxy address**: This value can be found on the **Security** page of the {{ece}} deployment you want to use as a remote.<br>
* **Proxy address**: This value can be found on the **Security** page of the {{ech}} deployment you want to use as a remote.<br>

::::{tip}
If you’re using API keys as security model, change the port into `9443`.
::::

* **Server name**: This value can be found on the **Security** page of the {{ece}} deployment you want to use as a remote.

:::{image} /deploy-manage/images/cloud-enterprise-ce-copy-remote-cluster-parameters.png
:alt: Remote Cluster Parameters in Deployment
:screenshot:
:::

::::{note}
If you’re having issues establishing the connection and the remote cluster is part of an {{ece}} environment with a private certificate, make sure that the proxy address and server name match with the the certificate information. For more information, refer to [Administering endpoints in {{ece}}](/deploy-manage/deploy/cloud-enterprise/change-endpoint-urls.md).
::::
* **Server name**: This value can be found on the **Security** page of the {{ech}} deployment you want to use as a remote.

4. Click **Next**.
5. Click **Add remote cluster** (you have already established trust in a previous step).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@ products:

This section explains how to configure a deployment to connect remotely to clusters belonging to a different {{ece}} environment.

::::{note}
If network security filters are applied to the remote cluster on ECE, the remote cluster administrator must configure an [IP filter](/deploy-manage/security/ip-filtering-ece.md) to allow connections from the IP addresses (or CIDR ranges) of the local ECE allocator hosts. For more information, refer to [Remote clusters and network security](/deploy-manage/remote-clusters.md#network-security).
::::

## Allow the remote connection [ece_allow_the_remote_connection_2]

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@ products:

This section explains how to configure a deployment to connect remotely to clusters belonging to the same {{ece}} environment.

::::{note}
If network security filters are applied to the remote cluster, the remote cluster administrator must configure a [remote cluster filter](/deploy-manage/security/remote-cluster-filtering.md), using either the ECE environment ID or the Elasticsearch cluster ID of the local cluster as the filtering criteria. For more information, refer to [Remote clusters and network security](/deploy-manage/remote-clusters.md#network-security).
::::

## Allow the remote connection [ece_allow_the_remote_connection]

Expand Down
4 changes: 4 additions & 0 deletions deploy-manage/security/_snippets/associate-filter-ece.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
1. Open the deployment management page in the Cloud UI.
2. Select the **Security** tab on the left-hand side menu bar.
3. Under **Traffic filters**, select **Apply filter**.
4. Choose the filter you want to apply and select **Apply filter**.
4 changes: 4 additions & 0 deletions deploy-manage/security/_snippets/detach-filter-ece.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
1. Open the deployment management page in the Cloud UI.
2. Select the **Security** tab on the left-hand side menu bar.
3. Under **Traffic filters**, choose the filter you want to detach and select the **X** icon in the **Actions** column.
4. In the confirmation dialog, select **Remove filter**.
Loading
Loading