Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ssh: add openssh controlmaster socket support #205

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

y3llowcake
Copy link

ssh: add openssh controlmaster socket support

Adds support for establishing SSH sessions over an existing "ControlMaster" [unix domain] socket in proxy mode.

Details of the protocol can be found here: https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.mux
More details about ControlMaster sockets can be found here: https://linux.die.net/man/5/ssh_config

Note that proxy mode is a relatively new feature of OpenSSH. If you are using an older version you will likely receive "unsupported request" during the handshake. I have successfully tested with OpenSSH_7.4p1.

golang/go#31874
golang/go#32958

@gopherbot
Copy link
Contributor

This PR (HEAD: a6941cd) has been imported to Gerrit for code review.

Please visit https://go-review.googlesource.com/c/crypto/+/383374 to see it.

Tip: You can toggle comments from me using the comments slash command (e.g. /comments off)
See the Wiki page for more info

@gopherbot
Copy link
Contributor

Message from Han-Wen Nienhuys:

Patch Set 1:

(4 comments)


Please don’t reply on this GitHub thread. Visit golang.org/cl/383374.
After addressing review feedback, remember to publish your drafts!

@gopherbot
Copy link
Contributor

Message from Han-Wen Nienhuys:

Patch Set 1:

(1 comment)


Please don’t reply on this GitHub thread. Visit golang.org/cl/383374.
After addressing review feedback, remember to publish your drafts!

seveas added a commit to seveas/herd that referenced this pull request Mar 19, 2023
Using golang/crypto#205 rebased on top of
x/crypto master, we can now connect using ControlMaster connections.

Won't be merged until that PR is in, as I really don't want to use a
forked x/crypto.
@seveas
Copy link

seveas commented Mar 19, 2023

Hi @y3llowcake!

Thanks for this, I've been wanting to support ControlMaster sockets in my ssh client. I've tested this pr on top of x/crypto master and it seems to work just fine. What's needed to get this merged?

@y3llowcake
Copy link
Author

I am not super familiar with the people and process for this project. The reviewer that was assigned to the PR hasn't commented, and there hasn't been much instruction on the issue thread, so it's unclear to me what the next steps are. I'll ping the issue thread again today, I suspect that's the best place to follow along and discuss: golang/go#32958

@gopherbot
Copy link
Contributor

Message from Damien Neil:

Patch Set 1:

(11 comments)


Please don’t reply on this GitHub thread. Visit golang.org/cl/383374.
After addressing review feedback, remember to publish your drafts!

@gopherbot
Copy link
Contributor

Message from Damien Neil:

Patch Set 1:

(3 comments)


Please don’t reply on this GitHub thread. Visit golang.org/cl/383374.
After addressing review feedback, remember to publish your drafts!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants