TCP
Use the TCP server type to broker access to TCP-based services that StrongDM does not (yet) have a native integration for.
A TCP connection resource is unique in that the content of the TCP traffic is not recorded in our logs, only the traffic metadata (who accessed the resource, when, and how many bytes were transmitted and received). This behavior is different from what you experience with other StrongDM resources that support logging and auditing of actions taken by a user. Logs of TCP traffic are located in the Queries page in the Admin UI and are recorded after the close of the session.
The TCP connection resource may be used for a variety of types of resources that accept TCP connections, but are not currently supported by StrongDM. It provides the ability to use StrongDM to connect to unsupported resources, and have at least partial auditing support for them.
The TCP connection resource is not a valid way to connect to resource types that are distributed across more than one server (such as Kafka).
Limitations
StrongDM records metadata only (who, when, bytes in/out) for TCP resources. Payload/commands are not logged.
TLS works only if the client can disable hostname verification or allow invalid hostnames when connecting via StrongDM.
It is single-port only, meaning it's not suitable for protocols requiring multiple concurrent ports or distributed brokers (for example, Kafka).
Credentials are not stored. The TCP resource itself does not hold usernames and passwords; your client supplies any needed credentials at the time of connection.
Prerequisites
A StrongDM node (gateway, relay, or proxy worker) must be able to reach the target host on the specified port.
The target service is listening on a single TCP port and behaves correctly through a TCP proxy.
If using TLS, your client can relax hostname verification or accept non-matching hostnames.
(Recommended) Decide whether users will connect via Loopback Mode or Virtual Networking Mode; this affects bind IP/DNS and port override choices.
Add the Resource in StrongDM
Next, add the resource in StrongDM. This section provides instructions for adding the resource in either the StrongDM Admin UI, CLI, Terraform provider, or SDKs.
Set up and Manage With the Admin UI
If using the Admin UI to add the resource to StrongDM, use the following steps.
Log in to the StrongDM Admin UI and go to Resources > Servers.
Click Add server.
Select TCP as the Server Type and set other resource properties to configure how the StrongDM relay connects to the server.
Click create to save the resource.
Click the resource name to view status, diagnostic information, and setting details. After the server is created, the Admin UI displays that resource as unhealthy until the health checks run successfully. When the resource is ready, the Health icon indicates a positive, green status.
Set up and Manage With the CLI
This section provides general steps on how to configure and manage the resource using the StrongDM CLI. For more information and examples, please see the CLI Reference documentation.
In your terminal or Command Prompt, log in to StrongDM:
Run
sdm admin servers add rawtcp --helpto view the help text for the command, which shows you how to use the command and what options (properties) are available. Note which properties are required and collect the values for them.Run
sdm admin servers add rawtcp <RESOURCE_NAME>to add the resource in StrongDM. Set all required properties with their values. For example:Check that the resource has been added. The output of the following command should show the resource's name:
Set up and Manage With Terraform
This section provides an example of how to configure and manage the resource using the Terraform provider. For more information and examples, please see the Terraform provider documentation.
Set up and Manage With SDKs
In addition to the Admin UI, CLI, and Terraform, you may configure and manage your resource with any of the following SDK options: Go, Java, Python, and Ruby. Please see the following references for more information and examples.
Resource properties
The following table describes the settings available for your TCP resource.
Display Name
Required
Meaningful name to display the resource throughout StrongDM; exclude special characters like quotes (") or angle brackets (< or >)
Server Type
Required
TCP
Proxy Cluster
Required
Defaults to "None (use gateways)"; if using proxy clusters, select the appropriate cluster to proxy traffic to this resource
Hostname
Optional
The IP/DNS address used to connect to the resource from your gateway or relay, such as windows-server.strongdm.com
Port
Optional
Port to connect to the resource; default port value 49150
Connectivity Mode
Required
Select either Virtual Networking Mode, which lets users connect to the resource with a software-defined, IP-based network; or Loopback Mode, which allows users to connect to the resource using the local loopback adapter in their operating system; this field is shown if Virtual Networking Mode enabled for your organization
IP Address
Optional
If Virtual Networking Mode is the selected connectivity mode, an IP address value in the configured Virtual Networking Mode subnet in the organization network settings; if Loopback Mode is the selected connectivity mode, an IP address value in the configured Loopback IP range in the organization network settings (by default, 127.0.0.1); if not specified, an available IP address in the configured IP address space for the selected connectivity mode will be automatically assigned; this field is shown if Virtual Networking Mode and/or multi-loopback mode is enabled for your organization
Port Override
Optional
If Virtual Networking Mode is the selected connectivity mode, a port value between 1 and 65535 that is not already in use by another resource with the same IP address; if Loopback Mode is the selected connectivity mode, a port value between 1024 to 64999 that is not already in use by another resource with the same IP address; when left empty with Virtual Networking Mode, the system assigns the default port to this resource; when left empty for Loopback Mode, an available port that is not already in use by another resource is assigned; preferred port also can be modified later from the Port Overrides settings
DNS
Optional
If Virtual Networking Mode is the selected connectivity mode, a unique hostname alias for this resource; when set, causes the desktop app to display this resource's human-readable DNS name (for example, k8s.my-organization-name) instead of the bind address that includes IP address and port (for example, 100.64.100.100:5432)
Resource Tags
Optional
Resource Tags consisting of key-value pairs <KEY>=<VALUE> (for example, env=dev)
Test the Connection
In the Admin UI, view the new TCP resource and notice its health status. It turns green when StrongDM can reach the host/port.
Connect using the StrongDM desktop app or CLI to the bind address.
If your service uses TLS with strict hostname verification, configure your client to allow mismatched hostnames or disable verification when connecting through StrongDM.
If the resource remains unhealthy or the client fails to connect:
Verify the hostname/port and network path from the node.
Confirm the service listens on a single TCP port and doesn’t require side-channels.
Check firewall rules/ACLs.
Re-test with a simple TCP client (for example,
nc,openssl s_client) through the StrongDM bind address.
Review Queries in the Admin UI after the session ends for metadata (who, when, bytes). Content is not recorded.
If you encounter issues, please consult the StrongDM Help Center.
Last updated
Was this helpful?

