-
Notifications
You must be signed in to change notification settings - Fork 2k
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 ssh partial success for ssh server 2FA #89
base: master
Are you sure you want to change the base?
Conversation
Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). 📝 Please visit https://cla.developers.google.com/ to sign. Once you've signed (or fixed any issues), please reply here (e.g. What to do if you already signed the CLAIndividual signers
Corporate signers
ℹ️ Googlers: Go here for more info. |
I signed it! |
CLAs look good, thanks! ℹ️ Googlers: Go here for more info. |
This PR (HEAD: 40738d4) has been imported to Gerrit for code review. Please visit https://go-review.googlesource.com/c/crypto/+/175978 to see it. Tip: You can toggle comments from me using the |
Message from Gobot Gobot: Patch Set 1: Congratulations on opening your first change. Thank you for your contribution! Next steps: Most changes in the Go project go through a few rounds of revision. This can be During May-July and Nov-Jan the Go project is in a code freeze, during which Please don’t reply on this GitHub thread. Visit golang.org/cl/175978. |
Message from Benny Siegert: Patch Set 1: Run-TryBot+1 (3 comments) Can you please add a test? Please don’t reply on this GitHub thread. Visit golang.org/cl/175978. |
Message from Gobot Gobot: Patch Set 1: TryBots beginning. Status page: https://farmer.golang.org/try?commit=19bc885e Please don’t reply on this GitHub thread. Visit golang.org/cl/175978. |
Message from Gobot Gobot: Patch Set 1: TryBot-Result+1 TryBots are happy. Please don’t reply on this GitHub thread. Visit golang.org/cl/175978. |
This PR (HEAD: ef0d1a6) has been imported to Gerrit for code review. Please visit https://go-review.googlesource.com/c/crypto/+/175978 to see it. Tip: You can toggle comments from me using the |
Test case added |
This PR (HEAD: a7099ee) has been imported to Gerrit for code review. Please visit https://go-review.googlesource.com/c/crypto/+/175978 to see it. Tip: You can toggle comments from me using the |
Message from Filippo Valsorda: Patch Set 3: #17889 should be turned into a proposal. Please don’t reply on this GitHub thread. Visit golang.org/cl/175978. |
retry next Auth when auth failed
We found a Contributor License Agreement for you (the sender of this pull request), but were unable to find agreements for all the commit author(s) or Co-authors. If you authored these, maybe you used a different email address in the git commits than was used to sign the CLA (login here to double check)? If these were authored by someone else, then they will need to sign a CLA as well, and confirm that they're okay with these being contributed to Google. ℹ️ Googlers: Go here for more info. |
This PR (HEAD: 911d13b) has been imported to Gerrit for code review. Please visit https://go-review.googlesource.com/c/crypto/+/175978 to see it. Tip: You can toggle comments from me using the |
Really wish we could use this... |
I too want for something to help with 2fa. |
Here is the way to include 2FA or any other questions you want
create a []Question struct list under Server struct to follow all your questions |
I have found that the solution that uses In the scenario where we have PublicKey followed by Password auth, there is a bug caused by the fact that the client calls the server twice, firstly to pre-auth the key and then secondly to actually auth. The response from I worked around it with this. But I don't know if it is the ideal solution:
|
@adampointer-form3 The ssh client will try the methods listed by the server, but if you configure NextAuthMethodsCallback as "publickey", then the client will not try "publickey" method until the client get ErrPartialSuccess err. It will not trigger publickey method cached problem. |
It has been quite some time, and this functionality is sorely needed -- any chance @LeeEirc could sign the CLA since that seems to be the hangup! |
Apologies for two posts but a related question: if this PR is forever dead due to CLA, what is the appropriate next step? Would it be useful for someone else to open a separate PR with @ibuler's code but removing the commit from @LeeEirc? Lee's code makes a fix but, for instance, I could make the same type of fix and sign the CLA to unstick it. |
I signed it! |
@ibuler I think the issue is that in your PR you accepted a commit from a third party (@LeeEirc ) and that means they have to sign it to. If you know them maybe you could give a nudge? Otherwise (and I am not a lawyer) I imagine one thing you could do is rebase your PR to remove his commit, and potentially re-implement their portion of the overall PR in your own way? |
Hi, @ibuler. I think what @slifty says above is accurate -- the issue is the inclusion of @LeeEirc's commit in your PR, because it means that now @LeeEirc would also be a contributor and would need to sign the CLA. So our options are:
|
This pull request does not work with public-key authentication as pointed out by @adampointer-form3. There should probably be a test to validate that. The current implementation only allows public-key authentication as the last method. If you try to return Lines 378 to 379 in c86fa9a
There are (at least) two other implementations that don't have this issue, #130 and #214. I like the proposed interface of the latter to avoid passing strings around. |
Adds ssh partial success error, and next auth methods call back, When auth methods call back return ErrPartialSuccess, then let client continue use nextAuthMethodsCallback return methods auth farther
I don't know if match RFC or not, Please check
#golang/go#17889
#golang/go#17934