Skip to main content

tbot Reference

Report an Issue

This guide provides a comprehensive list of commands, arguments, and flags for tbot.

tbot is a CLI tool used with Machine & Workload Identity that programatically issues and renews short-lived certificates to any service account (e.g, a CI/CD server).

tbot [<flags>] <command> [<args> ...]

Global flags:

FlagDefaultDescription
-c, --confignonePath to a configuration file.
-d, --[no-]debugfalseEnables verbose logging to stdout.
--log-formattextControls the format of output logs. Can be json or text. Defaults to text.
--[no-]fipsfalseEnables FIPS compliance mode. This requires the FIPS binary is in use.
--[no-]insecurefalseInsecure configures the bot to trust the certificates from the Auth Server or Proxy on first connect without verification. Do not use in production.

Global environment variables:

VariableDefaultDescription
TBOT_CONFIG_PATHnonePath to a configuration file.
TBOT_DEBUGfalseEnables verbose logging to stdout.

tbot configure application

Configures tbot with an application output.

Usage:

tbot configure application --destination=DESTINATION --app=APP [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--appnoneThe name of the app in Teleport
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--[no-]oneshotfalseIf set, quit after the first renewal.
--[no-]specific-tls-extensionsfalseIf set, includes additional tls.crt, tls.key, and tls.cas for apps that require these file extensions
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot configure application-proxy

Configures tbot with a HTTP application proxy.

Usage:

tbot configure application-proxy --listen=LISTEN [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--listennoneThe socket URI on which the local proxy should listen, such as tcp://0.0.0.0:8080.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot configure application-tunnel

Configures tbot with an application tunnel.

Usage:

tbot configure application-tunnel --listen=LISTEN --app=APP [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--appnoneThe name of the app in Teleport
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--listennoneThe socket URI on which the tunnel should listen, such as tcp://0.0.0.0:8080.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot configure database

Configures tbot with a database output.

Usage:

tbot configure database --destination=DESTINATION --service=SERVICE --username=USERNAME --database=DATABASE [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--databasenoneThe name of the database available in the requested database service.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--format``The format of the credentials to generate. If specified, must be tls, mongo or cockroach.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--servicenoneThe database service name.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
--usernamenoneThe database user name.

tbot configure database-tunnel

Configures tbot with a database tunnel listener.

Usage:

tbot configure database-tunnel --listen=LISTEN --service=SERVICE --username=USERNAME --database=DATABASE [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--databasenoneThe name of the database available in the requested database service.
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--listennoneA socket URI to listen on, such as tcp://0.0.0.0:3306.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--servicenoneThe database service name.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
--usernamenoneThe database user name.

tbot configure identity

Configures tbot with an identity output for SSH and Teleport API access.

Usage:

tbot configure identity --destination=DESTINATION [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--clusternoneThe name of a specific cluster for which to issue an identity if using a leaf cluster.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--[no-]allow-reissuefalseAllow the credentials output by this command to be reissued.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot configure kubernetes

Configures tbot with a Kubernetes output.

Usage:

tbot configure kubernetes --destination=DESTINATION --kubernetes-cluster=KUBERNETES-CLUSTER [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--kubernetes-clusternoneThe name of the Kubernetes cluster in Teleport for which to fetch credentials.
--[no-]disable-exec-pluginfalseIf set, disables the exec plugin. This allows credentials to be used without the tbot binary.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot configure kubernetes/v2

Configures tbot with a Kubernetes V2 output.

Usage:

tbot configure kubernetes/v2 --destination=DESTINATION [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--label-selectornoneA set of Kubernetes labels to match in k1=v1,k2=v2 form. Repeatable.
--name-selectornoneAn explicit Kubernetes cluster name to include. Repeatable.
--[no-]disable-exec-pluginfalseIf set, disables the exec plugin. This allows credentials to be used without the tbot binary.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot configure legacy

Configures tbot with either a config file or a legacy output.

Usage:

tbot configure legacy [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--data-dirnoneDirectory to store internal bot data. Access to this directory should be limited.
--destination-dirnoneDirectory to write short-lived machine certificates.
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot configure noop

Configures tbot with no configured services to test onboarding config.

Usage:

tbot configure noop [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot configure ssh-multiplexer

Configures tbot with an SSH Multiplexer service.

Usage:

tbot configure ssh-multiplexer --destination=DESTINATION [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--[no-]enable-resumptionfalseIf set, disables SSH session resumption.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-commandnoneThe command to run as the SSH ProxyCommand, such as fdpass-teleport. Defaults to this tbot binary. Repeatable to add additional args.
--proxy-servernoneAddress of the Teleport Proxy Server.
--proxy-templates-pathnoneA path to a proxy template config file. Optional.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot configure workload-identity-api

Configures tbot with a workload identity API listener. Compatible with the SPIFFE Workload API and Envoy SDS.

Usage:

tbot configure workload-identity-api --listen=LISTEN [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--label-selectornoneA label-based selector for which workload identities to issue. Multiple labels can be provided using ','. Mutually exclusive with --name-selector.
--listennoneThe address on which the workload identity API should listen. This should either be prefixed with 'unix://' or 'tcp://'.
--name-selectornoneThe name of the workload identity to issue. Mutually exclusive with --label-selector.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot configure workload-identity-aws-roles-anywhere

Configures tbot with an output containing AWS credentials generated via AWS Roles Anywhere.

Usage:

tbot configure workload-identity-aws-roles-anywhere --destination=DESTINATION --role-arn=ROLE-ARN --profile-arn=PROFILE-ARN --trust-anchor-arn=TRUST-ANCHOR-ARN [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--label-selectornoneA label-based selector for which workload identities to issue. Multiple labels can be provided using ','. Mutually exclusive with --name-selector.
--name-selectornoneThe name of the workload identity to issue. Mutually exclusive with --label-selector.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--profile-arnnoneThe ARN of the Roles Anywhere profile to use.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--regionnoneThe AWS region to use. If unset, value will be used from the AWS config or the AWS_REGION environment variable.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--role-arnnoneThe ARN of the role to assume.
--session-durationnoneThe duration of the resulting AWS session and credentials. This may be up to 12 hours. When unset, this defaults to 6 hours.
--session-renewal-intervalnoneHow often the session should be renewed. This should be less than the session duration. When unset, this defaults to 1 hour.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
--trust-anchor-arnnoneThe ARN of the Roles Anywhere trust anchor to use.

tbot configure workload-identity-jwt

Configures tbot with a SPIFFE-compatible JWT SVID output.

Usage:

tbot configure workload-identity-jwt --destination=DESTINATION --audience=AUDIENCE [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--audiencenoneSpecify the audiences to include in the JWT. At least one audience must be specified.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--label-selectornoneA label-based selector for which workload identities to issue. Multiple labels can be provided using ','. Mutually exclusive with --name-selector.
--name-selectornoneThe name of the workload identity to issue. Mutually exclusive with --label-selector.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot configure workload-identity-x509

Configures tbot with a SPIFFE-compatible SVID output.

Usage:

tbot configure workload-identity-x509 --destination=DESTINATION [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--label-selectornoneA label-based selector for which workload identities to issue. Multiple labels can be provided using ','. Mutually exclusive with --name-selector.
--name-selectornoneThe name of the workload identity to issue. Mutually exclusive with --label-selector.
--[no-]include-federated-trust-bundlesfalseIf set, include federated trust bundles in the output.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot copy-binaries

Copies this tbot binary to a given destination.

Usage:

tbot copy-binaries [<flags>] <destination-dir>

Flags:

FlagDefaultDescription
--[no-]include-fdpassfalseIf set, also copy fdpass-teleport. It must be available in the same path as tbot.

Arguments:

ArgumentDefaultDescription
destination-dirnone (required)The destination path to write the copy of the tbot binary.

tbot db

Executes database commands through tsh.

Usage:

tbot db [<flags>] [<args>...]

Flags:

FlagDefaultDescription
--clusternoneThe cluster name. Extracted from the certificate if unset.
--destination-dirnoneThe destination directory to provide tsh for authentication.
--proxy-servernoneThe address of the Teleport proxy server to use, in host:port form.

Arguments:

ArgumentDefaultDescription
argsnone (optional)Arguments to tsh db ...; prefix with -- to ensure flags are passed correctly.

tbot help

Show help.

Usage:

tbot help [<command>...]

Arguments:

ArgumentDefaultDescription
commandnone (optional)Show help on command.

tbot init

Initializes a destination directory for writes from a separate bot user.

Usage:

tbot init [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--bot-usernoneEnables POSIX ACLs and defines Linux user that can read/write short-lived certificates to "--destination-dir".
--destination-dirnoneDirectory to write short-lived machine certificates.
--init-dirnoneIf using a config file and multiple destinations are configured, controls which destination dir to configure.
--[no-]cleanfalseIf set, removes unexpected files and directories from the destination.
--ownernoneDefines Linux "user:group" owner of "--destination-dir". Defaults to the Linux user running tbot if unspecified.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-usernoneEnables POSIX ACLs and defines Linux user that will read short-lived certificates from "--destination-dir".

tbot install systemd

Generates and installs a systemd unit file for a specified tbot configuration file.

Usage:

tbot install systemd [<flags>]

Flags:

FlagDefaultDescription
--groupteleportThe group that the service should run as. Defaults to 'teleport'.
--nametbotName for the systemd unit. Defaults to 'tbot'.
--[no-]anonymous-telemetryfalseEnable anonymous telemetry.
--[no-]forcefalseOverwrite existing systemd unit file if present.
--[no-]writefalseWrite the systemd unit file. If not specified, this command runs in a dry-run mode that outputs the generated content to stdout.
--pid-filenoneOverrides the PID file path that should be set in the systemd unit files.
--systemd-directory/etc/systemd/systemPath to the directory that the systemd unit file should be written. Defaults to '/etc/systemd/system'.
--userteleportThe user that the service should run as. Defaults to 'teleport'.

tbot keypair create

Creates a keypair to preregister for bound-keypair joining.

Usage:

tbot keypair create --proxy-server=PROXY-SERVER [<flags>]

Flags:

FlagDefaultDescription
--formattextOutput format, one of: text, json
--[no-]overwritefalseIf set, overwrite any existing keypair. If unset and a keypair already exists, its key will be printed for use.
--[no-]staticfalseIf set, creates a static private key instead of writing a mutable key into bot storage. If --static-key-path is unset, the key will be printed to the terminal.
--proxy-servernoneThe proxy server, which will be pinged to determine the current cryptographic suite in use.
--static-key-pathnoneIf set, writes the static private key to a file.
--storagenoneThe internal storage URI to write the keypair to, such as file:///var/lib/teleport/bot.

tbot migrate

Migrates a configuration file from an older version to the newest version. Outputs to stdout by default.

Usage:

tbot migrate [<flags>]

Flags:

FlagDefaultDescription
-o, --outputnoneThe path to write the generated configuration file to. If unset, it will be written to stdout.

tbot proxy

Starts a local TLS proxy via tsh to connect to Teleport in single-port mode.

Usage:

tbot proxy [<flags>] [<args>...]

Flags:

FlagDefaultDescription
--clusternoneThe cluster name. Extracted from the certificate if unset.
--destination-dirnoneThe destination directory to provide tsh for authentication.
--proxy-servernoneThe address of the Teleport proxy server to use, in host:port form.

Arguments:

ArgumentDefaultDescription
argsnone (optional)Arguments to tsh proxy ...; prefix with -- to ensure flags are passed correctly.

tbot spiffe-inspect

Inspects a SPIFFE Workload API endpoint to ensure it is working correctly.

Usage:

tbot spiffe-inspect --path=PATH

Flags:

FlagDefaultDescription
--pathnoneThe path to the SPIFFE Workload API endpoint to test.

tbot start application

Starts tbot with an application output.

Usage:

tbot start application --destination=DESTINATION --app=APP [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--appnoneThe name of the app in Teleport
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--[no-]oneshotfalseIf set, quit after the first renewal.
--[no-]specific-tls-extensionsfalseIf set, includes additional tls.crt, tls.key, and tls.cas for apps that require these file extensions
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot start application-proxy

Starts tbot with a HTTP application proxy.

Usage:

tbot start application-proxy --listen=LISTEN [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--listennoneThe socket URI on which the local proxy should listen, such as tcp://0.0.0.0:8080.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot start application-tunnel

Starts tbot with an application tunnel.

Usage:

tbot start application-tunnel --listen=LISTEN --app=APP [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--appnoneThe name of the app in Teleport
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--listennoneThe socket URI on which the tunnel should listen, such as tcp://0.0.0.0:8080.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot start database

Starts tbot with a database output.

Usage:

tbot start database --destination=DESTINATION --service=SERVICE --username=USERNAME --database=DATABASE [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--databasenoneThe name of the database available in the requested database service.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--format``The format of the credentials to generate. If specified, must be tls, mongo or cockroach.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--servicenoneThe database service name.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
--usernamenoneThe database user name.

tbot start database-tunnel

Starts tbot with a database tunnel listener.

Usage:

tbot start database-tunnel --listen=LISTEN --service=SERVICE --username=USERNAME --database=DATABASE [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--databasenoneThe name of the database available in the requested database service.
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--listennoneA socket URI to listen on, such as tcp://0.0.0.0:3306.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--servicenoneThe database service name.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
--usernamenoneThe database user name.

tbot start identity

Starts tbot with an identity output for SSH and Teleport API access.

Usage:

tbot start identity --destination=DESTINATION [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--clusternoneThe name of a specific cluster for which to issue an identity if using a leaf cluster.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--[no-]allow-reissuefalseAllow the credentials output by this command to be reissued.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot start kubernetes

Starts tbot with a Kubernetes output.

Usage:

tbot start kubernetes --destination=DESTINATION --kubernetes-cluster=KUBERNETES-CLUSTER [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--kubernetes-clusternoneThe name of the Kubernetes cluster in Teleport for which to fetch credentials.
--[no-]disable-exec-pluginfalseIf set, disables the exec plugin. This allows credentials to be used without the tbot binary.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot start kubernetes/v2

Starts tbot with a Kubernetes V2 output.

Usage:

tbot start kubernetes/v2 --destination=DESTINATION [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--label-selectornoneA set of Kubernetes labels to match in k1=v1,k2=v2 form. Repeatable.
--name-selectornoneAn explicit Kubernetes cluster name to include. Repeatable.
--[no-]disable-exec-pluginfalseIf set, disables the exec plugin. This allows credentials to be used without the tbot binary.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot start legacy

Starts tbot with either a config file or a legacy output.

Usage:

tbot start legacy [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--data-dirnoneDirectory to store internal bot data. Access to this directory should be limited.
--destination-dirnoneDirectory to write short-lived machine certificates.
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot start noop

Starts tbot with no configured services to test onboarding config.

Usage:

tbot start noop [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot start ssh-multiplexer

Starts tbot with an SSH Multiplexer service.

Usage:

tbot start ssh-multiplexer --destination=DESTINATION [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--[no-]enable-resumptionfalseIf set, disables SSH session resumption.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-commandnoneThe command to run as the SSH ProxyCommand, such as fdpass-teleport. Defaults to this tbot binary. Repeatable to add additional args.
--proxy-servernoneAddress of the Teleport Proxy Server.
--proxy-templates-pathnoneA path to a proxy template config file. Optional.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot start workload-identity-api

Starts tbot with a workload identity API listener. Compatible with the SPIFFE Workload API and Envoy SDS.

Usage:

tbot start workload-identity-api --listen=LISTEN [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--label-selectornoneA label-based selector for which workload identities to issue. Multiple labels can be provided using ','. Mutually exclusive with --name-selector.
--listennoneThe address on which the workload identity API should listen. This should either be prefixed with 'unix://' or 'tcp://'.
--name-selectornoneThe name of the workload identity to issue. Mutually exclusive with --label-selector.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot start workload-identity-aws-roles-anywhere

Starts tbot with an output containing AWS credentials generated via AWS Roles Anywhere.

Usage:

tbot start workload-identity-aws-roles-anywhere --destination=DESTINATION --role-arn=ROLE-ARN --profile-arn=PROFILE-ARN --trust-anchor-arn=TRUST-ANCHOR-ARN [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--label-selectornoneA label-based selector for which workload identities to issue. Multiple labels can be provided using ','. Mutually exclusive with --name-selector.
--name-selectornoneThe name of the workload identity to issue. Mutually exclusive with --label-selector.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--profile-arnnoneThe ARN of the Roles Anywhere profile to use.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--regionnoneThe AWS region to use. If unset, value will be used from the AWS config or the AWS_REGION environment variable.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--role-arnnoneThe ARN of the role to assume.
--session-durationnoneThe duration of the resulting AWS session and credentials. This may be up to 12 hours. When unset, this defaults to 6 hours.
--session-renewal-intervalnoneHow often the session should be renewed. This should be less than the session duration. When unset, this defaults to 1 hour.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
--trust-anchor-arnnoneThe ARN of the Roles Anywhere trust anchor to use.

tbot start workload-identity-jwt

Starts tbot with a SPIFFE-compatible JWT SVID output.

Usage:

tbot start workload-identity-jwt --destination=DESTINATION --audience=AUDIENCE [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--audiencenoneSpecify the audiences to include in the JWT. At least one audience must be specified.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--label-selectornoneA label-based selector for which workload identities to issue. Multiple labels can be provided using ','. Mutually exclusive with --name-selector.
--name-selectornoneThe name of the workload identity to issue. Mutually exclusive with --label-selector.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot start workload-identity-x509

Starts tbot with a SPIFFE-compatible SVID output.

Usage:

tbot start workload-identity-x509 --destination=DESTINATION [<flags>]

Environment variables:

VariableDefaultDescription
TELEPORT_AUTH_SERVERnoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
TELEPORT_BOT_TOKENnoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.
TELEPORT_PROXYnoneAddress of the Teleport Proxy Server.

Flags:

FlagDefaultDescription
-a, --auth-servernoneAddress of the Teleport Auth Server. Prefer using --proxy-server where possible.
--ca-pinnoneCA pin to validate the Teleport Auth Server; used on first connect.
--certificate-ttlnoneTTL of short-lived machine certificates.
--destinationnoneA destination URI, such as file:///foo/bar
--diag-addrnoneIf set and the bot is in debug mode, a diagnostics service will listen on specified address.
--join-methodnoneMethod to use to join the cluster. (azure, azure_devops, bitbucket, circleci, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm, terraform_cloud, oracle, bound_keypair, env0)
--join-urinoneAn optional URI with joining and authentication parameters. Individual flags for proxy, join method, token, etc may be used instead.
--label-selectornoneA label-based selector for which workload identities to issue. Multiple labels can be provided using ','. Mutually exclusive with --name-selector.
--name-selectornoneThe name of the workload identity to issue. Mutually exclusive with --label-selector.
--[no-]include-federated-trust-bundlesfalseIf set, include federated trust bundles in the output.
--[no-]oneshotfalseIf set, quit after the first renewal.
--pid-filenoneFull path to the PID file. By default no PID file will be created.
--proxy-servernoneAddress of the Teleport Proxy Server.
--reader-groupnoneAn additional group name or GID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--reader-usernoneAn additional user name or UID that should be allowed by ACLs to read this destination. Only valid for file destinations on Linux.
--registration-secretnoneFor bound keypair joining, specifies a registration secret for use at first join.
--registration-secret-pathnoneFor bound keypair joining, specifies a file containing a registration secret for use at first join.
--renewal-intervalnoneInterval at which short-lived certificates are renewed; must be less than the certificate TTL.
--static-key-pathnoneFor bound keypair joining, specifies a path to a static key.
--storagenoneA destination URI for tbot's internal storage, e.g. file:///foo/bar
--tokennoneA bot join token or path to file with token value, if attempting to onboard a new bot; used on first connect.

tbot tpm identify

Outputs identifying information related to the TPM detected on the system.

Usage:

tbot tpm identify

tbot version

Prints the version of this tbot binary.

Usage:

tbot version

tbot wait

Waits for a running tbot to become ready.

Usage:

tbot wait --diag-addr=DIAG-ADDR [<flags>]

Flags:

FlagDefaultDescription
--diag-addrnoneThe configured --diag-addr of a running bot, in host:port form.
--servicenoneAn optional name. If set, waits for only the named service to become healthy. If unset, waits for all services.
--timeoutnoneAn optional timeout. If set, returns an error if all specified services have reported healthy by the timeout.