[X2Go-User] x2goclient and HTTP proxy

Reinhard Tartler siretart at gmail.com
Sat May 19 17:19:47 CEST 2012


On Sat, May 12, 2012 at 6:30 PM, Maarten Boekhold <boekhold at gmail.com> wrote:
> Hi all,
>
> After a hiatus of a couple of years, I decided to try x2go again, since NX
> Client from Nomachine doesn't seem to handle an XFCE desktop very well. I
> was pleasantly surprised, x2go seems to have improved massively and works
> just beautifully. One thing I am missing however is the ability to
> establish a session through an HTTP proxy server (using HTTP CONNECT). NX
> Client 3.x does do this (but it seems it's not possible in the NX Client
> 4 beta client).
>
> I've done a little bit of research, and it looks like LIBSSH does have
> some facilities to support a "proxy command":

While this proxy command feature is a really cool feature, it has
nothing to do with http proxys.

>
>    ssh_options_set(my_ssh_session, SSH_OPTION_PROXYCOMMAND, "command");
>
> "command" in this case would be something like 'corkscrew' or
> 'proxytunnel'.
>
>    http://www.agroman.net/corkscrew/
>    http://proxytunnel.sourceforge.net/
>
> What are the chances that this SSH_OPTION_PROXYCOMMAND could be integrated
> into the x2go client? It looks like x2goclient is built using cygwin, and
> I believe that both corkscrew as well as proxytunnel can be built on
> cygwin as well. So I wonder if the following additions to x2goclient are
> possible:
>
> - Add the following GUI options to x2go sessions:
>    - HTTP proxy host: takes hostname/ip of your HTTP proxy
>    - HTTP proxy port: takes port of HTTP proxy
>    - HTTP proxy username : for optional authentication
>    - HTTP proxy password : for optional authentication
>    - I'm not sure if corkscrew supports proxy authentication...
> - On start of a session, if HTTP proxy host+port is specified, use
>  ssh_options_set() with command
>
>      corkscrew <proxy host> <proxy port> <remote host> <remote_ip>
>
>  (I *think* you can harcode %h and %p for the remote host and remote
>   ip...)
> - Add corkscrew to the x2goclient distribution
>

I'd suggest rather something else: Use corkscrew to ssh to your x2go
server and forward port 22 to your host by using something like this:

 ssh -luser -L2222:localhost:22 your.server.somewhere

Now you can use x2goclient to connect to 'localhost' port 2222.

This can be faciliated by a few lines in your ~/.ssh/config and the
ProxyCommand option ;-)

Cheers,
Reinhard


-- 
regards,
    Reinhard



More information about the x2go-user mailing list