[
https://issues.apache.org/jira/browse/GUACAMOLE-1077?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17115505#comment-17115505
]
Nick Couchman commented on GUACAMOLE-1077:
------------------------------------------
[~nill]: Thanks for the report. Can you capture logs from guacd during the
occurrence? Having a script that produces the issue is of some use, but it'd
be much better to capture what is happening under normal Guacamole Client ->
Guacamole Server circumstances that results in ab-end behavior.
> guacd sending invalid instructions causing disconnect
> ------------------------------------------------------
>
> Key: GUACAMOLE-1077
> URL: https://issues.apache.org/jira/browse/GUACAMOLE-1077
> Project: Guacamole
> Issue Type: Bug
> Components: guacamole-server
> Affects Versions: 1.1.0
> Reporter: Jake Coffman
> Priority: Minor
>
> I noticed occasionally that using the guacamole session sharing feature that
> I and others would get immediately disconnected after connecting to an
> existing session. I wrote a script that reproduces the issue within a minute
> or two (although sometimes it happens right away).
> See this repo for the code: [https://github.com/jakecoffman/guacd-bug]
> I believe the issue is guacd is sending an invalid instruction because the
> error seen is {{Connection to guacd terminated abnormally: Element terminator
> of instruction was not ';' nor ','}}
> Steps to reproduce the issue:
> * Start guacd {{docker run --name guacd -it --rm -p 4822:4822
> guacamole/guacd}}
> * Start postgres {{docker run --name some-postgres -e POSTGRES_PASSWORD=pw
> -e POSTGRES_USER=postgres -e POSTGRES_DB=guacamole_db -p 5432:5432 -d
> postgres}}
> * Generate init.db {{docker run --rm guacamole/guacamole
> /opt/guacamole/bin/initdb.sh --postgres > initdb.sql}}
> * Run initdb.sql on guacamole_db database
> * Start guacamole client {{docker run --name my-guac --link guacd:guacd
> --link some-postgres:postgres -e POSTGRES_DATABASE=guacamole_db -e
> POSTGRES_USER=postgres -e POSTGRES_PASSWORD=pw -p 8080:8080
> guacamole/guacamole}}
> * Connect [http://localhost:8080/guacamole/#/]
> * Login with guacadmin/guacadmin
> * Configure an RDP session as usual, but be sure to set Maximum connections
> to 100 and Maximum per user to 100 too.
> * Save and go Home
> * Click on the connection to start the first connection
> * In a new window/browser login to guacamole and go to settings
> * Under active sessions you should see your other active session. Open
> developer tools and then click on the Connection Name link to connect to it.
> * Copy the websocket connection from the network tab and paste it into the
> Go script (replace url).
> * Also grab the Cookie header and paste it in the script (replace cookie).
> * Start the script {{go run main.go}}
> * You should see "Diaing 0" etc for a while, sometimes it happens right away
> sometimes it takes a long time.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)