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 support #27

Open
adamj-codethink opened this issue Sep 29, 2020 · 2 comments
Open

SSH support #27

adamj-codethink opened this issue Sep 29, 2020 · 2 comments
Assignees
Labels
help wanted Extra attention is needed protocol Everything related with the developer (git) experience

Comments

@adamj-codethink
Copy link

Is your feature request related to a problem? Please describe.
I may be mistaken, but i am wondering how GitProxy may work if someone uses SSH instead of HTTP when pulling/pushing to a Git repo.

Is this something that is already supported, if not could this be added?

Describe the solution you'd like
Support SSH when pulling/pushing to Github.

Describe alternatives you've considered
Of course HTTP/S will work for now.

Additional context
I did check the README and previous issues, but i could not find anything related to SSH, so this is just an issue to investigate.

@grovesy
Copy link
Member

grovesy commented Sep 29, 2020

[+ @maoo]
We had some discussions around this - right now, it doesn't support SSH, certainly on the list to do - need to look into how we can use the proxy as an SSH tunnel (certainly doable!)

Let's use this Issue to discuss the potential design/solutions/pitfalls

@grovesy grovesy added the help wanted Extra attention is needed label Sep 29, 2020
@grovesy grovesy self-assigned this Sep 29, 2020
@maoo
Copy link
Member

maoo commented Oct 31, 2023

The ssh2 library seems interesting, especially the server example posted on https://github.com/mscdex/ssh2#server-examples

Also found https://www.npmjs.com/package/tunnel-ssh , which is based on ssh2, though I could not find a way to intercept the connection payload.

The challenge, as far as I can see, is to connect SSH incoming connections with body parsing and routing currently developed for the http endpoint:

const proxyApp = require('express')();
...
proxyApp.use(bodyParser.raw(options));
proxyApp.use('/', routes);

See https://github.com/finos/git-proxy/blob/main/src/proxy/index.js#L16

@maoo maoo added the protocol Everything related with the developer (git) experience label Nov 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed protocol Everything related with the developer (git) experience
Projects
None yet
Development

No branches or pull requests

3 participants