Comments (13)
Implemented in latest master.
from eternalterminal.
Alright, I tested this on my machines and it seems to work. I need other people to test before I can merge this in with confidence. This means you @michaelsuo @tonidy @bkarlson et al :-)
Please checkout branch reverse_tunnel, build the latest commit of that branch, and replace your et and etserver binaries on both client & server with the ones you build. Then you should be able to use reverse tunneling with the -rt command.
So, for example, to have the server communicate with a pbcopy daemon listening on port 2224:
et -rt="4321:2224" (hostname:port)
Then anything that goes to localhost:4321 on the server will be received by 2224 on the local machine. You can also do 2224:2224, but I made up 4321 so the example is easier to read.
from eternalterminal.
@bkarlson We are working on implementing jump hosts now but once that is done we can take a look at reverse tunnels.
from eternalterminal.
This works great except that I have a RemoteForward
option in my ~/.ssh/config
that causes a port conflict when I also use et -rt
. Can you cause et to always disable the RemoteForward
option when calling ssh? It doesn't seem like it should ever be correct for it to be enabled in ssh when using et.
from eternalterminal.
It would also be amazing to, in addition to the above comment, automatically parse the RemoteForward
option that ssh would have used and apply it as an et -rt
option.
from eternalterminal.
Ok I see the problem: this requires a remote forward, which is basically a tunnel in reverse. ET doesn't support this yet.
from eternalterminal.
There is a second issue where when tunneling fails, it b0rks your terminal.
from eternalterminal.
Any prospects on getting remote tunnels? I am trying to make work rsubl
(i.e. rmate
for Sublime) via roaming terminal, but both mosh and ET don't deliver in this area 😭
Thanks for great project!
from eternalterminal.
Same problem with @bkarlson, I need to use rmate for VS Code via terminal. Any progress on this issue @MisterTea ?
Thanks
from eternalterminal.
Sounds like this is the most needed feature that we don't already have :-). I should be able to code this up by next week.
from eternalterminal.
You can track progress by following this branch: https://github.com/MisterTea/EternalTCP/tree/reverse_tunnel
from eternalterminal.
@joshuarubin I think you should start a new issue for the ssh RemoteForward
conflict as this one has been closed and I think it is important that this gets corrected.
from eternalterminal.
from eternalterminal.
Related Issues (20)
- build error: "/usr/bin/ld: cannot find -lstdc++fs: No such file or directory" HOT 2
- Build failure with protobuf 23.3 HOT 2
- Dependency/Readme clean up HOT 1
- Reverse tunnel listen interface HOT 9
- 100% CPU Usage 😢 HOT 8
- Using a different ssh port HOT 1
- Building et on AL2 HOT 11
- "Error handling new client: Failed a call to readAll" HOT 4
- Starting multiple sessions for the same host in parallel leads to crash HOT 3
- Why does 6.2.8 install header and cmake files? HOT 6
- `--ssh-option=ControlPath=...` does not create any filesystem objects
- `et -t` does not accept IP address HOT 3
- APT-KEY is deprecated, update instructions for install HOT 3
- Segfault starting etserver on raspberry pi zero HOT 3
- package for pkgx HOT 1
- GCP IAP proxy HOT 3
- Ubuntu mantic et package (et_6.2.8-mantic1_amd64.deb) broken (bad dep on libtinfo5) HOT 9
- Need a good way to kill off ET sessions HOT 5
- A way to prevent sourcing the shell's configs twice HOT 1
- et needs ssh's -t option to support running tmux with et HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from eternalterminal.