-
-
Notifications
You must be signed in to change notification settings - Fork 173
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
multiplexing multiple xpra instances through one port #426
Comments
2013-09-22 15:10:35: antoine commented
|
2013-09-29 16:13:11: antoine commented
|
2013-09-30 12:38:58: antoine uploaded file
|
2013-10-02 11:29:40: antoine uploaded file
|
Sigh. As explained here: Caution: python-multiprocessing, threads and glib don't mix So the v5 patch does not run... as the idle_add calls never fire. |
2013-10-03 03:24:31: antoine uploaded file
|
2013-10-03 04:31:13: antoine commented
|
2013-10-03 04:33:43: antoine uploaded file
|
2013-10-03 12:05:23: antoine uploaded file
|
2013-10-04 15:05:57: totaam commented
|
Here's how you can use it with the file auth module (sys auth needs encryption to work as we refuse to send unencrypted system passwords over the sockets):
This should cause the proxy to forward the connection to the display specified in the auth file (in the example above: |
Many important fixes in r4541, r4537 should make this a lot more usable now. If things don't work as expected, check that you haven't got an old daemon/zombie running.
Feedback welcome! |
Some important fixes in r4605, r4606, r4608, etc I have identified the problem with the encryption: it isn't a problem with the encryption per se, the encryption just makes it more obvious. That's because when we close the proxy-side connection, we may still have a read blocked in IO wait state via |
The socket race is fixed in r4614 and encryption now works in proxy mode too (still only between client and proxy - between proxy and proxied server would require more configuration options, and is not a priority at the moment) Note: we use a socket timeout (defaults to 0.1s) to guarantee that the sockets are always in a consistent state when handing them over to the new subprocess. r4615 allows this timeout to be configured via the What is left for this release (the rest can go in an enhancement ticket for another release):
|
Most of the documentation found in this ticket has been added to the proxy server documentation page |
As of r4735, the proxy server should be able to exit cleanly. I think that's enough for this ticket, please test and close if it all works as expected. What we may want to add (in a new ticket):
|
2014-01-16 18:57:34: smo commented
|
With r5375 one can see a new socket for each proxy instance (this broke older versions which will need r5373 backported):
Which gives us an easier way of interacting and collecting information from proxy instances. It supports: "info", "version" and "stop". |
2014-03-21 00:19:48: smo commented
|
Hmmm, the warning message was wrong (fixed in r5878), "info" is handled, that's one of the main purposes of the proxy socket. It works fine here... (as usual) Is there anything in the proxy log? All I see (since it works):
|
Got it: don't use |
2014-03-25 18:02:46: smo commented
|
The problem is that in some situations, the servers may well be sitting behind firewalls that only allow outgoing connections to selected ports (usually 80 and 443 for web browsing).
One solution to this problem is to use SSH or a VPN server running on one of those ports, but these options have their own problems (key exchange, shell account access, etc)
r4326 implements a proof of concept proxy server (accessible via "
xpra proxy
"): the user connects to this server and after authentication (if required - usually/probably should be) the packets are forwarded to the real server. The encryption and compression is only enabled between client and proxy, and not between proxy and server. (though we could quite easily add options to change this)What is still needed to make this functional:
Other things this may be useful for:
The text was updated successfully, but these errors were encountered: