FreeRDP-WebConnect icon indicating copy to clipboard operation
FreeRDP-WebConnect copied to clipboard

FreeRDP connection in browser get stuck after a while

Open SSinternalIT opened this issue 9 years ago • 22 comments

We are using FreeRDP WebConnect 1.2.0.376 with Firefox 43.0.1 (but osserved the problem on Chrome and IE) and after 15 minutes we are using FreeRDP Web Connect installed on windows 2012 it get stuck. We have installe the FreeRDP WebConnect on windows 2012 R2 downloading it from here:

https://cloudbase.it/freerdp-html5-proxy-windows/

We see the clock on the windows tray changing but we cannot click or write in any input field. If we try to restart the FreeRDP web connect via the service snap-in it also get stuck on "stopping" and the only way to make it work again is to reastart windows.

Is there a new version of RDP WebConnect that we can download that hopefully fixes this issue?

SSinternalIT avatar Feb 04 '16 14:02 SSinternalIT

Hello!

I just realized I was using a customized version of the original project. I downloaded a new version from http://frerdp.net : FreeRDP-WebConnect-1.0.0.167-Setup.exe I'll keep you posted on the outcome.

SSinternalIT avatar Feb 05 '16 10:02 SSinternalIT

That is a very old and unsupported version. We currently provide Windows binaries here: https://www.cloudbase.it/downloads/FreeRDPWebConnect.msi

alexpilotti avatar Feb 05 '16 11:02 alexpilotti

@SSinternalIT what client OS are you using?

alexpilotti avatar Feb 05 '16 11:02 alexpilotti

Hello!

Thank you very much for your feedback!

I tried installing the last version I found and the problem I reported did not show up again. After some hour of work though the connection broke and was not possible to get connected with wsgate (no web page was shown). I was using Google Chrome 48. Inspecting the server I found out that the FreeRDP-Webconnect service was stopped. Starting it again fixed the problem. I then scheduled a script that attempt to start the service every few minutes to avoid further problem. Is that a know issue on windows 2012 R2? Also inside the RDP canvas in the web browser some keyboard key combination seems not to work like ctrl-c and ctrl-x to cut&paste and alt-a to select all text and canc to delete a character (while backspace works).

SSinternalIT avatar Feb 08 '16 16:02 SSinternalIT

Just a question... what's the difference between the coudbase version and the one from freeRdp.net project? I'm getting a little bit confused...

Just tried the MSI from CloudBase and it seems to fix the issues with the keys... I'll check if any problem with the service and stability shows up and keep you posted...

SSinternalIT avatar Feb 09 '16 10:02 SSinternalIT

Hello! An update. With the cloudbase msi we experienced again the web session getting stuck. It looks like it happens only on Amazon AWS EC2 instance with Windows 2012R2 installed. I tried a notepad.exe and a cmd.exe with a ping in a VM on my computer and it worked for hours (the VM was also windows 2012R2). When it gets stuck it usually is related to a resize of a very busy window (many little updates all over the surface) of an application. After that the wsgate seems unable to manage requests from the browser (same behaviour with Firefox 43 and Chrome 48). Also when wsgate is stuck there's no way to stop the service, stays endlessly in "stopping" state and the only way to unblock it is to manually kill the process (wsgate).

Would it be possible to activete some form of logging to see what happens to the wsgate?

SSinternalIT avatar Feb 09 '16 16:02 SSinternalIT

@SSinternalIT If you want debugging information, you need to edit the wsgate.ini file, and change

[global]
debug=true

The debug messages can be seen using Event viewer -> Windows logs -> Applications

If your service doesn't restart, try using a elevated PowerShell and use the Stop-Service or Restart-Service command

c64cosmin avatar Feb 10 '16 11:02 c64cosmin

