-
Notifications
You must be signed in to change notification settings - Fork 226
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
Is there any support for proxies? #177
Comments
Do you have an option to use SSH TCP tunnelling? |
Yes I can use it, but I have many different websocket addresses, so SSH TCP tunnelling is not very convenient. |
We thought about making one of our internal libraries public (it brings support for proxies and supports such auth methods as basic, digest, ntlm, negotiate via SSPI / GSSAPI), but the support for proxies and their authentication methods should be part of another crate. We could introduce a I actually believe we've discussed it somewhere in issues here, but can't find the discussion by just quick search for proxies (perhaps it was in one or another PR) |
I created a branch that supports sock5 proxy in my forked repo, which may be helpful to you. |
Actually I guess support for http/https proxy will be more useful. As I write in snapview/tokio-tungstenite#168, to inspect secure websocket connections, the best way is to use some mitm proxy software, which requires the client to send domain (HTTP GET request) rather than resolved ip address. And BTW it also requires support for specifying custom CA certificate, to allow mitm work. For client behind firewall and only proxy allowed, there are many workarounds, such as using gost to convert almost any proxy protocol to a transparent one, as long as one don't need to inspect the raw stream or the target is plain, unsecured websocket. Still crate level support is always better, for crate users. |
Since we can use any stream that implementes |
I had a quick look at it and it seems like you can combine these easily, i.e. just use the |
good question, any solutions? |
Yes, it could have been more convenient, but |
@siegfried what makes them so "system"? Is |
Supported by CURL, Docker, wget and reqwest. Call it "standard", "convention" or whatever you like. Not interested at the definition debate. I agree with what @application-developer-DA said. |
so, any solution can solve the proxy problems? |
@Praying depends on the type of proxy. Here's secure websocket over HTTPS proxy: websockets-rs/rust-websocket#258 (comment) |
In particular, since both that approach and |
FYI. I'm using async-http-proxy with async-tungstenite and works well for general HTTP proxy (not SOCK5). I remember that the feature was tested with nginx, squid, haproxy, and proxy.py |
I resolved the problem with reference from copy the please use |
I can only access the dest host on another machine by ssh. If I can access it via proxy, it will be much convenient.
How can I do it for tungstenite?
The text was updated successfully, but these errors were encountered: