Hi Robert,

On  Fr 09 Mai 2014 15:24:10 CEST, Robert Izzard wrote:

Package: x2goserver
Version: 4.0.15-0~847

(x2goserver: 4.0.15-0~847~~ubuntu12.04.1 on Ubuntu Linux 12.04.4 LTS kernel 3.8.0-39-generic, x2goclient: 4.0.15-0~847~ubuntu14.04.1 on Ubuntu Linux 14.04 LTS kernel 3.14.3-031403-generic)
 
Please note: I have labelled package x2goserver, but the bug is displayed on x2goclient even though I *think* the bug is in the server somewhere (see below).

Sometimes after an abrupt (e.g. CTRL-C, probably also network
failure or laptop sleep/wake cycle) termination of x2goclient, I
cannot reconnect to the server. I get errors such as the dreaded
"Failure negotiating the session in stage '7'." and "Error: Wrong
version or invalid session authentication cookie." instead.

I am connecting through a proxy using ssh key-based
authentication (using "Try auto-login" with "ssh-agent or default
ssh key" on the proxy, although switching to password made no
difference). I can connect with ssh through the proxy with no
problem. I can *start* an x2go session with no problem. I can
restart a session with no problem *provided I cleanly exit
x2goclient* (e.g. by clicking on the close button on the window).
If I exit x2goclient with a CTRL-C in the terminal, I cannot
connect again. Note that I can connect to an NX session through
the proxy without any problem and this does not have the same
problem when CTRL-C.

Steps to repeat:
1) On the client, open a new desktop on the server using
x2goclient. (I am running KDE but I doubt it matters).
2) On the client, press CTRL-C to stop x2goclient.
3) On the client, try to reconnect -- it fails with errors (which
are very hard to copy-paste as they go so fast, this is a bug in
the GUI):

------------------------
NXPROXY - Version 3.5.0

Copyright (C) 2001, 2010 NoMachine.

See http://www.nomachine.com/ for more information.
Info: Proxy running in client mode with pid '7219'.
Session: Starting session at 'Thu May 8 17:33:51 2014'.
Info: Connecting to remote host 'localhost:31007'.
Info: Connection to remote proxy 'localhost:31007' established.
Error: The remote NX proxy closed the connection.
Error: Failure negotiating the session in stage '7'.
Error: Wrong version or invalid session authentication cookie.
Session: Terminating session at 'Thu May 8 17:33:51 2014'.
Session: Session terminated at 'Thu May 8 17:33:51 2014'.
------------------------

At this point the CPU usage of x2goclient jumps to 100% and I
have to kill it (although the GUI continues to respond). This is
just a minor annoyance at the moment.

And in .x2go/SESSION_ID/sessions on the client, similar warnings:

------------------------

Loop: PANIC! No shutdown of proxy link performed by remote proxy.
Loop: PANIC! The remote NX proxy closed the connection.
Loop: PANIC! Failure negotiating the session in stage '7'.
Loop: PANIC! Wrong version or invalid session authentication cookie.
------------------------

The server clearly detects the disconnect in its session.log,
followed by “Display failure detected” errors on attempted
reconnect:

-----------------------
running as X2Go Agent

NXAGENT - Version 3.5.0

Copyright (C) 2001, 2011 NoMachine.

See http://www.nomachine.com/ for more information.

