* Documentation for how to manage sessions using the CLI. UI is still a TODO. * Removing TODO under the UI tab.
186 lines
6.6 KiB
Plaintext
186 lines
6.6 KiB
Plaintext
---
|
|
layout: docs
|
|
page_title: Manage Sessions
|
|
sidebar_title: Manage Sessions
|
|
description: How to manage Boundary sessions
|
|
---
|
|
|
|
# Manage Sessions
|
|
|
|
[Sessions](/docs/concepts/domain-model/sessions) are Boundary resources which enables connecting to a [target](/docs/concepts/domain-model/target). A target allows Boundary users to define an endpoint with a default-port and a protocol to establish a session. Unless specified with a `-host-id` flag when establishing a session, Boundary will choose one [host](/docs/concepts/domain-model/hosts) from the target's host-sets to connect to at random.
|
|
|
|
In this section, we'll show you the basics of how to start a session in Boundary on the CLI and the admin console.
|
|
|
|
We assume you're running Boundary in dev mode and have a default target of `ttcp_1234567890`. We also assume you've logged in on the command line and the admin console. See the output of `boundary dev` for these login values.
|
|
|
|
## Authorize with a target
|
|
|
|
For this example, we're going to authorize that you are able to connect to a target which results in an Authorization Token being returned which can be used to connect to the session through the proxy.
|
|
|
|
<Tabs>
|
|
<Tab heading="CLI">
|
|
|
|
```bash
|
|
$ boundary targets authorize -id ttcp_1234567890
|
|
|
|
Target information:
|
|
Authorization Token: $LONG_STRING_OF_TEXT
|
|
Created Time: 2020-09-30T15:18:14-07:00
|
|
Host ID: hst_1234567890
|
|
Scope ID: p_1234567890
|
|
Session ID: s_h7vBIhH5SZ
|
|
Target ID: ttcp_1234567890
|
|
Type: tcp
|
|
User ID: u_1234567890
|
|
```
|
|
|
|
</Tab>
|
|
</Tabs>
|
|
|
|
#> Note: You can also provide a -host-id flag in the request above which ensures connecting using the provided Authorization Token will connect you to this specific host.
|
|
|
|
## Connect to the session
|
|
|
|
Once we have received an Authorization Token a Boundary session has been created and is waiting to proxy connection to the target. We'll now connect our local proxy to the Boundary deployment.
|
|
|
|
<Tabs>
|
|
<Tab heading="CLI">
|
|
|
|
```bash
|
|
$ boundary proxy -authz $LONG_STRING_OF_TEXT
|
|
|
|
Proxy listening information:
|
|
Address: 127.0.0.1
|
|
Connection Limit: 1
|
|
Expiration: Wed, 30 Sep 2020 23:18:14 MST
|
|
Port: 61991
|
|
Protocol: tcp
|
|
Session ID: s_h7vBIhH5SZ
|
|
```
|
|
|
|
</Tab>
|
|
</Tabs>
|
|
|
|
With the above address and port information we can now connect to our local proxy and have our tcp traffic sent through the boundary system.
|
|
|
|
```bash
|
|
$ ssh 127.0.0.1 -p 61991
|
|
...
|
|
```
|
|
|
|
For SSH connections we'll likely receive a notice that the authenticity of the host can't be established.
|
|
|
|
## Viewing Sessions
|
|
|
|
Beyond establishing sessions we can also view and cancel sessions. Here we'll view all sessions that have recently happened in the project scope that are default target is in.
|
|
|
|
<Tabs>
|
|
<Tab heading="CLI">
|
|
|
|
```bash
|
|
$ boundary sessions list -scope-id p_1234567890
|
|
|
|
Session information:
|
|
ID: s_h7vBIhH5SZ
|
|
Status: active
|
|
Created Time: 2020-09-30T15:18:14-07:00
|
|
Expiration Time: 2020-09-30T23:18:14-07:00
|
|
Updated Time: 2020-09-30T15:18:35-07:00
|
|
User ID: u_1234567890
|
|
Target ID: ttcp_1234567890
|
|
```
|
|
|
|
</Tab>
|
|
</Tabs>
|
|
|
|
We can get a more detailed view of this specific session by reading it.
|
|
|
|
<Tabs>
|
|
<Tab heading="CLI">
|
|
|
|
```bash
|
|
$ boundary sessions read -id s_h7vBIhH5SZ
|
|
|
|
Session information:
|
|
Auth Token ID: at_51XQGx0bzk
|
|
Created Time: Wed, 30 Sep 2020 15:18:14 MST
|
|
Endpoint: tcp://localhost:22
|
|
Expiration Time: 2020-09-30T23:18:14-07:00
|
|
Host ID: hst_1234567890
|
|
Host Set ID: hsst_1234567890
|
|
ID: s_h7vBIhH5SZ
|
|
Status: active
|
|
Target ID: ttcp_1234567890
|
|
Type: tcp
|
|
Updated Time: 2020-09-30T15:18:35-07:00
|
|
User ID: u_1234567890
|
|
Version: 2
|
|
|
|
Scope:
|
|
ID: p_1234567890
|
|
Name: Generated project scope
|
|
Parent Scope ID: o_1234567890
|
|
Type: project
|
|
|
|
States:
|
|
Start Time: Wed, 30 Sep 2020 15:18:35 MST
|
|
Status: active
|
|
|
|
End Time: Wed, 30 Sep 2020 15:18:35 MST
|
|
Start Time: Wed, 30 Sep 2020 15:18:14 MST
|
|
Status: pending
|
|
|
|
```
|
|
|
|
</Tab>
|
|
</Tabs>
|
|
|
|
## Cancelling Sessions
|
|
|
|
To shut down a session the person initiating the connection can disconnect all connections or a request can be sent to Boundary to cancel a specific session.
|
|
|
|
<Tabs>
|
|
<Tab heading="CLI">
|
|
|
|
```bash
|
|
$ boundary sessions cancel -id s_h7vBIhH5SZ
|
|
|
|
Session information:
|
|
Auth Token ID: at_51XQGx0bzk
|
|
Created Time: Wed, 30 Sep 2020 15:18:14 MST
|
|
Endpoint: tcp://localhost:22
|
|
Expiration Time: 2020-09-30T23:18:14-07:00
|
|
Host ID: hst_1234567890
|
|
Host Set ID: hsst_1234567890
|
|
ID: s_h7vBIhH5SZ
|
|
Status: canceling
|
|
Target ID: ttcp_1234567890
|
|
Type: tcp
|
|
Updated Time: 2020-09-30T15:19:17-07:00
|
|
User ID: u_1234567890
|
|
Version: 3
|
|
|
|
Scope:
|
|
ID: p_1234567890
|
|
Name: Generated project scope
|
|
Parent Scope ID: o_1234567890
|
|
Type: project
|
|
|
|
States:
|
|
Start Time: Wed, 30 Sep 2020 15:19:17 MST
|
|
Status: canceling
|
|
|
|
End Time: Wed, 30 Sep 2020 15:19:17 MST
|
|
Start Time: Wed, 30 Sep 2020 15:18:35 MST
|
|
Status: active
|
|
|
|
End Time: Wed, 30 Sep 2020 15:18:35 MST
|
|
Start Time: Wed, 30 Sep 2020 15:18:14 MST
|
|
Status: pending
|
|
```
|
|
|
|
</Tab>
|
|
</Tabs>
|
|
|
|
Boundary will then cancel the session and move it into a "Terminated" state.
|