Secure tunnels are in the beta phase of development and a replacement for agent proxies. Functionality and configuration options may change during active development, and the feature may not be available on all enrollments. Contact your Palantir representative or Palantir Support before adopting secure tunnels for production workloads.
Secure tunnels provide a network path for services in the Palantir platform to reach systems on a separate, privately-hosted network, without exposing those systems to inbound connections. They serve the same purpose as an agent proxy; applications connect to a source as if it were directly reachable over the platform network, while all traffic is brokered through a component that runs inside your network.
Unlike an agent, which is a single downloadable program, secure tunnels are built from a set of managed components. The secure tunnels initiator is the only component that runs inside your network. This page explains its role and how to install and configure it within your network.
A secure tunnel is established by three components:
| Component | Location | Role |
|---|---|---|
| Initiator | Your network | Runs inside your network and makes only outbound connections to the platform. It initiates outbound connections to the control plane, establishes tunnels to the responder, and forwards brokered traffic to destination systems in your network. |
| Control plane | Palantir platform | Authenticates the secure tunnels initiator, issues and refreshes its access token, and serves as its network configuration. |
| Responder | Palantir platform | Accepts the tunnels opened by the secure tunnels initiator. Platform services route egress traffic to the responder, which carries it back through the tunnel. |
Because the secure tunnels initiator only makes outbound connections, you do not need to open any inbound ports or expose any endpoint in your network to the platform. The secure tunnels initiator opens tunnels to the responder; it establishes the connections outbound, and the platform then sends request traffic back over the open connections. When a platform service connects to a source that uses a secure tunnel, traffic flows as follows:

All connections between your network and the platform are encrypted with TLS and mutually authenticated.
The secure tunnels initiator is the only secure tunnels component that runs inside your network. It is a single-purpose Envoy ↗ proxy that connects to the platform using Envoy's reverse tunnel ↗ capability. The secure tunnels initiator establishes every connection outbound while the platform sends request traffic back. It has the following characteristics:
Secure tunnel initiators are organized into clusters and nodes:
A cluster is a logical group of secure tunnel initiators that provide access to the same network and destination systems. Egress policies are associated with the cluster, so every node in the cluster provides the same logical connectivity.
A node represents an individual secure tunnel initiator deployment within a cluster. You can add multiple nodes to improve availability and distribute traffic. Each node establishes and maintains its own outbound tunnels to the platform.
Before deploying the secure tunnels initiator, create a cluster and node to establish its identity in the platform. The initiator uses the generated cluster and node resource identifiers (RIDs) to authenticate with the control plane and register as the correct node.
Cluster and node names must be unique within the enrollment. Choose descriptive names that identify the network and initiator deployment they represent.
Go to the Network egress section of Control Panel.
Open the Secure Tunnels tab.
Select Create cluster, enter a unique cluster name, and then select Create cluster.

Select Create node, enter a unique node name and then select Create.

The secure tunnels initiator runs as one or more nodes in an environment within your network. You can use a Data Connection agent or Apollo to manage the lifecycle of these nodes. With either deployment model, token issuance, token rotation, TLS certificate provisioning, and configuration delivery are handled for you once the initiator is deployed.
An infrastructure or platform administrator is responsible for the following:
The secure tunnels initiator supports the following deployment models:
| Deployment model | Lifecycle management |
|---|---|
| Managed by a Data Connection agent | An existing or new Data Connection agent automatically restarts and upgrades the node. |
| Helm chart managed by Apollo | Apollo deploys, restarts, and upgrades the node. |
Before installing the secure tunnels initiator, confirm the following:
The environment that runs the secure tunnels initiator must be able to make outbound connections to the platform. No inbound connectivity to your network is required.
Allow outbound (egress) network access from that environment to your Palantir platform instance. If your network denies egress by default, you may need to open a firewall or configure a proxy to permit these outbound connections.
You can use an existing Data Connection agent or set up a new agent to manage a secure tunnels node. The agent automatically restarts the node after failures and upgrades it as new versions are released. The agent can continue running its regular Data Connection jobs in parallel.
To assign a Data Connection agent as the lifecycle manager for a node:
Open the node and select Edit lifecycle management.

Select Use a Data Connection agent.
Search for and select the agent that will manage the node.
Select Save.

The secure tunnels initiator is deployed as a Helm chart managed through Apollo, Palantir's continuous deployment system. Apollo deploys the chart into the prepared environment and configures it with the following:
Once the secure tunnels initiator is running, it establishes tunnels to the responder and reports its health to Apollo. No further action is required to keep the secure tunnels initiator authenticated or updated.
The secure tunnels initiator enforces a deny-by-default egress allowlist. A destination system is only reachable through the tunnel if it matches an entry in the allowlist. With an empty allowlist, all egress is blocked.
The allowlist is a list of CIDR blocks with an associated port or port range. Each entry has the following fields:
| Field | Required? | Description |
|---|---|---|
cidrBlock | Yes | The IP range to allow, in CIDR notation. Use a /32 suffix to allow a single IPv4 address. |
port | Yes | The destination port to allow. |
endPort | No | The end of an inclusive port range that begins at port. If omitted, only port is allowed. |
For example, the following allowlist permits connections to a single host on ports 7000 through 9000, and to a subnet on port 443:
Copied!1 2 3 4 5 6allowListedCidrs: - cidrBlock: '192.168.1.1/32' port: 7000 endPort: 9000 - cidrBlock: '192.168.2.2/24' port: 443
To allow all egress, allow every address on every port:
Copied!1 2 3 4allowListedCidrs: - cidrBlock: '0.0.0.0/0' port: 1 endPort: 65535
Connections to a destination that does not match any allowlist entry are rejected by the secure tunnels initiator.
Regardless of the allowlist, the secure tunnels initiator always denies egress to link-local address ranges, including the cloud instance metadata service (for example, 169.254.169.254). These destinations remain blocked even when the allowlist permits all egress, which prevents tunneled traffic from reaching sensitive infrastructure endpoints in the environment where the secure tunnels initiator runs.
Once the secure tunnels initiator is running and its egress allowlist is configured, create a secure tunnel egress policy in Control Panel and assign it to a source in Data Connection to route the source's traffic through the tunnel.