1
0
mirror of https://github.com/smallstep/cli.git synced 2026-10-24 11:19:19 +03:00
Commit Graph

38 Commits

Author SHA1 Message Date
Carl Tashian
5b50ed3b49 Fix proxycommand hang when server closes before stdin closes
proxyDirect waited for both copy goroutines via wg.Wait(). When the
server closes the connection mid-session, the stdin->conn goroutine
stays blocked reading a stdin that never reaches EOF (the ssh client
holds the proxycommand's stdin open until it exits), deadlocking until
an OS-level timeout reaps the process.

Return as soon as either direction finishes instead. Extracted a
testable proxyDirectWithIO and added a regression test.

Fixes #1641

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-09 08:27:53 -07:00
Herman Slatman
de85fd0cef Use github.com/smallstep/cli-utils and reorder imports 2024-09-30 13:25:46 +02:00
Mariano Cano
2a6e644000 Add console flag to ssh commands
This commit adds the `--console` flag to the following commands:
 * `step ssh certificate`
 * `step ssh config`
 * `step ssh hosts`
 * `step ssh login`
 * `step ssh proxycommand`
2024-07-15 18:47:24 -07:00
Mariano Cano
73429de6ea Move crypto/sshutil to an internal folder 2022-10-04 16:38:11 -07:00
Mariano Cano
116600896d Use pemutil, randutil, and keyutil from go.step.sm/crypto 2022-09-30 14:30:40 -07:00
Mariano Cano
25ce40805b Add the --provisioner-password-file to proxycommand.
Machines doing ssh client connections might want to use a JWK
provisioner to create the SSH certificate, this change allows
to automatically create the token if --provisioner and
--provisioner-password-file are passed.
2022-02-14 15:21:39 -08:00
Mariano Cano
2c2a8b5e79 Rename function 2022-02-01 14:17:37 -08:00
max furman
2eccb2be3d Fixing a load of errors from the PR review 2021-11-10 23:18:33 -08:00
max furman
f816f1a621 move errs package to cli-utils 2021-10-27 15:55:18 -07:00
max furman
a8c2310160 Add context flag to all relevant commands 2021-10-27 15:55:17 -07:00
max furman
860c213b97 Initial step path contexts commit
- move config and command packages to cli-utils
2021-10-27 15:55:16 -07:00
max furman
70cebf51ab A few fixes for admin workflow commands and ...
- <path> to <file> everywhere
2021-07-08 16:34:53 -07:00
max furman
cce2ea8ef2 Admin workflow CLI v1 2021-07-08 16:31:37 -07:00
Mariano Cano
96cefcc638 Clarify some comments. 2021-05-18 17:07:35 -07:00
Mariano Cano
dd2d656a5b Clarify comment for OIDC tokens. 2021-04-29 12:23:51 -07:00
Mariano Cano
6ba999be68 Revert "Remove principals when OIDC provisioner is used."
This reverts commit 0c3921f1aa.
2021-04-29 12:09:48 -07:00
Mariano Cano
0c3921f1aa Remove principals when OIDC provisioner is used.
OIDC provisioners use an identity function to get the principals
for a given email, so there's no need to provide principals.
Moreover, if the email and principal does not match
`step ssh proxycommand` will fail if the username does not match
the email address.

For an unknown reason this feature was removed in an unrelated
commit: smallstep/cli@2c9b200

Fixes smallstep/certificates#550
2021-04-28 19:55:46 -07:00
Mariano Cano
d2bce30295 Add local part of an email and email as a principals.
For user certificates, if an email is passed as a principal, include
in the principals list the email, and the local-part. This imitates
the behavior for OIDC provisioners on other provisioners like JWK.

On `step ssh certificate` we will only include them if no principals
are passed using the `--principal` flag.

Fixes #389
2020-10-13 14:49:19 -07:00
Mariano Cano
7061940e7e Unify the way the flags are printed in markdown files. 2020-10-01 17:01:33 -07:00
Mariano Cano
2c9b200510 Add missing key ids. 2020-09-02 18:17:41 -07:00
Mariano Cano
323847349a Revert "Remove ssh template flags and parameters."
This reverts commit b5cf069f97.
2020-08-27 16:57:40 -07:00
Mariano Cano
b5cf069f97 Remove ssh template flags and parameters. 2020-08-14 11:46:27 -07:00
Mariano Cano
0fdbf20b22 Add --set and --set-file flags to the necessary ssh parameters. 2020-08-04 18:33:52 -07:00
Mariano Cano
3c4aa2228d Fix lint errors. 2020-01-28 13:34:00 -08:00
Mariano Cano
abe8443629 Update certificates and addapt api. 2020-01-28 13:34:00 -08:00
Mariano Cano
88d192a4ab Improve step ssh docs. 2020-01-28 13:34:00 -08:00
Mariano Cano
62f1090c96 Remove expired keys. 2020-01-28 13:34:00 -08:00
Mariano Cano
e5cf3de1f5 Remove principals on OIDC and write identity in proxycommand. 2020-01-28 13:34:00 -08:00
Mariano Cano
72c9890c82 Simplify look for user key. 2020-01-28 13:34:00 -08:00
Mariano Cano
835c7ca1b2 Only check for signed keys in proxycommand. 2020-01-28 13:34:00 -08:00
Mariano Cano
7c05315943 Add support for proxycommand using the ca /ssh/bastion request. 2020-01-28 13:33:59 -08:00
Mariano Cano
d92c2d961c Fix proxycommand with bastion. 2020-01-28 13:33:59 -08:00
Mariano Cano
62ee61a156 Fix bastion hostname 2020-01-28 13:33:59 -08:00
Mariano Cano
56f2b2db1f Addapt proxycommand to new api. 2020-01-28 13:33:59 -08:00
max furman
b8d289b654 sshpop provisioner + ssh renew | revoke | rekey 2020-01-28 13:33:59 -08:00
Mariano Cano
4eac489b80 Fix registry endpoint and get path for ssh. 2020-01-28 13:33:59 -08:00
Mariano Cano
a447edafd2 Remove comment used for testing. 2020-01-28 13:33:59 -08:00
Mariano Cano
e15938251f Add step ssh proxycommand.
Fixes smallstep/ca-component#211
2020-01-28 13:33:59 -08:00