Add kube connect subcommand (#816)

This commit is contained in:
Jeff Mitchell authored and GitHub committed 2020-12-14 16:52:11 -05:00
1 parent d9a6bd1a60
commit b809d3f12a
4 files changed
+124 -5

No files matched your search

@@ -13,7 +13,8 @@ sets for this target contain the default host, which has the address
`127.0.0.1`. When we run `boundary connect` against this target, the single
available host will be selected and we'll open a local authenticated proxy to
the target host on the target's default port (`127.0.0.1:22`). Because this
target is proxying to our local SSH server, we can use our built-in `connect ssh` command to wrap the proxied TCP connection and SSH via Boundary:
target is proxying to our local SSH server, we can use our built-in `connect
ssh` command to wrap the proxied TCP connection and SSH via Boundary:
```
$ boundary connect ssh -target-id ttcp_1234567890
@@ -37,6 +38,21 @@ different style expected by different SSH clients. At the moment, besides `ssh`
(the default), the `boundary connect ssh` command supports `-style putty` to
support passing connection information to PuTTY.
## Selecting Targets
When using `boundary connect` you must identify the target used for connecting.
Convention in this documentation is to use the target ID as that's a single
value and most explicit; however, other flags are supported:
- `target-name`: The name of the target
- `target-scope-id`: The ID of the scope in which the target lives
- `target-scope-name`: The name of the scope in which the target lives
Note however that these are not uniquely identifying as names can be re-used
across scopes. As a result, when not using the target ID, you must use the
target's name in conjunction with the scope name or scope ID so that Boundary
can correctly identify the desired target.
## Built-In vs. Exec
Boundary comes with built-in wrappers for popular layer 7 connection protocols,
@@ -45,6 +61,8 @@ such as:
- `ssh`: defaults to the local SSH client (`ssh`)
- `postgres`: defaults to the official Postgres CLI client (`psql`)
- `rdp`: defaults to the built-in Windows RDP client (`mstsc`)
- `http`: defaults to `curl`
- `kube`: defaults to `kubectl`
However, `boundary connect` can accommodate executing clients even when there is
no built-in support for a specific client using `-exec`. The `-exec` flag is a