Info: Agent running with pid '17414'.
Session: Starting session at 'Fri May 9 14:44:26 2014'.
Info: Proxy running in server mode with pid '17414'.
Info: Waiting for connection from 'localhost' on port '30004'.
Info: Accepted connection from '127.0.0.1'.
Info: Connection with remote proxy completed.
Info: Using ADSL link parameters 512/24/1/0.
Info: Using agent parameters 5000/10/50/0/0.
Info: Using cache parameters 4/4096KB/8192KB/8192KB.
Info: Using pack method '16m-png-9' with session
'unix-kde-depth_24'.
Info: Using ZLIB data compression 1/1/32.
Info: Using ZLIB stream compression 4/4.
Info: No suitable cache file found.
Info: Listening to X11 connections on display ':51'.
Info: Established X client connection.
Info: Using shared memory parameters 1/1/1/2048K.
Info: Using alpha channel in render extension.
Info: Not using local device configuration changes.
keyboard file created
SessionPath not defined
Session: Session started at 'Fri May 9 14:44:27 2014'.
Error: Failure reading from the peer proxy.
Error: Connection with remote peer broken.
Error: Please check the state of your network and retry.
Session: Display failure detected at 'Fri May 9 14:44:44 2014'.
Session: Suspending session at 'Fri May 9 14:44:44 2014'.
Session: Session suspended at 'Fri May 9 14:44:44 2014'.
Session: Resuming session at 'Fri May 9 14:45:11 2014'.
Info: Proxy running in server mode with pid '17414'.
Info: Waiting for connection from 'localhost' on port '30004'.
Info: Aborting the procedure due to signal '1'.
Session: Display failure detected at 'Fri May 9 14:45:27 2014'.
Session: Suspending session at 'Fri May 9 14:45:27 2014'.
Session: Session suspended at 'Fri May 9 14:45:27 2014'.
--------------

In .x2go/C-SESSION_ID/session.log on the server, I now have the
following text repeated over and over:

Session: Suspending session at 'Fri May 9 15:08:49 2014'.
[then hundreds or thousands of times, with later timestamps]



The problem appears to be with the file
/var/lib/x2go/x2go_sessions on the server. If I back this up
*before* hitting CTRL-C on the client, then do the CTRL-C, then
reinstate the backup, I can restart the session with no problems.
Clearly this is beyond the ability of a normal user (without root
on the server) and is not really a fix, even if it does work.



It seems that there is a problem with the x2go_sessions file on
the server being corrupted in some way when the remote session is
abruptly disconnected. This is a failure bad enough for me to
stop using x2go and go back to NX.

* Backing up this file all the time is not an option.

* Deleting this file and continuing, as suggested at
http://bugs.x2go.org/cgi-bin/bugreport.cgi?bug=323, is not an
option.

* Note that unlink suggested in
http://bugs.x2go.org/cgi-bin/bugreport.cgi?bug=323, there is no
*server* crash.

* I have tried the other options at
http://bugs.x2go.org/cgi-bin/bugreport.cgi?bug=323, none apply
here (e.g. permissions are fine).

* The action that precipitates the problem is on the *client*
side.

* Note also that the network itself is not at fault: I can
connect from a laptop in the same office (but on a different
subnet) as the server, or from home to the proxy server direct.
Same problem.

* This seems similar to
http://bugs.x2go.org/cgi-bin/bugreport.cgi?bug=101 but the fixes
are more than a year ago and presumably (?) are in the latest
x2goclient already.

* No amount of calls to x2gosuspend-session or x2goresume-session
on the appropriate session makes any difference.

* If I suspend the session with x2gosuspend-session, attempting
to connect *does* set the session into the “Running” state (just
as x2goresume-session). The error seems to occur after this.

Thanks for all your help x2go team, I hope we can fix this
because I'd like to recommend x2go for my colleagues.

This is all very interesting!!!!

Can you please check one more thing? If the connection failure occurs: leave the sessions db file as it is, but restart the server's SSH daemon and try to resume then.

Does that also solve the resumption problem?

Thanks,
Mike
--

DAS-NETZWERKTEAM
mike gabriel, herweg 7, 24357 fleckeby
fon: +49 (1520) 1976 148

GnuPG Key ID 0x25771B31
mail: [email protected], http://das-netzwerkteam.de

freeBusy:
https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb

Attachment: pgpEWsnpAoVO2.pgp
Description: Digitale PGP-Signatur

_______________________________________________
x2go-dev mailing list
[email protected]
http://lists.x2go.org/listinfo/x2go-dev

Reply via email to