You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+20Lines changed: 20 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,6 +3,26 @@
3
3
* All changes to the package starting with v0.3.1 will be logged here.
4
4
* As of v1.4.0 release candidates will be published in an effort to get new features out faster while still allowing time for full QA testing before moving the release candidate to a full release.
5
5
6
+
7
+
## v1.4.0rc4 [2023-06-22]
8
+
#### What's New
9
+
*`pybritive ssh gcp identity-aware-proxy` command - supports OS Login and SSH Instance Metadata
10
+
11
+
#### Enhancements
12
+
* Support for `sso_idp` in the tenant configuration block of the config file. Set with `configure update tenant-<name> sso_idp <value>`. This will enable automatic re-direction to your identity provider, thus eliminating a manual step when authenticating to your tenant.
13
+
14
+
#### Bug Fixes
15
+
* Properly catch and error when Cognito tokens have been invalidated.
16
+
17
+
#### Dependencies
18
+
* Fix dependabot alert for `requests` - https://github.com/britive/python-cli/security/dependabot/4
19
+
* Fix dependabot alert for `cryptography` - https://github.com/britive/python-cli/security/dependabot/5
Copy file name to clipboardExpand all lines: docs/index.md
+83-1Lines changed: 83 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -264,7 +264,11 @@ The `ssh` command facilitates using the native SSH protocol to connect to privat
264
264
265
265
The goal is to allow all functionality offered by the SSH protocol like local port forwarding to access private resources and `scp` to copy files to the remote host.
266
266
267
-
At launch only AWS EC2 is supported. The requirements for using SSH with EC2 instances are provided below.
267
+
AWS and GCP are supported.
268
+
269
+
### AWS
270
+
271
+
The requirements for using SSH with EC2 instances are provided below.
268
272
269
273
* EC2 instance must have the Systems Manager agent installed and operational.
270
274
* EC2 instance must have the EC2 Instance Connect agent installed and operational (if using `--push-public-key`).
@@ -320,6 +324,84 @@ If `aws-region` is omitted then credentials for Session Manager and EC2 Instance
320
324
321
325
The command `ssh aws config` can be invoked to generate the above `Match` directives.
322
326
327
+
### GCP
328
+
329
+
The requirements for using SSH with GCP compute engine instances are provided below.
330
+
331
+
*`gcloud` CLI must be installed in the environment and `gcloud auth login` already performed.
332
+
* Instance must accept SSH key from either [OS Login](https://cloud.google.com/compute/docs/oslogin/set-up-oslogin) or [SSH Instance Metadata](https://cloud.google.com/compute/docs/connect/add-ssh-keys#metadata) (if using `--push-public-key`).
333
+
* If using OS Login two-factor authentication cannot be enabled.
334
+
* The caller must have appropriate permissions to use identity aware proxy (for all `--key-source`s) and push a public key via OS Login or SSH Instance Metadata (if using `--push-public-key`).
335
+
* The caller's environment must have the `gcloud` cli installed and `gcloud auth login` already performed.
336
+
* The caller must use OpenSSH (and the SSH config file). Other SSH implementations are not currently supported.
337
+
338
+
There are 3 ways that `pybritive` can help proxy an SSH session to a private compute instance.
339
+
340
+
* Using just Identity Aware Proxy (IAP) SSH forwarding to establish the network path over which the SSH protocol will operate. It is left to the caller then to handle SSH authentication using whichever mechanism has already been established.
* Using IAP SSH forwarding along with pushing a randomly generated SSH key pair public key via OS Login or Instance Metadata and identifying the private key via static path in the `IdentityFile` parameter.
* Using IAP SSH forwarding along with pushing a randomly generated SSH key pair public key via OS Login or Instance Metadata and adding the private key to the `ssh-agent` via `ssh-add` so it is available without having to specify the `IdentityFile` parameter.
0 commit comments