Hello! I see a new commit was made to the repo to fix the service never stopping issue. Is there a msi with this fix availlable? Also, where could I find the linux version of wsgate (I tried to install from this repo but I still get avery old version: http://download.opensuse.org/repositories/home:/felfert/CentOS_CentOS-6/home:felfert.repo)

SSinternalIT avatar Feb 16 '16 11:02 SSinternalIT

https://cloudbase.it/downloads/FreeRDPWebConnect_Beta.msi That would be the link that fixes the issue, we are still doing some tests with it. Should be stable though. For Linux use the following: sudo ./install_prereqs.sh sudo ./setup-all.sh -f That will install the required dependencies, respectively will build wsgate.

c64cosmin avatar Feb 16 '16 11:02 c64cosmin

Thanks! I'll do some testing with the new version and let you know.

SSinternalIT avatar Feb 16 '16 11:02 SSinternalIT

Hello I had time to do more testing and also installed the latest stable release (downloaded today) v. 1.2.0.412. Some issues disappeared but I still am experiencing that the wsgate service sometimes just stop responding. When I get that in the events I get this message:

The description for Event ID 256 from source wsgate cannot be found. Either the component that raises this event is not installed on your local computer or the installation is corrupted. You can install or repair the component on the local computer. If the event originated on another computer, the display information had to be saved with the event. The following information was included with the event:

Update.cpp:100

So far that happened when tried to connect and another user was using the RDP so I was presented with a window asking to disconnect one of the already used sessions (but nothing happened when I clicked the options and then I found out the wsgate process was stuck and irresponsive to service restart). Another time it happened when I used the windows 2012 logon option instead of the "disconnect" button of the html client. In that case on the html client screen I could see a "server error 0x0c" or something like that (and afterwards I could not log in again so found out the wsgate process was stuck).

SSinternalIT avatar Apr 27 '16 14:04 SSinternalIT

The error related to the process being stuck is well known of and it's worked upon, a new version will come up soon.

c64cosmin avatar Apr 27 '16 15:04 c64cosmin

We have exactly the same issue, so we are waiting for the updated version. A simple test involving simply curl-ing the login page makes the process stuck after 5th-6th iteration:

#!/bin/bash
for i in {1..100}
do
  echo $i
  curl freeRDP_server:8000
  sleep 2
done

tomcsanyid avatar Apr 29 '16 12:04 tomcsanyid

Hello!

Any news on the new release that is meant to fix this issue?

SSinternalIT avatar May 09 '16 09:05 SSinternalIT

@SSinternalIT there is a fresh installer available:

https://cloudbase.it/downloads/FreeRDPWebConnect_Beta.msi

it works well for me, but before installing you need to install Visual C++ Redistributable 2013 64 bit - https://www.microsoft.com/en-us/download/details.aspx?id=40784

tomcsanyid avatar Jun 15 '16 10:06 tomcsanyid

Thank you very much. I'll give it a try and let you know the outcome.

SSinternalIT avatar Jun 15 '16 11:06 SSinternalIT

Hi,

I have the same issue. I want to connect to my Windows 10 PC remotely. I installed the software (the beta) on it and I connected successfully. But if I open a browser with some "complex" webpage (lot of content, for example Facebook) and scrolling a little bit, the connection is stuck and I have to kill the service from Task Manager. I can reproduce this issue.

Server (where FreeRDP is installed): Windows 10 OS. Browser: Chrome. Client: Windows 10 OS, Browser: IE 11.

The last Event Viewer entry is before the connection stuck:

The description for Event ID 256 from source wsgate cannot be found. Either the component that raises this event is not installed on your local computer or the installation is corrupted. You can install or repair the component on the local computer.

If the event originated on another computer, the display information had to be saved with the event.

The following information was included with the event:

Request from <MyPublicIP>: /cur/0000016C0A244FD0/8 => 304 Not modified

Thanks! Sincerely, Zsolti.

zsolteey avatar Sep 01 '16 22:09 zsolteey

@zsolteey That last Event is not useful, it's just an info event. Can you try to reproduce the problem and search for any errors and paste them in something like pastebin.com. Also tell me the steps that you follow to reproduce the problem.

c64cosmin avatar Sep 01 '16 23:09 c64cosmin

Never mind. It cannot get through our proxy: "Could not connect to websocket gateway" when I click Connect :(

zsolteey avatar Sep 02 '16 06:09 zsolteey

Still getting this issue on 1.2.0.427

Any ideas?

simonp22 avatar Jun 07 '17 09:06 simonp22

I have the same issue. Running v1.2.0.442 on Windows 2016 on AWS. If I open a busy window it freezes. I am unable to reconnect. The service appears to be running but when I try and restart it I get the error 1053.

These are the logs that appear after it freezes

257 >> tcode: 17
Kup: c=17
257 >> tcode: 13
Kup: c=13
257 >> tcode: 13
Kdown: c=13
257 >> tcode: 17
Kdown: c=17
257 >> tcode: 69
Kup: c=69
257 >> tcode: 66
Kup: c=66
257 >> tcode: 69
Kdown: c=69
257 >> tcode: 66
Kdown: c=66
257 >> tcode: 85
Kup: c=85
257 >> tcode: 85
Kdown: c=85
257 >> tcode: 84
Kup: c=84
257 >> tcode: 84
Kdown: c=84
257 >> tcode: 85
Kup: c=85
257 >> tcode: 85
Kdown: c=85
257 >> tcode: 79
Kup: c=79
257 >> tcode: 79
Kdown: c=79
257 >> tcode: 89
Kup: c=89
257 >> tcode: 89
Kdown: c=89
JS: mU b:  4096  x:  537  y:  52
JS: mD b:  4096  x:  537  y:  52 
JS: mU b:  4096  x:  1073  y:  17 
JS: mD b:  4096  x:  1073  y:  17
Request FROM: 93.107.30.164 replied with 200 OK

thesraid avatar Jun 29 '18 08:06 thesraid

We also have the same issue with running on Ubuntu 16.04. Compiled with no issues. Running wsgate as daemon.

  1. Initially wsgate was running by itself, with no proxies. We have found that testing with "curl" cannot get FreeRDP to be stuck. However using browsers easily lead to the discussed issue: wsgate is running and daemon itself is responding to commands start, stop, restart, kill. However HTTP/S server inside looks hung and not responding to requests, but not refusing though.

  2. We have disabled HTTPS on wsgate (it uses EHS server as http/s server) and recompiled. Put wsgate behind Nginx proxy. We have realised that in this setup if we disable ALL headers to be passed by Nginx to wsgate the issue seemed to disappear. At least wsgate HTTP server didn't hang after 1-2 attempts to connect. Then we allowed certain headers like: Host, Accept and couple of others and decided the problem fixed.

  3. However we have found that wsgate (or EHS behind it) still hangs, but after a longer time (1-6 hours).

At this stage we are running wsgate simple monitoring script which restarts the service if there is 200 response on simple HTTP request.

Nevertheless the issue exists and we do not know how to fix it as eve debug log is silent when hanging occurs.

evasil avatar Apr 10 '20 05:04 evasil