teleport/lib/services
Sasha Klizhentas 838e75468c Add support for ProxyJump.
This commit implements #2543

In SSH terms ProxyJump is a shortcut for SSH client
connecting the proxy/jumphost and requesting .port forwarding to the
target node.

This commit adds support for direct-tcpip request support
in teleport proxy service that is an alias to the existing proxy
subsystem and reuses most of the code.

This commit also adds support to "route to cluster" metadata
encoded in SSH certificate making it possible to have client
SSH certificates to include the metadata that will cause the proxy
to route the client requests to a specific cluster.

`tsh ssh -J proxy:port ` is supported in a limited way:

Only one jump host is supported (-J supports chaining
that teleport does not utilise) and tsh will return with error
in case of two jumphosts: -J a,b will not work.

In case if `tsh ssh -J user@proxy` is used, it overrides
the SSH proxy coming from the tsh profile and port-forwarding
is used instead of the existing teleport proxy subsystem
2019-07-26 10:58:11 -07:00
..
legacy Events and GRPC API 2018-12-10 17:20:24 -08:00
local Add test coverage for proxy watcher. 2019-05-14 11:26:45 -07:00
suite Add test coverage for proxy watcher. 2019-05-14 11:26:45 -07:00
authentication.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
authority.go Add support for ProxyJump. 2019-07-26 10:58:11 -07:00
clusterconfig.go Add ability to disable local auth. 2019-05-07 11:06:06 -07:00
clustername.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
configuration.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
doc.go moving code around and splitting interfaces 2016-04-04 17:09:00 -07:00
events.go Use RADIX trees for prefix matching. (#2666) 2019-04-22 15:28:04 -07:00
github.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
github_test.go Add OSS support for kubernetes groups 2018-08-06 17:21:21 -07:00
identity.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
invite.go tctl: users add/ls and tokens ls json output 2019-04-25 14:22:49 -07:00
license.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
license_test.go Events and GRPC API 2018-12-10 17:20:24 -08:00
map_test.go Fix mapping of default implicit role 2018-08-22 19:40:04 -07:00
migrations_test.go Added support for nodes dialing back to cluster. 2019-04-26 15:41:45 -07:00
namespace.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
oidc.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
oidc_test.go Removed namespaces and expires from user interface. 2017-08-30 18:11:13 +00:00
parser.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
presence.go Refactor discovery protocol. 2019-05-14 11:26:45 -07:00
provisioning.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
proxywatcher.go Do not emit events in mirror mode. 2019-05-21 09:58:43 -07:00
remotecluster.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
resource.go Always allow usage of canonical resource names 2019-07-03 15:29:48 -07:00
role.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
role_test.go Events and GRPC API 2018-12-10 17:20:24 -08:00
saml.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
saml_test.go switch from client-go to apimachinery release-1.7 2017-08-28 18:25:39 -07:00
server.go Added support for nodes dialing back to cluster. 2019-04-26 15:41:45 -07:00
servers_test.go Events and GRPC API 2018-12-10 17:20:24 -08:00
services.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
services_test.go Events and GRPC API 2018-12-10 17:20:24 -08:00
session.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
statictokens.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
trust.go Detect remote cluster by SNI name 2018-09-28 11:00:36 -07:00
trustedcluster.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
tunnel.go Added support for nodes dialing back to cluster. 2019-04-26 15:41:45 -07:00
tunnelconn.go Configurable timeout for tunnel offline threshold. 2019-05-22 09:36:18 -07:00
types.pb.go Add ability to disable local auth. 2019-05-07 11:06:06 -07:00
types.proto Add ability to disable local auth. 2019-05-07 11:06:06 -07:00
user.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
user_test.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
wrappers.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00