Unable to SSH tunnel to hit private API
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- node.js, typescript
- Área
- backend, networking
Línea de trabajo
Comienza en ssh.connection?.forwardOut del ejemplo del issue y compara su comportamiento de reenvío con el túnel SSH de la línea de comandos. Comprueba la API de reenvío de node-ssh y verifica la solicitud de Axios a localhost:8081; se considera terminado cuando el endpoint de la API privada responde mientras la sesión SSH permanece abierta.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Hey all,
I have a server in a private subnet that is hosting a REST API on port 80 and a jump box in a public subnet that I would like to tunnel through so that I can invoke the REST API in the same execution with axios. When I run the command line command to tunnel everything works fine:
ssh -i "keypair.pem" -L 8081:<API HOST>:80 <JUMP BOX USER>@<JUMP BOX IP>
Once I run that command, as long as I keep the session open, I can hit the API through Postman/Axios. All good.
I am trying to do the same thing with this library, but the connection is not being exposed properly and I can't figure out why. Here is my code:
const ssh = new NodeSSH();
await ssh.connect({
host: '<JUMP BOX IP>',
username: '<JUMP BOX USER>',
privateKey: `RSA KEY`
});
ssh.connection?.forwardOut('127.0.0.1', 8081, <API HOST>, 80);
const response = await axios.get(`http://localhost:8081/<ENDPOINT PATH>`);
The connection opens fine and I can exec commands as I want. This issue may be a result of using async/await as well, but I would like to stick using that model if possible.
Thanks in advance for the eyes and any ideas.
- Lenguaje dominante
- TypeScript
- Estrellas
- 1k
- Forks
- 94
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de steelbrain/node-ssh
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
steelbrain/node-ssh#487 ·
-
ssh-certificate supportAbierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
steelbrain/node-ssh#482 · 3 comentarios ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 45/100
steelbrain/node-ssh#474 · 3 comentarios ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
steelbrain/node-ssh#473 · 1 comentario · 1 reacción ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 20/100
steelbrain/node-ssh#472 ·
Todos los issues de steelbrain/node-ssh
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
-
cli: `execCargoMetadata` decodes stdout per chunk, corrupting non-ASCII paths across pipe boundariesAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Dificultad 1/5 Menos de una hora Aptitud para principiantes 62/100
lingdojo/kana-dojo#34127 · 1 comentario · 5 reacciones ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 68/100
osmlab/name-suggestion-index#13104 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100