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:
Copied!1Platform service → responder (platform) ← tunnel ← secure tunnels initiator (your network) → destination system
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:
The secure tunnels initiator is deployed and managed by Palantir into an environment within your network. You are not required to download, install, or upgrade any software manually. Instead, token issuance, token rotation, TLS certificate provisioning, configuration delivery, and version upgrades are all 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 installation methods:
| Method | Availability |
|---|---|
| Helm chart managed by Apollo | Available |
Deploying a Helm chart through Apollo is currently the only available installation method for the secure tunnels initiator. Additional methods will be added in future releases.
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.
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.