guacamole-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Amarjeet Singh <amarjee...@gmail.com>
Subject Re: UNABLE TO CREATE WEBSOCKET CONNECTION
Date Fri, 27 Oct 2017 16:53:27 GMT
Nick,

I already tried as you said. It' working when I am proxying through Apache
or nginx. I am getting the following error in the browser through FES :


WebSocket connection to 'wss://172.16.1.180/accops-rdp
/websocket-tunnel?token=D796521006917D22C54DC3D94D4274510A0B
92BB2C82F2FB394E6667F31AE34E&GUAC_DATA_SOURCE=default&GUAC_ID=
ACCOPS&GUAC_TYPE=c&GUAC_WIDTH=1920&GUAC_HEIGHT=410&GUAC_DP
I=96&GUAC_AUDIO=audio%2FL8&GUAC_AUDIO=audio%2FL16&GUAC_IMAGE
=image%2Fjpeg&GUAC_IMAGE=image%2Fpng&GUAC_IMAGE=image%2Fwebp'

>  failed: One or more reserved bits are on: reserved1 = 1, reserved2 = 0,
> reserved3 = 0


Environment I have set up is as follows :-

First, I check the user is valid user or not through FES before accessing
application.

WORKFLOW : when websocket request is send by browser, FES send the response
as follows:-

   Request sent by Browser :-


>
>
> *General : Request
URL:wss://172.16.1.180/accops-rdp/websocket-tunnel?token=1692775E387ECB3F6D2BCA9127CB3E02D712147F40233C4273B98BB597341852&GUAC_DATA_SOURCE=default&GUAC_ID=ACCOPS&GUAC_TYPE=c&GUAC_WIDTH=1920&GUAC_HEIGHT=468&GUAC_DPI=96&GUAC_AUDIO=audio%2FL8&GUAC_AUDIO=audio%2FL16&GUAC_IMAGE=image%2Fjpeg&GUAC_IMAGE=image%2Fpng&GUAC_IMAGE=image%2Fwebp
<http://172.16.1.180/accops-rdp/websocket-tunnel?token=1692775E387ECB3F6D2BCA9127CB3E02D712147F40233C4273B98BB597341852&GUAC_DATA_SOURCE=default&GUAC_ID=ACCOPS&GUAC_TYPE=c&GUAC_WIDTH=1920&GUAC_HEIGHT=468&GUAC_DPI=96&GUAC_AUDIO=audio%2FL8&GUAC_AUDIO=audio%2FL16&GUAC_IMAGE=image%2Fjpeg&GUAC_IMAGE=image%2Fpng&GUAC_IMAGE=image%2Fwebp>Request
Method:GETStatus Code:101 Switching Protocols*
   Response sent by FES :-


> Response Headers :
> Connection:Upgrade
> Cookie:JSESSIONID=4A40BA2EC18DB0201EE726C2AED9EE3B;
> GUAC_AUTH=%7B%22authToken%22%3A%221692775E387ECB3F6D2BCA9127CB
> 3E02D712147F40233C4273B98BB597341852%22%2C%22username%22%3A%
> 22Amarjeet%20Singh%22%2C%22dataSource%22%3A%22default%
> 22%2C%22availableDataSources%22%3A%Np4vXlCikOuA7+dV1+Csw41Cb2Q=
> Sec-WebSocket-Accept:Np4vXlCikOuA7+dV1+Csw41Cb2Q=
> Sec-WebSocket-Protocol:guacamole
> Upgrade:WebSocket


 then, FES send the Request sent by browser to TOMCAT and receive the same
response which FES already sent to browser.

 FES checks the authentication of the user then only send the request to
the TOMCAT otherwise close the socket and doesn't send  any request.

 My Queries :-

* Why I am getting the above mentioned error?  *failed: One or more
reserved bits are on: reserved1 = 1, reserved2 = 0, reserved3 = 0

* What causes this issue if we are using proxy requests  in general ?*

* Why there is a below exception in GuacamoleWebSocketTunnelEndpoint?*


>
>  Thread-65] DEBUG o.a.g.w.GuacamoleWebSocketTunnelEndpoint - Connection
> to guacd closed.
> org.apache.guacamole.GuacamoleConnectionClosedException: Connection to
> guacd is closed.
> at org.apache.guacamole.io.ReaderGuacamoleReader.read(
> ReaderGuacamoleReader.java:185) ~[guacamole-common-0.9.10-
> incubating.jar:na]
> at org.apache.guacamole.io.ReaderGuacamoleReader.readInstruction(
> ReaderGuacamoleReader.java:197) ~[guacamole-common-0.9.10-
> incubating.jar:na]
> at org.apache.guacamole.protocol.FilteredGuacamoleReader.readInstruction(
> FilteredGuacamoleReader.java:83) ~[guacamole-common-0.9.10-
> incubating.jar:na]
> at org.apache.guacamole.protocol.FilteredGuacamoleReader.readInstruction(
> FilteredGuacamoleReader.java:83) ~[guacamole-common-0.9.10-
> incubating.jar:na]
> at org.apache.guacamole.protocol.FilteredGuacamoleReader.read(
> FilteredGuacamoleReader.java:66) ~[guacamole-common-0.9.10-
> incubating.jar:na]
> at org.apache.guacamole.websocket.GuacamoleWebSocketTunnelEndpoint$2.run(
> GuacamoleWebSocketTunnelEndpoint.java:162) ~[guacamole-common-0.9.10-
> incubating.jar:na]
> Caused by: java.net.SocketException: Socket closed
> at java.net.SocketInputStream.socketRead0(Native Method) ~[na:1.7.0_51]
> at java.net.SocketInputStream.read(SocketInputStream.java:152)
> ~[na:1.7.0_51]
> at java.net.SocketInputStream.read(SocketInputStream.java:122)
> ~[na:1.7.0_51]
> at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:283)
> ~[na:1.7.0_51]
> at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:325)
> ~[na:1.7.0_51]
> at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:177) ~[na:1.7.0_51]
> at java.io.InputStreamReader.read(InputStreamReader.java:184)
> ~[na:1.7.0_51]
> at org.apache.guacamole.io.ReaderGuacamoleReader.read(
> ReaderGuacamoleReader.java:171) ~[guacamole-common-0.9.10-
> incubating.jar:na]
> ... 5 common frames omitted
>

*4. What should I have to handle if I proxy requests in FES ?*

Any help is appreciated.


Thanks and Regards,
Amarjeet Singh


On Oct 27, 2017 18:04, "Nick Couchman" <vnick@apache.org> wrote:

>
> On Fri, Oct 27, 2017 at 8:23 AM, Amarjeet Singh <amarjeetxc@gmail.com>
> wrote:
>
>> Hi Team,
>>
>> Error is :
>>
>> WebSocket connection to 'wss://172.16.1.180/accops-rdp
>> /websocket-tunnel?token=D796521006917D22C54DC3D94D4274510A0B
>> 92BB2C82F2FB394E6667F31AE34E&GUAC_DATA_SOURCE=default&GUAC_I
>> D=ACCOPS&GUAC_TYPE=c&GUAC_WIDTH=1920&GUAC_HEIGHT=410&GUAC_DP
>> I=96&GUAC_AUDIO=audio%2FL8&GUAC_AUDIO=audio%2FL16&GUAC_IMAGE
>> =image%2Fjpeg&GUAC_IMAGE=image%2Fpng&GUAC_IMAGE=image%2Fwebp' failed:
>> One or more reserved bits are on: reserved1 = 1, reserved2 = 0, reserved3 =
>> 0
>>
>> On Fri, Oct 27, 2017 at 5:52 PM, Amarjeet Singh <amarjeetxc@gmail.com>
>> wrote:
>>
>>> Hi  Team,
>>>
>>> Getting this error as well on the Browser screen
>>>
>>>
>>>
>>>
>>> On Thu, Oct 26, 2017 at 10:24 PM, Amarjeet Singh <amarjeetxc@gmail.com>
>>> wrote:
>>>
>>>> Hi Nick,
>>>>
>>>> What options do I have to resolve this issue ?
>>>>
>>>> Even if the requests are proxying what causes this issue to throw an
>>>> error...
>>>>
>>>> Please help me to resolve this...
>>>>
>>>> I am stuck and can't do much after two days of research.  Tunnel are
>>>> working through only issue is with websocket request.
>>>>
>>>> On Oct 26, 2017 22:11, "Amarjeet Singh" <amarjeetxc@gmail.com> wrote:
>>>>
>>>>> I am proxying through Apache httpd but wss requests or  socket
>>>>> connections goes directly to tomcat through fes( server written in c
)
>>>>> which is at front end...
>>>>>
>>>>> FES --> HTTPD --> Tomcat
>>>>>
>>>>> all requests goes as above ..but
>>>>>
>>>>> wss requests goes from FES --> Tomcat
>>>>>
>>>>
> Amarjeet,
>
> I'm not sure what's going on, but I did not receive any of your e-mail
> replies after I asked about how it was set up.
>
> Based on the fact that you're both using "FES" (whatever that is) and
> httpd, I'd say you need to try things out without both of those items in
> the way and see what works.  I would try taking one thing out at a time -
> specifically, you should first remove FES from the configuration and just
> use httpd -> Tomcat and see if that works.  If you still have issues with
> that, verify that going directly to Tomcat works.  Once you determine if
> the issue is with FES, httpd, or Tomcat, you'll be able to determine what
> steps need to be taken to resolve the problem.
>
> -Nick
>

Mime
View raw message