You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@guacamole.apache.org by HASENOHR Paul <Pa...@ec.europa.eu.INVALID> on 2024/11/28 13:27:07 UTC
Maximum number of simultaneous RDP connections
Hello,
We have been using Guacamole for the past years with great satisfaction for our users. Guacamole is running on Docker (standard images to which a custom CA has been added) on a Debian 12 VM.
We noticed today during a training that led to an increase of the number of concurrent connections that we could not exceed 55-58 RDP connections. Any other attempt to connect to any RDP server (several machines running Ubuntu 22.04 with xorgxrdp, some of them without any load) returned immediately a black screen with the message “You have been disconnected”.
In the guacd logs, any failed connection was logged as follows:
guacd[1]: INFO: Creating new client for protocol "rdp"
guacd[1]: INFO: Connection ID is "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa"
guacd[1916025]: INFO: Security mode: TLS
guacd[1916025]: INFO: Resize method: display-update
guacd[1916025]: INFO: No clipboard line-ending normalization specified. Defaulting to preserving the format of all line endings.
guacd[1916025]: INFO: User "@b2935015-b864-4928-a674-2c26ed1dd45d" joined connection "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa" (1 users now present)
guacd[1916025]: INFO: Recording of session will be saved to "/recording//20241128_100346_XXXXXXXXXX-terminal-004-M_N".
guacd[1916025]: INFO: Loading keymap "base"
guacd[1916025]: INFO: Loading keymap "en-us-qwerty"
guacd[1]: INFO: Connection "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa" removed.
The connection issues have been reported between 11:00 and 12:15 but as can be seen below, the network, cpu and memory consumptions remained very reasonable
[cid:image001.png@01DB41A0.380F9640]
[cid:image002.png@01DB41A0.7B6745A0]
[cid:image003.png@01DB41A1.9906EE70]
When the access to RDP connections was not working, it was usually (although not always) possible to connect to SSH connections.
Would anybody have a suggestion as to what could have prevented users from connecting to the servers accessible through RDP connections?
Best regards,
Paul
Re: ***UNCHECKED*** RE: Maximum number of simultaneous RDP connections
Posted by Sean Hulbert <sh...@securitycentric.net.INVALID>.
Here are some tuning specifications we use for High Availability (HA)
environments.
To optimize *Apache Guacamole* for handling 10,000 users, you should
consider allocating resources based on the following factors:
*1. CPU*
* *Minimum*: 8 vCPUs
* *Optimal*: 16-32 vCPUs depending on the intensity of user sessions
and the types of remote connections (e.g., RDP, VNC, SSH).
o Guacamole's backend services (Tomcat) and the guacd daemon
benefit from higher CPU cores for concurrent session management.
*2. RAM*
* *Minimum*: 16 GB
* *Optimal*: 32-64 GB
o Allocate memory based on the average session count and types of
connections (e.g., RDP requires more RAM per session compared to
SSH).
*
*
*3. Storage*
* *Disk Space*: Depends on log retention, drive sharing, and session
recording needs.
o *Base Installation*: ~10 GB
o Allocate additional space for:
+ Logs: 100 GB+ if extensive logging is enabled.
+ File sharing: Depends on user needs.
* Use SSDs for better performance.
*
*
*4. Network*
* *Bandwidth*: At least 1 Gbps is required for smooth operation; 10
Gbps is ideal for high-volume environments.
o Each session consumes about *50–150 kbps*, depending on the
resolution and activity level.
* Configure network settings for optimal performance:
o Ensure low latency for remote connections.
o Use load balancing if needed.
*
*
*5. Guacamole Configuration*
* *guacd Instances*: Each guacd instance can handle ~100–200
simultaneous sessions.
o Deploy multiple guacd instances using Docker or separate servers
for scaling.
o Use a load balancer (e.g., NGINX, HAProxy) to distribute traffic
among guacd instances.
*6. Tomcat (Guacamole Web Application) Tuning*
* *Heap Size*: Set the Java heap size for Tomcat:
-Xms8g -Xmx16g
This provides 8–16 GB of memory for the web application.
* *Thread Configuration*: Increase the number of threads in the Tomcat
connector configuration in server.xml:
<Connector port="8080" protocol="HTTP/1.1"
maxThreads="500"
minSpareThreads="100"
connectionTimeout="20000"
URIEncoding="UTF-8"/>
*
*
*7. Database*
* Guacamole stores user information and connection details in a
database (e.g., MySQL, PostgreSQL).
o Ensure proper indexing for large user bases.
o Use *read replicas* for load distribution if querying becomes heavy.
*
*
*8. Scalability*
* Use a *clustered architecture*:
o Multiple application servers for the Guacamole front-end.
o Multiple guacd servers distributed via a load balancer.
o Centralized database with high availability.
*
*
*9. Monitoring*
Implement monitoring tools to ensure resource utilization and
performance stability:
* *CPU and RAM*: Monitor usage and scale horizontally/vertically as
needed.
* *Session Metrics*: Monitor active session counts and peak usage times.
* *Logs*: Centralized logging (e.g., ELK stack) for analyzing errors
and trends.
*Example Deployment for 10,000 Users:*
* *Front-end Servers*: 4 (each with 8 vCPUs, 16–32 GB RAM).
* *guacd Servers*: 5–10 instances (each with 8 vCPUs, 16 GB RAM).
* *Database*: 1 primary + 1 replica (8 vCPUs, 32 GB RAM).
This setup should handle 10,000 concurrent users effectively while
maintaining a responsive system.
Hope this helps
*Thank You*
Sean Hulbert
*Security Centric Inc.*
A Cybersecurity Virtualization Enablement Company
/StormCloud Gov, Protected CUI Environment!/
Industry's most secure CMMC/iTAR virtual desktops!
*/FedRAMP MIL4 in process (RAR)/*
System Award Management
*CAGE: 8AUV4*
*SAM ID: UMJLJ8A7BMT3*
AFCEA San Francisco Chapter President
If you have heard of a hacker by name, he/she has failed, fear the
hacker you haven’t heard of!
CONFIDENTIALITY NOTICE: This communication with its contents may contain
confidential and/or legally privileged information. It is solely for the
use of the intended recipient(s). Unauthorized interception, review, use
or disclosure is prohibited and may violate applicable laws including
the Electronic Communications Privacy Act. If you are not the intended
recipient, please contact the sender and destroy all copies of the
communication. Content within this email communication is not legally
binding as a contract and no promises are guaranteed unless in a formal
contract outside this email communication.
igitur qui desiderat pacem, praeparet bellum!!!
Epitoma Rei Militaris
On 12/8/2024 11:02 AM, Sean Hulbert wrote:
>
> This is generally a resource issue,
>
> On the Guacamole System what is your vCPU, RAM?
>
> Keep in mind you will need to increase the transaction threads on the
> web server are you using Apache or NGINX?
>
> we manage 2000+ connections load balance across 3 guacamole systems.
>
> * vCPU 24 ( 2 Sockets (4 Cores) - 8 Cores 16 Threads)
> * 64Gb RAM
> * 10GBps (NIC-TEAMING)
>
> Note; this is not a container, but a VDI compiled version of Guacamole
> using MariaDB, MFA and a tuned NGINX install.
>
> *Thank You*
> Sean Hulbert
>
>
>
> *Security Centric Inc.*
> A Cybersecurity Virtualization Enablement Company
> /StormCloud Gov, Protected CUI Environment!/
>
>
> Industry's most secure CMMC/iTAR virtual desktops!
>
>
> */FedRAMP MIL4 in process (RAR)/*
> System Award Management
> *CAGE: 8AUV4*
> *SAM ID: UMJLJ8A7BMT3*
>
> AFCEA San Francisco Chapter President
> If you have heard of a hacker by name, he/she has failed, fear the
> hacker you haven’t heard of!
>
> CONFIDENTIALITY NOTICE: This communication with its contents may
> contain confidential and/or legally privileged information. It is
> solely for the use of the intended recipient(s). Unauthorized
> interception, review, use or disclosure is prohibited and may violate
> applicable laws including the Electronic Communications Privacy Act.
> If you are not the intended recipient, please contact the sender and
> destroy all copies of the communication. Content within this email
> communication is not legally binding as a contract and no promises are
> guaranteed unless in a formal contract outside this email communication.
>
> igitur qui desiderat pacem, praeparet bellum!!!
>
> Epitoma Rei Militaris
>
> On 12/6/2024 11:01 AM, HASENOHR Paul wrote:
>>
>> Dear Nick,
>>
>> As promised, I ran some further tests.
>>
>> With the help of a colleague, we could reproduce the issue on a test
>> instance (max 59 concurrent RDP connections).
>>
>> After having created 80 user accounts linked evenly to one out of 4
>> rdp connections (towards xrdp servers), the test protocol was the
>> following:
>>
>> -With selenium, launch 60 chrome headless instances connecting to
>> Guacamole (one every 20s):
>>
>> oT0: towards RDP1
>>
>> oT0+20: towards RDP2
>>
>> oT0+40: towards RDP3
>>
>> oT0+60: towards RDP4
>>
>> oT0+80: towards RDP1 and so on
>>
>> -Launch a 61^st instance one minute after the 60th
>>
>> -Take a “screenshot” 10s after having initiated the connection
>>
>> -Keep each connection active for 30 minutes
>>
>> The outcome is the following (with T0=2024-12-06T14:42:45Z):
>>
>> -At 15:00:24 (GMT), a connection could not be established and the
>> following log entries could be found:
>>
>> oIn /var/log/messages (GMT+1):
>>
>> Dec 6 16:00:24 s-jrciprjeop151p kernel: traps: guacd[67983] general
>> protection fault ip:7f8b34a97664 sp:7f8ae349ce28 error:0 in
>> ld-musl-x86_64.so.1[7f8b34a86000+4c000]
>>
>> oIn the guacd Docker container logs:
>>
>> 2024-12-06T15:00:24.770823151Z guacd[1]: INFO: Creating new client
>> for protocol "rdp"
>>
>> 2024-12-06T15:00:24.774091622Z guacd[1]: INFO: Connection ID is
>> "$2ba7c0c0-60cf-41d9-a970-2bc20f15c624"
>>
>> 2024-12-06T15:00:24.890940897Z guacd[1]: INFO: Connection
>> "$2ba7c0c0-60cf-41d9-a970-2bc20f15c624" removed.
>>
>> 2024-12-06T15:00:24.890979827Z guacd[1]: DEBUG: Unable to request
>> termination of client process: No such process
>>
>> 2024-12-06T15:00:24.890994171Z guacd[1]: DEBUG: All child processes
>> for connection "$2ba7c0c0-60cf-41d9-a970-2bc20f15c624" have been
>> terminated.
>>
>> oIn addition, a core dump has been generated:
>> core-guacd.12920.8a6bb6a83b86.1733497224 (attached to that message,
>> 1.3GB uncompressed)
>>
>> -At 15:03:04 (GMT), the 61^st selenium process tried to create what
>> was in fact the 60^th RDP connection (as the session of 15:00:24
>> could not be created) and it failed to do so with the following guacd
>> log entries repeated roughly every 15 seconds until the first
>> selenium process got stopped and the associated connection removed
>>
>> oLog entries for failed attempts to connect:
>>
>> 2024-12-06T15:03:04.687449173Z guacd[1]: INFO: Creating new client
>> for protocol "rdp"
>>
>> 2024-12-06T15:03:04.691148814Z guacd[1]: INFO: Connection ID is
>> "$ff003e4a-7527-4e5f-9e61-bdf6b10a5536"
>>
>> 2024-12-06T15:03:04.702893330Z guacd[14114]: DEBUG: Processing
>> instruction: size
>>
>> 2024-12-06T15:03:04.702942741Z guacd[14114]: DEBUG: Processing
>> instruction: audio
>>
>> 2024-12-06T15:03:04.702952374Z guacd[14114]: DEBUG: Processing
>> instruction: video
>>
>> 2024-12-06T15:03:04.702959284Z guacd[14114]: DEBUG: Processing
>> instruction: image
>>
>> 2024-12-06T15:03:04.702965978Z guacd[14114]: DEBUG: Processing
>> instruction: timezone
>>
>> 2024-12-06T15:03:04.702972998Z guacd[14114]: DEBUG: Processing
>> instruction: name
>>
>> 2024-12-06T15:03:04.703154230Z guacd[14114]: DEBUG: Parameter
>> "console" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703198283Z guacd[14114]: DEBUG: Parameter
>> "console-audio" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703355499Z guacd[14114]: DEBUG: Parameter
>> "ignore-cert" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703433340Z guacd[14114]: DEBUG: Parameter
>> "disable-auth" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703442113Z guacd[14114]: INFO: Security
>> mode: TLS
>>
>> 2024-12-06T15:03:04.703450913Z guacd[14114]: DEBUG: User
>> resolution is 1024x629 at 96 DPI
>>
>> 2024-12-06T15:03:04.703458296Z guacd[14114]: DEBUG: Parameter
>> "dpi" omitted. Using default value of 96.
>>
>> 2024-12-06T15:03:04.703478890Z guacd[14114]: DEBUG: Using
>> resolution of 1024x629 at 96 DPI
>>
>> 2024-12-06T15:03:04.703488497Z guacd[14114]: DEBUG: Parameter
>> "force-lossless" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703496257Z guacd[14114]: DEBUG: Parameter
>> "read-only" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703532181Z guacd[14114]: DEBUG: Parameter
>> "client-name" omitted. Using default value of "Guacamole RDP".
>>
>> 2024-12-06T15:03:04.703542197Z guacd[14114]: DEBUG: Parameter
>> "enable-wallpaper" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703578781Z guacd[14114]: DEBUG: Parameter
>> "enable-theming" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703587648Z guacd[14114]: DEBUG: Parameter
>> "enable-font-smoothing" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703676486Z guacd[14114]: DEBUG: Parameter
>> "enable-full-window-drag" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703703149Z guacd[14114]: DEBUG: Parameter
>> "enable-desktop-composition" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703829234Z guacd[14114]: DEBUG: Parameter
>> "enable-menu-animations" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703902675Z guacd[14114]: DEBUG: Parameter
>> "disable-bitmap-caching" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703959216Z guacd[14114]: DEBUG: Parameter
>> "disable-offscreen-caching" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703976189Z guacd[14114]: DEBUG: Parameter
>> "disable-glyph-caching" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.703984942Z guacd[14114]: DEBUG: Glyph caching
>> is currently universally disabled, regardless of the value of the
>> "disable-glyph-caching" parameter, as glyph caching support is not
>> considered stable by FreeRDP as of the FreeRDP 2.0.0 release. See:
>> https://issues.apache.org/jira/browse/GUACAMOLE-1191
>>
>> 2024-12-06T15:03:04.703992912Z guacd[14114]: DEBUG: Parameter
>> "color-depth" omitted. Using default value of 16.
>>
>> 2024-12-06T15:03:04.704000129Z guacd[14114]: DEBUG: Parameter
>> "enable-printing" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704007309Z guacd[14114]: DEBUG: Parameter
>> "printer-name" omitted. Using default value of "Guacamole Printer".
>>
>> 2024-12-06T15:03:04.704018796Z guacd[14114]: DEBUG: Parameter
>> "enable-drive" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704027636Z guacd[14114]: DEBUG: Parameter
>> "drive-name" omitted. Using default value of "Guacamole Filesystem".
>>
>> 2024-12-06T15:03:04.704037463Z guacd[14114]: DEBUG: Parameter
>> "drive-path" omitted. Using default value of "".
>>
>> 2024-12-06T15:03:04.704044590Z guacd[14114]: DEBUG: Parameter
>> "create-drive-path" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704074503Z guacd[14114]: DEBUG: Parameter
>> "timezone" omitted. Using default value of "Europe/Bucharest".
>>
>> 2024-12-06T15:03:04.704082760Z guacd[14114]: DEBUG: Parameter
>> "enable-sftp" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704123764Z guacd[14114]: DEBUG: Parameter
>> "sftp-hostname" omitted. Using default value of
>> "s-jrciprjeos144p.cidsn.jrc.it".
>>
>> 2024-12-06T15:03:04.704149121Z guacd[14114]: DEBUG: Parameter
>> "sftp-port" omitted. Using default value of "22".
>>
>> 2024-12-06T15:03:04.704199205Z guacd[14114]: DEBUG: Parameter
>> "sftp-username" omitted. Using default value of "".
>>
>> 2024-12-06T15:03:04.704224352Z guacd[14114]: DEBUG: Parameter
>> "sftp-password" omitted. Using default value of "".
>>
>> 2024-12-06T15:03:04.704231665Z guacd[14114]: DEBUG: Parameter
>> "sftp-passphrase" omitted. Using default value of "".
>>
>> 2024-12-06T15:03:04.704293443Z guacd[14114]: DEBUG: Parameter
>> "sftp-root-directory" omitted. Using default value of "/".
>>
>> 2024-12-06T15:03:04.704324016Z guacd[14114]: DEBUG: Parameter
>> "sftp-server-alive-interval" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704336816Z guacd[14114]: DEBUG: Parameter
>> "sftp-disable-download" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704348143Z guacd[14114]: DEBUG: Parameter
>> "sftp-disable-upload" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704360607Z guacd[14114]: DEBUG: Parameter
>> "recording-name" omitted. Using default value of "recording".
>>
>> 2024-12-06T15:03:04.704421761Z guacd[14114]: DEBUG: Parameter
>> "recording-exclude-output" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704439167Z guacd[14114]: DEBUG: Parameter
>> "recording-exclude-mouse" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704534589Z guacd[14114]: DEBUG: Parameter
>> "recording-exclude-touch" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704572016Z guacd[14114]: DEBUG: Parameter
>> "recording-include-keys" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704586469Z guacd[14114]: DEBUG: Parameter
>> "create-recording-path" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704594846Z guacd[14114]: INFO: Resize
>> method: none
>>
>> 2024-12-06T15:03:04.704602279Z guacd[14114]: DEBUG: Parameter
>> "enable-touch" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704618049Z guacd[14114]: DEBUG: Parameter
>> "enable-audio-input" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704626053Z guacd[14114]: DEBUG: Parameter
>> "gateway-port" omitted. Using default value of 443.
>>
>> 2024-12-06T15:03:04.704632533Z guacd[14114]: DEBUG: Parameter
>> "disable-copy" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704677454Z guacd[14114]: DEBUG: Parameter
>> "disable-paste" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704688920Z guacd[14114]: INFO: No clipboard
>> line-ending normalization specified. Defaulting to preserving the
>> format of all line endings.
>>
>> 2024-12-06T15:03:04.704697854Z guacd[14114]: DEBUG: Parameter
>> "wol-send-packet" omitted. Using default value of 0.
>>
>> 2024-12-06T15:03:04.704821772Z guacd[14114]: INFO: User
>> "@f8a7f328-eb75-41e3-8b62-88b5fdb69de4" joined connection
>> "$ff003e4a-7527-4e5f-9e61-bdf6b10a5536" (1 users now present)
>>
>> 2024-12-06T15:03:04.704853676Z guacd[14114]: DEBUG: Client is
>> using protocol version "VERSION_1_5_0"
>>
>> 2024-12-06T15:03:04.709035759Z guacd[14114]: INFO: Loading
>> keymap "base"
>>
>> 2024-12-06T15:03:04.709114240Z guacd[14114]: INFO: Loading
>> keymap "en-us-qwerty"
>>
>> 2024-12-06T15:03:04.709934353Z guacd[14114]: DEBUG: Support for
>> CLIPRDR (clipboard redirection) registered. Awaiting channel connection.
>>
>> 2024-12-06T15:03:04.709974067Z guacd[14114]: DEBUG: Local
>> framebuffer format PIXEL_FORMAT_BGRX32
>>
>> 2024-12-06T15:03:04.709982987Z guacd[14114]: DEBUG: Remote
>> framebuffer format PIXEL_FORMAT_RGB16
>>
>> 2024-12-06T15:03:05.829568731Z guacd[1]: DEBUG: Guacamole connection
>> closed during handshake
>>
>> 2024-12-06T15:03:05.829625550Z guacd[1]: DEBUG: Error reading
>> "select": End of stream reached while reading instruction
>>
>> 2024-12-06T15:03:06.862328987Z guacd[14114]: DEBUG: SSL_CTX_new
>> failed
>>
>> 2024-12-06T15:03:06.862375254Z guacd[14114]: DEBUG:
>> transport_connect_tls:freerdp_set_last_error_ex
>> ERRCONNECT_CONNECT_CANCELLED [0x0002000B]
>>
>> 2024-12-06T15:03:06.874587928Z guacd[14114]: INFO: RDP server
>> closed/refused connection: Connection failed (server unreachable?)
>>
>> 2024-12-06T15:03:06.953424771Z guacd[14114]: INFO: User
>> "@f8a7f328-eb75-41e3-8b62-88b5fdb69de4" disconnected (0 users remain)
>>
>> 2024-12-06T15:03:06.953464758Z guacd[14114]: INFO: Last user of
>> connection "$ff003e4a-7527-4e5f-9e61-bdf6b10a5536" disconnected
>>
>> 2024-12-06T15:03:06.953560242Z guacd[14114]: DEBUG: Requesting
>> termination of client...
>>
>> 2024-12-06T15:03:06.954335475Z guacd[14114]: DEBUG: Client
>> terminated successfully.
>>
>> 2024-12-06T15:03:06.958190642Z guacd[1]: INFO: Connection
>> "$ff003e4a-7527-4e5f-9e61-bdf6b10a5536" removed.
>>
>> oLog entries when the 1^st connection got released and the 61^st
>> selenium process could connect (becoming then the 59^th active
>> connection):
>>
>> 2024-12-06T15:14:48.788592903Z guacd[3878]: ERROR: User is not
>> responding.
>>
>> 2024-12-06T15:14:48.788735278Z guacd[3878]: INFO: User
>> "@2c7e97ad-6054-4f8b-be0c-95a56f34ff15" disconnected (0 users remain)
>>
>> 2024-12-06T15:14:48.788901425Z guacd[3878]: INFO: Last user of
>> connection "$6c40d2e8-57c4-48ae-9115-cbb63e87221a" disconnected
>>
>> 2024-12-06T15:14:48.789130750Z guacd[3878]: DEBUG: Requesting
>> termination of client...
>>
>> 2024-12-06T15:14:48.965798638Z guacd[3878]: DEBUG: CLIPRDR
>> (clipboard redirection) channel disconnected.
>>
>> 2024-12-06T15:14:48.978637197Z guacd[3878]: INFO: Internal RDP
>> client disconnected
>>
>> 2024-12-06T15:14:48.979215164Z guacd[3878]: DEBUG: Client
>> terminated successfully.
>>
>> 2024-12-06T15:14:48.981992660Z guacd[1]: INFO: Connection
>> "$6c40d2e8-57c4-48ae-9115-cbb63e87221a" removed.
>>
>> 2024-12-06T15:14:48.982014235Z guacd[1]: DEBUG: All child processes
>> for connection "$6c40d2e8-57c4-48ae-9115-cbb63e87221a" have been
>> terminated.
>>
>> 2024-12-06T15:14:55.578678366Z guacd[1]: INFO: Creating new client
>> for protocol "rdp"
>>
>> 2024-12-06T15:14:55.581795996Z guacd[1]: INFO: Connection ID is
>> "$5565bee8-85e9-403b-a9a8-a2fcc80973c0"
>>
>> 2024-12-06T15:14:55.593694171Z guacd[20939]: DEBUG: Processing
>> instruction: size
>>
>> 2024-12-06T15:14:55.593737238Z guacd[20939]: DEBUG: Processing
>> instruction: audio
>>
>> 2024-12-06T15:14:55.593746798Z guacd[20939]: DEBUG: Processing
>> instruction: video
>>
>> 2024-12-06T15:14:55.593757758Z guacd[20939]: DEBUG: Processing
>> instruction: image
>>
>> 2024-12-06T15:14:55.593796032Z guacd[20939]: DEBUG: Processing
>> instruction: timezone
>>
>> 2024-12-06T15:14:55.593856099Z guacd[20939]: DEBUG: Processing
>> instruction: name
>>
>> 2024-12-06T15:14:55.593978614Z guacd[20939]: DEBUG: Parameter
>> "console" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594021701Z guacd[20939]: DEBUG: Parameter
>> "console-audio" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594030645Z guacd[20939]: DEBUG: Parameter
>> "ignore-cert" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594037575Z guacd[20939]: DEBUG: Parameter
>> "disable-auth" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594049918Z guacd[20939]: INFO: Security
>> mode: TLS
>>
>> 2024-12-06T15:14:55.594061655Z guacd[20939]: DEBUG: User
>> resolution is 1024x629 at 96 DPI
>>
>> 2024-12-06T15:14:55.594069009Z guacd[20939]: DEBUG: Parameter
>> "dpi" omitted. Using default value of 96.
>>
>> 2024-12-06T15:14:55.594111496Z guacd[20939]: DEBUG: Using
>> resolution of 1024x629 at 96 DPI
>>
>> 2024-12-06T15:14:55.594124679Z guacd[20939]: DEBUG: Parameter
>> "force-lossless" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594155193Z guacd[20939]: DEBUG: Parameter
>> "read-only" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594179860Z guacd[20939]: DEBUG: Parameter
>> "client-name" omitted. Using default value of "Guacamole RDP".
>>
>> 2024-12-06T15:14:55.594224500Z guacd[20939]: DEBUG: Parameter
>> "enable-wallpaper" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594330428Z guacd[20939]: DEBUG: Parameter
>> "enable-theming" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594443633Z guacd[20939]: DEBUG: Parameter
>> "enable-font-smoothing" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594471426Z guacd[20939]: DEBUG: Parameter
>> "enable-full-window-drag" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594478760Z guacd[20939]: DEBUG: Parameter
>> "enable-desktop-composition" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594485163Z guacd[20939]: DEBUG: Parameter
>> "enable-menu-animations" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594491437Z guacd[20939]: DEBUG: Parameter
>> "disable-bitmap-caching" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594497673Z guacd[20939]: DEBUG: Parameter
>> "disable-offscreen-caching" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594504207Z guacd[20939]: DEBUG: Parameter
>> "disable-glyph-caching" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594517297Z guacd[20939]: DEBUG: Glyph caching
>> is currently universally disabled, regardless of the value of the
>> "disable-glyph-caching" parameter, as glyph caching support is not
>> considered stable by FreeRDP as of the FreeRDP 2.0.0 release. See:
>> https://issues.apache.org/jira/browse/GUACAMOLE-1191
>>
>> 2024-12-06T15:14:55.594527254Z guacd[20939]: DEBUG: Parameter
>> "color-depth" omitted. Using default value of 16.
>>
>> 2024-12-06T15:14:55.594579311Z guacd[20939]: DEBUG: Parameter
>> "enable-printing" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594641412Z guacd[20939]: DEBUG: Parameter
>> "printer-name" omitted. Using default value of "Guacamole Printer".
>>
>> 2024-12-06T15:14:55.594658322Z guacd[20939]: DEBUG: Parameter
>> "enable-drive" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594679715Z guacd[20939]: DEBUG: Parameter
>> "drive-name" omitted. Using default value of "Guacamole Filesystem".
>>
>> 2024-12-06T15:14:55.594707283Z guacd[20939]: DEBUG: Parameter
>> "drive-path" omitted. Using default value of "".
>>
>> 2024-12-06T15:14:55.594722989Z guacd[20939]: DEBUG: Parameter
>> "create-drive-path" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594732299Z guacd[20939]: DEBUG: Parameter
>> "timezone" omitted. Using default value of "Europe/Bucharest".
>>
>> 2024-12-06T15:14:55.594739166Z guacd[20939]: DEBUG: Parameter
>> "enable-sftp" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.594781820Z guacd[20939]: DEBUG: Parameter
>> "sftp-hostname" omitted. Using default value of
>> "s-jrciprjeos144p.cidsn.jrc.it".
>>
>> 2024-12-06T15:14:55.594844397Z guacd[20939]: DEBUG: Parameter
>> "sftp-port" omitted. Using default value of "22".
>>
>> 2024-12-06T15:14:55.594911355Z guacd[20939]: DEBUG: Parameter
>> "sftp-username" omitted. Using default value of "".
>>
>> 2024-12-06T15:14:55.594925691Z guacd[20939]: DEBUG: Parameter
>> "sftp-password" omitted. Using default value of "".
>>
>> 2024-12-06T15:14:55.595152214Z guacd[20939]: DEBUG: Parameter
>> "sftp-passphrase" omitted. Using default value of "".
>>
>> 2024-12-06T15:14:55.595269395Z guacd[20939]: DEBUG: Parameter
>> "sftp-root-directory" omitted. Using default value of "/".
>>
>> 2024-12-06T15:14:55.595299073Z guacd[20939]: DEBUG: Parameter
>> "sftp-server-alive-interval" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.595312166Z guacd[20939]: DEBUG: Parameter
>> "sftp-disable-download" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.595322743Z guacd[20939]: DEBUG: Parameter
>> "sftp-disable-upload" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.595334003Z guacd[20939]: DEBUG: Parameter
>> "recording-name" omitted. Using default value of "recording".
>>
>> 2024-12-06T15:14:55.595347746Z guacd[20939]: DEBUG: Parameter
>> "recording-exclude-output" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.595357583Z guacd[20939]: DEBUG: Parameter
>> "recording-exclude-mouse" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.595371780Z guacd[20939]: DEBUG: Parameter
>> "recording-exclude-touch" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.595383523Z guacd[20939]: DEBUG: Parameter
>> "recording-include-keys" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.595398177Z guacd[20939]: DEBUG: Parameter
>> "create-recording-path" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.595410687Z guacd[20939]: INFO: Resize
>> method: none
>>
>> 2024-12-06T15:14:55.595422641Z guacd[20939]: DEBUG: Parameter
>> "enable-touch" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.595438557Z guacd[20939]: DEBUG: Parameter
>> "enable-audio-input" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.595451764Z guacd[20939]: DEBUG: Parameter
>> "gateway-port" omitted. Using default value of 443.
>>
>> 2024-12-06T15:14:55.595465344Z guacd[20939]: DEBUG: Parameter
>> "disable-copy" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.595485545Z guacd[20939]: DEBUG: Parameter
>> "disable-paste" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.595502142Z guacd[20939]: INFO: No clipboard
>> line-ending normalization specified. Defaulting to preserving the
>> format of all line endings.
>>
>> 2024-12-06T15:14:55.595516618Z guacd[20939]: DEBUG: Parameter
>> "wol-send-packet" omitted. Using default value of 0.
>>
>> 2024-12-06T15:14:55.595583479Z guacd[20939]: INFO: User
>> "@3e38f412-f074-4969-b622-bf0812316c6e" joined connection
>> "$5565bee8-85e9-403b-a9a8-a2fcc80973c0" (1 users now present)
>>
>> 2024-12-06T15:14:55.595605759Z guacd[20939]: DEBUG: Client is
>> using protocol version "VERSION_1_5_0"
>>
>> 2024-12-06T15:14:55.600200128Z guacd[20939]: INFO: Loading
>> keymap "base"
>>
>> 2024-12-06T15:14:55.600241289Z guacd[20939]: INFO: Loading
>> keymap "en-us-qwerty"
>>
>> 2024-12-06T15:14:55.601047935Z guacd[20939]: DEBUG: Support for
>> CLIPRDR (clipboard redirection) registered. Awaiting channel connection.
>>
>> 2024-12-06T15:14:55.601103492Z guacd[20939]: DEBUG: Local
>> framebuffer format PIXEL_FORMAT_BGRX32
>>
>> 2024-12-06T15:14:55.601129852Z guacd[20939]: DEBUG: Remote
>> framebuffer format PIXEL_FORMAT_RGB16
>>
>> 2024-12-06T15:14:59.984055789Z guacd[20939]: DEBUG: CLIPRDR
>> (clipboard redirection) channel connected.
>>
>> 2024-12-06T15:15:00.328241921Z guacd[20939]: DEBUG: Clipboard
>> data received. Reporting availability of clipboard data to RDP server.
>>
>> -At 15:32:48 (GMT), while RDP connections were being closed due to
>> the selenium processes being stopped, a core dump has been generated.
>>
>> oIn /var/log/messages (GMT+1)
>>
>> Dec 6 16:32:48 s-jrciprjeop151p kernel: traps: guacd[68113] general
>> protection fault ip:7f8b34a97a7c sp:7f8ae349d100 error:0 in
>> ld-musl-x86_64.so.1[7f8b34a86000+4c000]
>>
>> oIn guacd docker logs (GMT)
>>
>> 2024-12-06T15:32:48.624974718Z guacd[12924]: ERROR: User is not
>> responding.
>>
>> 2024-12-06T15:32:48.625078086Z guacd[12924]: INFO: User
>> "@8f7db077-f633-466d-a459-e00a18357e7c" disconnected (0 users remain)
>>
>> 2024-12-06T15:32:48.625151523Z guacd[12924]: INFO: Last user of
>> connection "$26bd776b-6d33-4fea-a5a1-4bc6ff3d11cf" disconnected
>>
>> 2024-12-06T15:32:48.625280645Z guacd[12924]: DEBUG: Requesting
>> termination of client...
>>
>> 2024-12-06T15:32:48.750757953Z guacd[12924]: DEBUG: CLIPRDR
>> (clipboard redirection) channel disconnected.
>>
>> 2024-12-06T15:32:48.765691056Z guacd[12924]: INFO: Internal RDP
>> client disconnected
>>
>> 2024-12-06T15:32:48.766157544Z guacd[12924]: DEBUG: Client
>> terminated successfully.
>>
>> 2024-12-06T15:32:48.878712775Z guacd[1]: INFO: Connection
>> "$26bd776b-6d33-4fea-a5a1-4bc6ff3d11cf" removed.
>>
>> 2024-12-06T15:32:48.878757332Z guacd[1]: DEBUG: All child processes
>> for connection "$26bd776b-6d33-4fea-a5a1-4bc6ff3d11cf" have been
>> terminated.
>>
>> 2024-12-06T15:33:06.362058899Z guacd[1]: DEBUG: Guacamole connection
>> closed during handshake
>>
>> 2024-12-06T15:33:06.362146170Z guacd[1]: DEBUG: Error reading
>> "select": End of stream reached while reading instruction
>>
>> 2024-12-06T15:33:08.662943267Z guacd[13264]: ERROR: User is not
>> responding.
>>
>> 2024-12-06T15:33:08.663123142Z guacd[13264]: INFO: User
>> "@5ee9cdfa-0d04-4c2f-acfe-55a114e2f20a" disconnected (0 users remain)
>>
>> 2024-12-06T15:33:08.663189616Z guacd[13264]: INFO: Last user of
>> connection "$4bc9a390-5a8a-4f49-baef-d1e71c5bc666" disconnected
>>
>> 2024-12-06T15:33:08.663358655Z guacd[13264]: DEBUG: Requesting
>> termination of client...
>>
>> 2024-12-06T15:33:08.838800641Z guacd[13264]: DEBUG: CLIPRDR
>> (clipboard redirection) channel disconnected.
>>
>> 2024-12-06T15:33:08.849452825Z guacd[13264]: INFO: Internal RDP
>> client disconnected
>>
>> 2024-12-06T15:33:08.849665197Z guacd[13264]: DEBUG: Client
>> terminated successfully.
>>
>> 2024-12-06T15:33:08.852907658Z guacd[1]: INFO: Connection
>> "$4bc9a390-5a8a-4f49-baef-d1e71c5bc666" removed.
>>
>> 2024-12-06T15:33:08.852963162Z guacd[1]: DEBUG: All child processes
>> for connection "$4bc9a390-5a8a-4f49-baef-d1e71c5bc666" have been
>> terminated.
>>
>> oA core dump has been generated:
>> core-guacd.12924.8a6bb6a83b86.1733499168 attached to that message
>> (1.3G uncompressed)
>>
>> For completeness, I attach also the guacd logs of the whole testing
>> session.
>>
>> I would be grateful if you, or some other developer, could have a
>> look at those elements. I am of course available to provide you with
>> any other information you might need. In case it would be helpful, I
>> have other core dumps from previous tests.
>>
>> Kind regards,
>>
>> Paul
>>
>> *From:*HASENOHR Paul <Pa...@ec.europa.eu.INVALID>
>> *Sent:* Thursday, November 28, 2024 5:25 PM
>> *To:* user@guacamole.apache.org
>> *Subject:* RE: Maximum number of simultaneous RDP connections
>>
>> Dear Nick,
>>
>> Thank you for your suggestions.
>>
>> Looking at the server system logs, I found many identical segfault
>> entries:
>>
>> Nov 28 10:44:55 snc-guacamole kernel: [9829816.814388]
>> guacd[2871114]: segfault at 7fdd045f4bf8 ip 00007fd561fe2433 sp
>> 00007fd5045f12e8 error 4 in ld-musl-x86_64.so.1[7fd561f9f000+4c000]
>>
>> Nov 28 10:44:55 snc-guacamole kernel: [9829816.826102] Code: e3 18 ff
>> ff 8b 44 24 08 48 81 c4 90 00 00 00 5b 5d 41 5c c3 64 48 8b 04 25 00
>> 00 00 00 48 8b 90 80 00 00 00 89 ff 48 8d 14 fa <48> 39 32 74 07 48
>> 89 32 80 48 42 01 31 c0 c3 48 85 f6 74 0a b8 16
>>
>> Nov 28 10:44:56 snc-guacamole kernel: [9829817.741713]
>> guacd[2871125]: segfault at 7fdd035fabf8 ip 00007fd561fe2433 sp
>> 00007fd5035f72e8 error 4 in ld-musl-x86_64.so.1[7fd561f9f000+4c000]
>>
>> Nov 28 10:44:56 snc-guacamole kernel: [9829817.748886] Code: e3 18 ff
>> ff 8b 44 24 08 48 81 c4 90 00 00 00 5b 5d 41 5c c3 64 48 8b 04 25 00
>> 00 00 00 48 8b 90 80 00 00 00 89 ff 48 8d 14 fa <48> 39 32 74 07 48
>> 89 32 80 48 42 01 31 c0 c3 48 85 f6 74 0a b8 16
>>
>> Is it something you are aware of?
>>
>> Considering that this happens at around 60 connections, could it be
>> in any way related to
>> https://www.mail-archive.com/user@guacamole.apache.org/msg12630.html
>> <https://urldefense.com/v3/__https:/www.mail-archive.com/user@guacamole.apache.org/msg12630.html__;!!DOxrgLBm!BJT57FqcHgW6YPm52t1beSy9wP9vpgL1kcKD094F2a7OPybOwFktH3i3pvAzPDtm9naffsubtm4RPd_roIBefyd4jLJhEiJPNdGVM2jw-A$>?
>>
>> I cannot reproduce the error currently as this happens only when
>> exceed our usual number of users that is far below 60. I will try to
>> deploy next week an instance of guacamole with guacd in debug mode
>> and to initiate more than 60 connections to it.
>>
>> Best regards,
>>
>> Paul
>>
>> *From:*Nick Couchman <vnick@apache.org <ma...@apache.org>>
>> *Sent:* Thursday, November 28, 2024 2:50 PM
>> *To:* user@guacamole.apache.org <ma...@guacamole.apache.org>
>> *Subject:* Re: Maximum number of simultaneous RDP connections
>>
>> On Thu, Nov 28, 2024 at 8:27 AM HASENOHR Paul
>> <Pa...@ec.europa.eu.invalid> wrote:
>>
>> Hello,
>>
>> We have been using Guacamole for the past years with great
>> satisfaction for our users. Guacamole is running on Docker
>> (standard images to which a custom CA has been added) on a Debian
>> 12 VM.
>>
>> We noticed today during a training that led to an increase of the
>> number of concurrent connections that we could not exceed 55-58
>> RDP connections. Any other attempt to connect to any RDP server
>> (several machines running Ubuntu 22.04 with xorgxrdp, some of
>> them without any load) returned immediately a black screen with
>> the message “You have been disconnected”.
>>
>> In the guacd logs, any failed connection was logged as follows:
>>
>> guacd[1]: INFO: Creating new client for protocol "rdp"
>>
>> guacd[1]: INFO: Connection ID is
>> "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa"
>>
>> guacd[1916025]: INFO: Security mode: TLS
>>
>> guacd[1916025]: INFO: Resize method: display-update
>>
>> guacd[1916025]: INFO: No clipboard line-ending normalization
>> specified. Defaulting to preserving the format of all line endings.
>>
>> guacd[1916025]: INFO: User
>> "@b2935015-b864-4928-a674-2c26ed1dd45d" joined connection
>> "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa" (1 users now present)
>>
>> guacd[1916025]: INFO: Recording of session will be saved to
>> "/recording//20241128_100346_XXXXXXXXXX-terminal-004-M_N".
>>
>> guacd[1916025]: INFO: Loading keymap "base"
>>
>> guacd[1916025]: INFO: Loading keymap "en-us-qwerty"
>>
>> guacd[1]: INFO: Connection
>> "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa" removed.
>>
>> A handful of things that I can think of to check:
>>
>> * It's probably worth putting guacd into debug mode ("-L debug" on
>> the command line, or add the log configuration to guacd.conf) and see
>> if that yields any more useful information on what happens when the
>> connections are failing.
>>
>> * Since you're running in Docker, check the various Docker limits and
>> see if you're running up against something related to container
>> limits - amount of memory, number of open files, process, etc. I
>> believe Docker has facilities for limiting this similar to the normal
>> "limits" and/or "ulimit" command on Linux, but probably slightly
>> different configurations in slightly different places. System logs
>> and/or Docker logs might also indicate bumping up against this.
>>
>> * Also, check your system logs, particularly any facility that might
>> be present for core dumps and see if anything is being generated that
>> indicates a segfault or other limit.
>>
>> -Nick
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail:user-unsubscribe@guacamole.apache.org
>> For additional commands, e-mail:user-help@guacamole.apache.org
Re: ***UNCHECKED*** RE: Maximum number of simultaneous RDP connections
Posted by Sean Hulbert <sh...@securitycentric.net.INVALID>.
This is generally a resource issue,
On the Guacamole System what is your vCPU, RAM?
Keep in mind you will need to increase the transaction threads on the
web server are you using Apache or NGINX?
we manage 2000+ connections load balance across 3 guacamole systems.
* vCPU 24 ( 2 Sockets (4 Cores) - 8 Cores 16 Threads)
* 64Gb RAM
* 10GBps (NIC-TEAMING)
Note; this is not a container, but a VDI compiled version of Guacamole
using MariaDB, MFA and a tuned NGINX install.
*Thank You*
Sean Hulbert
*Security Centric Inc.*
A Cybersecurity Virtualization Enablement Company
/StormCloud Gov, Protected CUI Environment!/
Industry's most secure CMMC/iTAR virtual desktops!
*/FedRAMP MIL4 in process (RAR)/*
System Award Management
*CAGE: 8AUV4*
*SAM ID: UMJLJ8A7BMT3*
AFCEA San Francisco Chapter President
If you have heard of a hacker by name, he/she has failed, fear the
hacker you haven’t heard of!
CONFIDENTIALITY NOTICE: This communication with its contents may contain
confidential and/or legally privileged information. It is solely for the
use of the intended recipient(s). Unauthorized interception, review, use
or disclosure is prohibited and may violate applicable laws including
the Electronic Communications Privacy Act. If you are not the intended
recipient, please contact the sender and destroy all copies of the
communication. Content within this email communication is not legally
binding as a contract and no promises are guaranteed unless in a formal
contract outside this email communication.
igitur qui desiderat pacem, praeparet bellum!!!
Epitoma Rei Militaris
On 12/6/2024 11:01 AM, HASENOHR Paul wrote:
>
> Dear Nick,
>
> As promised, I ran some further tests.
>
> With the help of a colleague, we could reproduce the issue on a test
> instance (max 59 concurrent RDP connections).
>
> After having created 80 user accounts linked evenly to one out of 4
> rdp connections (towards xrdp servers), the test protocol was the
> following:
>
> -With selenium, launch 60 chrome headless instances connecting to
> Guacamole (one every 20s):
>
> oT0: towards RDP1
>
> oT0+20: towards RDP2
>
> oT0+40: towards RDP3
>
> oT0+60: towards RDP4
>
> oT0+80: towards RDP1 and so on
>
> -Launch a 61^st instance one minute after the 60th
>
> -Take a “screenshot” 10s after having initiated the connection
>
> -Keep each connection active for 30 minutes
>
> The outcome is the following (with T0=2024-12-06T14:42:45Z):
>
> -At 15:00:24 (GMT), a connection could not be established and the
> following log entries could be found:
>
> oIn /var/log/messages (GMT+1):
>
> Dec 6 16:00:24 s-jrciprjeop151p kernel: traps: guacd[67983] general
> protection fault ip:7f8b34a97664 sp:7f8ae349ce28 error:0 in
> ld-musl-x86_64.so.1[7f8b34a86000+4c000]
>
> oIn the guacd Docker container logs:
>
> 2024-12-06T15:00:24.770823151Z guacd[1]: INFO: Creating new client
> for protocol "rdp"
>
> 2024-12-06T15:00:24.774091622Z guacd[1]: INFO: Connection ID is
> "$2ba7c0c0-60cf-41d9-a970-2bc20f15c624"
>
> 2024-12-06T15:00:24.890940897Z guacd[1]: INFO: Connection
> "$2ba7c0c0-60cf-41d9-a970-2bc20f15c624" removed.
>
> 2024-12-06T15:00:24.890979827Z guacd[1]: DEBUG: Unable to request
> termination of client process: No such process
>
> 2024-12-06T15:00:24.890994171Z guacd[1]: DEBUG: All child processes
> for connection "$2ba7c0c0-60cf-41d9-a970-2bc20f15c624" have been
> terminated.
>
> oIn addition, a core dump has been generated:
> core-guacd.12920.8a6bb6a83b86.1733497224 (attached to that message,
> 1.3GB uncompressed)
>
> -At 15:03:04 (GMT), the 61^st selenium process tried to create what
> was in fact the 60^th RDP connection (as the session of 15:00:24 could
> not be created) and it failed to do so with the following guacd log
> entries repeated roughly every 15 seconds until the first selenium
> process got stopped and the associated connection removed
>
> oLog entries for failed attempts to connect:
>
> 2024-12-06T15:03:04.687449173Z guacd[1]: INFO: Creating new client
> for protocol "rdp"
>
> 2024-12-06T15:03:04.691148814Z guacd[1]: INFO: Connection ID is
> "$ff003e4a-7527-4e5f-9e61-bdf6b10a5536"
>
> 2024-12-06T15:03:04.702893330Z guacd[14114]: DEBUG: Processing
> instruction: size
>
> 2024-12-06T15:03:04.702942741Z guacd[14114]: DEBUG: Processing
> instruction: audio
>
> 2024-12-06T15:03:04.702952374Z guacd[14114]: DEBUG: Processing
> instruction: video
>
> 2024-12-06T15:03:04.702959284Z guacd[14114]: DEBUG: Processing
> instruction: image
>
> 2024-12-06T15:03:04.702965978Z guacd[14114]: DEBUG: Processing
> instruction: timezone
>
> 2024-12-06T15:03:04.702972998Z guacd[14114]: DEBUG: Processing
> instruction: name
>
> 2024-12-06T15:03:04.703154230Z guacd[14114]: DEBUG: Parameter
> "console" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703198283Z guacd[14114]: DEBUG: Parameter
> "console-audio" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703355499Z guacd[14114]: DEBUG: Parameter
> "ignore-cert" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703433340Z guacd[14114]: DEBUG: Parameter
> "disable-auth" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703442113Z guacd[14114]: INFO: Security mode: TLS
>
> 2024-12-06T15:03:04.703450913Z guacd[14114]: DEBUG: User
> resolution is 1024x629 at 96 DPI
>
> 2024-12-06T15:03:04.703458296Z guacd[14114]: DEBUG: Parameter
> "dpi" omitted. Using default value of 96.
>
> 2024-12-06T15:03:04.703478890Z guacd[14114]: DEBUG: Using
> resolution of 1024x629 at 96 DPI
>
> 2024-12-06T15:03:04.703488497Z guacd[14114]: DEBUG: Parameter
> "force-lossless" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703496257Z guacd[14114]: DEBUG: Parameter
> "read-only" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703532181Z guacd[14114]: DEBUG: Parameter
> "client-name" omitted. Using default value of "Guacamole RDP".
>
> 2024-12-06T15:03:04.703542197Z guacd[14114]: DEBUG: Parameter
> "enable-wallpaper" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703578781Z guacd[14114]: DEBUG: Parameter
> "enable-theming" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703587648Z guacd[14114]: DEBUG: Parameter
> "enable-font-smoothing" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703676486Z guacd[14114]: DEBUG: Parameter
> "enable-full-window-drag" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703703149Z guacd[14114]: DEBUG: Parameter
> "enable-desktop-composition" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703829234Z guacd[14114]: DEBUG: Parameter
> "enable-menu-animations" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703902675Z guacd[14114]: DEBUG: Parameter
> "disable-bitmap-caching" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703959216Z guacd[14114]: DEBUG: Parameter
> "disable-offscreen-caching" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703976189Z guacd[14114]: DEBUG: Parameter
> "disable-glyph-caching" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.703984942Z guacd[14114]: DEBUG: Glyph caching
> is currently universally disabled, regardless of the value of the
> "disable-glyph-caching" parameter, as glyph caching support is not
> considered stable by FreeRDP as of the FreeRDP 2.0.0 release. See:
> https://issues.apache.org/jira/browse/GUACAMOLE-1191
>
> 2024-12-06T15:03:04.703992912Z guacd[14114]: DEBUG: Parameter
> "color-depth" omitted. Using default value of 16.
>
> 2024-12-06T15:03:04.704000129Z guacd[14114]: DEBUG: Parameter
> "enable-printing" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704007309Z guacd[14114]: DEBUG: Parameter
> "printer-name" omitted. Using default value of "Guacamole Printer".
>
> 2024-12-06T15:03:04.704018796Z guacd[14114]: DEBUG: Parameter
> "enable-drive" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704027636Z guacd[14114]: DEBUG: Parameter
> "drive-name" omitted. Using default value of "Guacamole Filesystem".
>
> 2024-12-06T15:03:04.704037463Z guacd[14114]: DEBUG: Parameter
> "drive-path" omitted. Using default value of "".
>
> 2024-12-06T15:03:04.704044590Z guacd[14114]: DEBUG: Parameter
> "create-drive-path" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704074503Z guacd[14114]: DEBUG: Parameter
> "timezone" omitted. Using default value of "Europe/Bucharest".
>
> 2024-12-06T15:03:04.704082760Z guacd[14114]: DEBUG: Parameter
> "enable-sftp" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704123764Z guacd[14114]: DEBUG: Parameter
> "sftp-hostname" omitted. Using default value of
> "s-jrciprjeos144p.cidsn.jrc.it".
>
> 2024-12-06T15:03:04.704149121Z guacd[14114]: DEBUG: Parameter
> "sftp-port" omitted. Using default value of "22".
>
> 2024-12-06T15:03:04.704199205Z guacd[14114]: DEBUG: Parameter
> "sftp-username" omitted. Using default value of "".
>
> 2024-12-06T15:03:04.704224352Z guacd[14114]: DEBUG: Parameter
> "sftp-password" omitted. Using default value of "".
>
> 2024-12-06T15:03:04.704231665Z guacd[14114]: DEBUG: Parameter
> "sftp-passphrase" omitted. Using default value of "".
>
> 2024-12-06T15:03:04.704293443Z guacd[14114]: DEBUG: Parameter
> "sftp-root-directory" omitted. Using default value of "/".
>
> 2024-12-06T15:03:04.704324016Z guacd[14114]: DEBUG: Parameter
> "sftp-server-alive-interval" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704336816Z guacd[14114]: DEBUG: Parameter
> "sftp-disable-download" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704348143Z guacd[14114]: DEBUG: Parameter
> "sftp-disable-upload" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704360607Z guacd[14114]: DEBUG: Parameter
> "recording-name" omitted. Using default value of "recording".
>
> 2024-12-06T15:03:04.704421761Z guacd[14114]: DEBUG: Parameter
> "recording-exclude-output" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704439167Z guacd[14114]: DEBUG: Parameter
> "recording-exclude-mouse" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704534589Z guacd[14114]: DEBUG: Parameter
> "recording-exclude-touch" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704572016Z guacd[14114]: DEBUG: Parameter
> "recording-include-keys" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704586469Z guacd[14114]: DEBUG: Parameter
> "create-recording-path" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704594846Z guacd[14114]: INFO: Resize method:
> none
>
> 2024-12-06T15:03:04.704602279Z guacd[14114]: DEBUG: Parameter
> "enable-touch" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704618049Z guacd[14114]: DEBUG: Parameter
> "enable-audio-input" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704626053Z guacd[14114]: DEBUG: Parameter
> "gateway-port" omitted. Using default value of 443.
>
> 2024-12-06T15:03:04.704632533Z guacd[14114]: DEBUG: Parameter
> "disable-copy" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704677454Z guacd[14114]: DEBUG: Parameter
> "disable-paste" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704688920Z guacd[14114]: INFO: No clipboard
> line-ending normalization specified. Defaulting to preserving the
> format of all line endings.
>
> 2024-12-06T15:03:04.704697854Z guacd[14114]: DEBUG: Parameter
> "wol-send-packet" omitted. Using default value of 0.
>
> 2024-12-06T15:03:04.704821772Z guacd[14114]: INFO: User
> "@f8a7f328-eb75-41e3-8b62-88b5fdb69de4" joined connection
> "$ff003e4a-7527-4e5f-9e61-bdf6b10a5536" (1 users now present)
>
> 2024-12-06T15:03:04.704853676Z guacd[14114]: DEBUG: Client is
> using protocol version "VERSION_1_5_0"
>
> 2024-12-06T15:03:04.709035759Z guacd[14114]: INFO: Loading keymap
> "base"
>
> 2024-12-06T15:03:04.709114240Z guacd[14114]: INFO: Loading keymap
> "en-us-qwerty"
>
> 2024-12-06T15:03:04.709934353Z guacd[14114]: DEBUG: Support for
> CLIPRDR (clipboard redirection) registered. Awaiting channel connection.
>
> 2024-12-06T15:03:04.709974067Z guacd[14114]: DEBUG: Local
> framebuffer format PIXEL_FORMAT_BGRX32
>
> 2024-12-06T15:03:04.709982987Z guacd[14114]: DEBUG: Remote
> framebuffer format PIXEL_FORMAT_RGB16
>
> 2024-12-06T15:03:05.829568731Z guacd[1]: DEBUG: Guacamole connection
> closed during handshake
>
> 2024-12-06T15:03:05.829625550Z guacd[1]: DEBUG: Error reading
> "select": End of stream reached while reading instruction
>
> 2024-12-06T15:03:06.862328987Z guacd[14114]: DEBUG: SSL_CTX_new failed
>
> 2024-12-06T15:03:06.862375254Z guacd[14114]: DEBUG:
> transport_connect_tls:freerdp_set_last_error_ex
> ERRCONNECT_CONNECT_CANCELLED [0x0002000B]
>
> 2024-12-06T15:03:06.874587928Z guacd[14114]: INFO: RDP server
> closed/refused connection: Connection failed (server unreachable?)
>
> 2024-12-06T15:03:06.953424771Z guacd[14114]: INFO: User
> "@f8a7f328-eb75-41e3-8b62-88b5fdb69de4" disconnected (0 users remain)
>
> 2024-12-06T15:03:06.953464758Z guacd[14114]: INFO: Last user of
> connection "$ff003e4a-7527-4e5f-9e61-bdf6b10a5536" disconnected
>
> 2024-12-06T15:03:06.953560242Z guacd[14114]: DEBUG: Requesting
> termination of client...
>
> 2024-12-06T15:03:06.954335475Z guacd[14114]: DEBUG: Client
> terminated successfully.
>
> 2024-12-06T15:03:06.958190642Z guacd[1]: INFO: Connection
> "$ff003e4a-7527-4e5f-9e61-bdf6b10a5536" removed.
>
> oLog entries when the 1^st connection got released and the 61^st
> selenium process could connect (becoming then the 59^th active
> connection):
>
> 2024-12-06T15:14:48.788592903Z guacd[3878]: ERROR: User is not
> responding.
>
> 2024-12-06T15:14:48.788735278Z guacd[3878]: INFO: User
> "@2c7e97ad-6054-4f8b-be0c-95a56f34ff15" disconnected (0 users remain)
>
> 2024-12-06T15:14:48.788901425Z guacd[3878]: INFO: Last user of
> connection "$6c40d2e8-57c4-48ae-9115-cbb63e87221a" disconnected
>
> 2024-12-06T15:14:48.789130750Z guacd[3878]: DEBUG: Requesting
> termination of client...
>
> 2024-12-06T15:14:48.965798638Z guacd[3878]: DEBUG: CLIPRDR
> (clipboard redirection) channel disconnected.
>
> 2024-12-06T15:14:48.978637197Z guacd[3878]: INFO: Internal RDP
> client disconnected
>
> 2024-12-06T15:14:48.979215164Z guacd[3878]: DEBUG: Client
> terminated successfully.
>
> 2024-12-06T15:14:48.981992660Z guacd[1]: INFO: Connection
> "$6c40d2e8-57c4-48ae-9115-cbb63e87221a" removed.
>
> 2024-12-06T15:14:48.982014235Z guacd[1]: DEBUG: All child processes
> for connection "$6c40d2e8-57c4-48ae-9115-cbb63e87221a" have been
> terminated.
>
> 2024-12-06T15:14:55.578678366Z guacd[1]: INFO: Creating new client
> for protocol "rdp"
>
> 2024-12-06T15:14:55.581795996Z guacd[1]: INFO: Connection ID is
> "$5565bee8-85e9-403b-a9a8-a2fcc80973c0"
>
> 2024-12-06T15:14:55.593694171Z guacd[20939]: DEBUG: Processing
> instruction: size
>
> 2024-12-06T15:14:55.593737238Z guacd[20939]: DEBUG: Processing
> instruction: audio
>
> 2024-12-06T15:14:55.593746798Z guacd[20939]: DEBUG: Processing
> instruction: video
>
> 2024-12-06T15:14:55.593757758Z guacd[20939]: DEBUG: Processing
> instruction: image
>
> 2024-12-06T15:14:55.593796032Z guacd[20939]: DEBUG: Processing
> instruction: timezone
>
> 2024-12-06T15:14:55.593856099Z guacd[20939]: DEBUG: Processing
> instruction: name
>
> 2024-12-06T15:14:55.593978614Z guacd[20939]: DEBUG: Parameter
> "console" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594021701Z guacd[20939]: DEBUG: Parameter
> "console-audio" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594030645Z guacd[20939]: DEBUG: Parameter
> "ignore-cert" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594037575Z guacd[20939]: DEBUG: Parameter
> "disable-auth" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594049918Z guacd[20939]: INFO: Security mode: TLS
>
> 2024-12-06T15:14:55.594061655Z guacd[20939]: DEBUG: User
> resolution is 1024x629 at 96 DPI
>
> 2024-12-06T15:14:55.594069009Z guacd[20939]: DEBUG: Parameter
> "dpi" omitted. Using default value of 96.
>
> 2024-12-06T15:14:55.594111496Z guacd[20939]: DEBUG: Using
> resolution of 1024x629 at 96 DPI
>
> 2024-12-06T15:14:55.594124679Z guacd[20939]: DEBUG: Parameter
> "force-lossless" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594155193Z guacd[20939]: DEBUG: Parameter
> "read-only" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594179860Z guacd[20939]: DEBUG: Parameter
> "client-name" omitted. Using default value of "Guacamole RDP".
>
> 2024-12-06T15:14:55.594224500Z guacd[20939]: DEBUG: Parameter
> "enable-wallpaper" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594330428Z guacd[20939]: DEBUG: Parameter
> "enable-theming" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594443633Z guacd[20939]: DEBUG: Parameter
> "enable-font-smoothing" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594471426Z guacd[20939]: DEBUG: Parameter
> "enable-full-window-drag" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594478760Z guacd[20939]: DEBUG: Parameter
> "enable-desktop-composition" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594485163Z guacd[20939]: DEBUG: Parameter
> "enable-menu-animations" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594491437Z guacd[20939]: DEBUG: Parameter
> "disable-bitmap-caching" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594497673Z guacd[20939]: DEBUG: Parameter
> "disable-offscreen-caching" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594504207Z guacd[20939]: DEBUG: Parameter
> "disable-glyph-caching" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594517297Z guacd[20939]: DEBUG: Glyph caching
> is currently universally disabled, regardless of the value of the
> "disable-glyph-caching" parameter, as glyph caching support is not
> considered stable by FreeRDP as of the FreeRDP 2.0.0 release. See:
> https://issues.apache.org/jira/browse/GUACAMOLE-1191
>
> 2024-12-06T15:14:55.594527254Z guacd[20939]: DEBUG: Parameter
> "color-depth" omitted. Using default value of 16.
>
> 2024-12-06T15:14:55.594579311Z guacd[20939]: DEBUG: Parameter
> "enable-printing" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594641412Z guacd[20939]: DEBUG: Parameter
> "printer-name" omitted. Using default value of "Guacamole Printer".
>
> 2024-12-06T15:14:55.594658322Z guacd[20939]: DEBUG: Parameter
> "enable-drive" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594679715Z guacd[20939]: DEBUG: Parameter
> "drive-name" omitted. Using default value of "Guacamole Filesystem".
>
> 2024-12-06T15:14:55.594707283Z guacd[20939]: DEBUG: Parameter
> "drive-path" omitted. Using default value of "".
>
> 2024-12-06T15:14:55.594722989Z guacd[20939]: DEBUG: Parameter
> "create-drive-path" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594732299Z guacd[20939]: DEBUG: Parameter
> "timezone" omitted. Using default value of "Europe/Bucharest".
>
> 2024-12-06T15:14:55.594739166Z guacd[20939]: DEBUG: Parameter
> "enable-sftp" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.594781820Z guacd[20939]: DEBUG: Parameter
> "sftp-hostname" omitted. Using default value of
> "s-jrciprjeos144p.cidsn.jrc.it".
>
> 2024-12-06T15:14:55.594844397Z guacd[20939]: DEBUG: Parameter
> "sftp-port" omitted. Using default value of "22".
>
> 2024-12-06T15:14:55.594911355Z guacd[20939]: DEBUG: Parameter
> "sftp-username" omitted. Using default value of "".
>
> 2024-12-06T15:14:55.594925691Z guacd[20939]: DEBUG: Parameter
> "sftp-password" omitted. Using default value of "".
>
> 2024-12-06T15:14:55.595152214Z guacd[20939]: DEBUG: Parameter
> "sftp-passphrase" omitted. Using default value of "".
>
> 2024-12-06T15:14:55.595269395Z guacd[20939]: DEBUG: Parameter
> "sftp-root-directory" omitted. Using default value of "/".
>
> 2024-12-06T15:14:55.595299073Z guacd[20939]: DEBUG: Parameter
> "sftp-server-alive-interval" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.595312166Z guacd[20939]: DEBUG: Parameter
> "sftp-disable-download" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.595322743Z guacd[20939]: DEBUG: Parameter
> "sftp-disable-upload" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.595334003Z guacd[20939]: DEBUG: Parameter
> "recording-name" omitted. Using default value of "recording".
>
> 2024-12-06T15:14:55.595347746Z guacd[20939]: DEBUG: Parameter
> "recording-exclude-output" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.595357583Z guacd[20939]: DEBUG: Parameter
> "recording-exclude-mouse" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.595371780Z guacd[20939]: DEBUG: Parameter
> "recording-exclude-touch" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.595383523Z guacd[20939]: DEBUG: Parameter
> "recording-include-keys" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.595398177Z guacd[20939]: DEBUG: Parameter
> "create-recording-path" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.595410687Z guacd[20939]: INFO: Resize method:
> none
>
> 2024-12-06T15:14:55.595422641Z guacd[20939]: DEBUG: Parameter
> "enable-touch" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.595438557Z guacd[20939]: DEBUG: Parameter
> "enable-audio-input" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.595451764Z guacd[20939]: DEBUG: Parameter
> "gateway-port" omitted. Using default value of 443.
>
> 2024-12-06T15:14:55.595465344Z guacd[20939]: DEBUG: Parameter
> "disable-copy" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.595485545Z guacd[20939]: DEBUG: Parameter
> "disable-paste" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.595502142Z guacd[20939]: INFO: No clipboard
> line-ending normalization specified. Defaulting to preserving the
> format of all line endings.
>
> 2024-12-06T15:14:55.595516618Z guacd[20939]: DEBUG: Parameter
> "wol-send-packet" omitted. Using default value of 0.
>
> 2024-12-06T15:14:55.595583479Z guacd[20939]: INFO: User
> "@3e38f412-f074-4969-b622-bf0812316c6e" joined connection
> "$5565bee8-85e9-403b-a9a8-a2fcc80973c0" (1 users now present)
>
> 2024-12-06T15:14:55.595605759Z guacd[20939]: DEBUG: Client is
> using protocol version "VERSION_1_5_0"
>
> 2024-12-06T15:14:55.600200128Z guacd[20939]: INFO: Loading keymap
> "base"
>
> 2024-12-06T15:14:55.600241289Z guacd[20939]: INFO: Loading keymap
> "en-us-qwerty"
>
> 2024-12-06T15:14:55.601047935Z guacd[20939]: DEBUG: Support for
> CLIPRDR (clipboard redirection) registered. Awaiting channel connection.
>
> 2024-12-06T15:14:55.601103492Z guacd[20939]: DEBUG: Local
> framebuffer format PIXEL_FORMAT_BGRX32
>
> 2024-12-06T15:14:55.601129852Z guacd[20939]: DEBUG: Remote
> framebuffer format PIXEL_FORMAT_RGB16
>
> 2024-12-06T15:14:59.984055789Z guacd[20939]: DEBUG: CLIPRDR
> (clipboard redirection) channel connected.
>
> 2024-12-06T15:15:00.328241921Z guacd[20939]: DEBUG: Clipboard data
> received. Reporting availability of clipboard data to RDP server.
>
> -At 15:32:48 (GMT), while RDP connections were being closed due to the
> selenium processes being stopped, a core dump has been generated.
>
> oIn /var/log/messages (GMT+1)
>
> Dec 6 16:32:48 s-jrciprjeop151p kernel: traps: guacd[68113] general
> protection fault ip:7f8b34a97a7c sp:7f8ae349d100 error:0 in
> ld-musl-x86_64.so.1[7f8b34a86000+4c000]
>
> oIn guacd docker logs (GMT)
>
> 2024-12-06T15:32:48.624974718Z guacd[12924]: ERROR: User is not
> responding.
>
> 2024-12-06T15:32:48.625078086Z guacd[12924]: INFO: User
> "@8f7db077-f633-466d-a459-e00a18357e7c" disconnected (0 users remain)
>
> 2024-12-06T15:32:48.625151523Z guacd[12924]: INFO: Last user of
> connection "$26bd776b-6d33-4fea-a5a1-4bc6ff3d11cf" disconnected
>
> 2024-12-06T15:32:48.625280645Z guacd[12924]: DEBUG: Requesting
> termination of client...
>
> 2024-12-06T15:32:48.750757953Z guacd[12924]: DEBUG: CLIPRDR
> (clipboard redirection) channel disconnected.
>
> 2024-12-06T15:32:48.765691056Z guacd[12924]: INFO: Internal RDP
> client disconnected
>
> 2024-12-06T15:32:48.766157544Z guacd[12924]: DEBUG: Client
> terminated successfully.
>
> 2024-12-06T15:32:48.878712775Z guacd[1]: INFO: Connection
> "$26bd776b-6d33-4fea-a5a1-4bc6ff3d11cf" removed.
>
> 2024-12-06T15:32:48.878757332Z guacd[1]: DEBUG: All child processes
> for connection "$26bd776b-6d33-4fea-a5a1-4bc6ff3d11cf" have been
> terminated.
>
> 2024-12-06T15:33:06.362058899Z guacd[1]: DEBUG: Guacamole connection
> closed during handshake
>
> 2024-12-06T15:33:06.362146170Z guacd[1]: DEBUG: Error reading
> "select": End of stream reached while reading instruction
>
> 2024-12-06T15:33:08.662943267Z guacd[13264]: ERROR: User is not
> responding.
>
> 2024-12-06T15:33:08.663123142Z guacd[13264]: INFO: User
> "@5ee9cdfa-0d04-4c2f-acfe-55a114e2f20a" disconnected (0 users remain)
>
> 2024-12-06T15:33:08.663189616Z guacd[13264]: INFO: Last user of
> connection "$4bc9a390-5a8a-4f49-baef-d1e71c5bc666" disconnected
>
> 2024-12-06T15:33:08.663358655Z guacd[13264]: DEBUG: Requesting
> termination of client...
>
> 2024-12-06T15:33:08.838800641Z guacd[13264]: DEBUG: CLIPRDR
> (clipboard redirection) channel disconnected.
>
> 2024-12-06T15:33:08.849452825Z guacd[13264]: INFO: Internal RDP
> client disconnected
>
> 2024-12-06T15:33:08.849665197Z guacd[13264]: DEBUG: Client
> terminated successfully.
>
> 2024-12-06T15:33:08.852907658Z guacd[1]: INFO: Connection
> "$4bc9a390-5a8a-4f49-baef-d1e71c5bc666" removed.
>
> 2024-12-06T15:33:08.852963162Z guacd[1]: DEBUG: All child processes
> for connection "$4bc9a390-5a8a-4f49-baef-d1e71c5bc666" have been
> terminated.
>
> oA core dump has been generated:
> core-guacd.12924.8a6bb6a83b86.1733499168 attached to that message
> (1.3G uncompressed)
>
> For completeness, I attach also the guacd logs of the whole testing
> session.
>
> I would be grateful if you, or some other developer, could have a look
> at those elements. I am of course available to provide you with any
> other information you might need. In case it would be helpful, I have
> other core dumps from previous tests.
>
> Kind regards,
>
> Paul
>
> *From:*HASENOHR Paul <Pa...@ec.europa.eu.INVALID>
> *Sent:* Thursday, November 28, 2024 5:25 PM
> *To:* user@guacamole.apache.org
> *Subject:* RE: Maximum number of simultaneous RDP connections
>
> Dear Nick,
>
> Thank you for your suggestions.
>
> Looking at the server system logs, I found many identical segfault
> entries:
>
> Nov 28 10:44:55 snc-guacamole kernel: [9829816.814388] guacd[2871114]:
> segfault at 7fdd045f4bf8 ip 00007fd561fe2433 sp 00007fd5045f12e8 error
> 4 in ld-musl-x86_64.so.1[7fd561f9f000+4c000]
>
> Nov 28 10:44:55 snc-guacamole kernel: [9829816.826102] Code: e3 18 ff
> ff 8b 44 24 08 48 81 c4 90 00 00 00 5b 5d 41 5c c3 64 48 8b 04 25 00
> 00 00 00 48 8b 90 80 00 00 00 89 ff 48 8d 14 fa <48> 39 32 74 07 48 89
> 32 80 48 42 01 31 c0 c3 48 85 f6 74 0a b8 16
>
> Nov 28 10:44:56 snc-guacamole kernel: [9829817.741713] guacd[2871125]:
> segfault at 7fdd035fabf8 ip 00007fd561fe2433 sp 00007fd5035f72e8 error
> 4 in ld-musl-x86_64.so.1[7fd561f9f000+4c000]
>
> Nov 28 10:44:56 snc-guacamole kernel: [9829817.748886] Code: e3 18 ff
> ff 8b 44 24 08 48 81 c4 90 00 00 00 5b 5d 41 5c c3 64 48 8b 04 25 00
> 00 00 00 48 8b 90 80 00 00 00 89 ff 48 8d 14 fa <48> 39 32 74 07 48 89
> 32 80 48 42 01 31 c0 c3 48 85 f6 74 0a b8 16
>
> Is it something you are aware of?
>
> Considering that this happens at around 60 connections, could it be in
> any way related to
> https://www.mail-archive.com/user@guacamole.apache.org/msg12630.html
> <https://urldefense.com/v3/__https:/www.mail-archive.com/user@guacamole.apache.org/msg12630.html__;!!DOxrgLBm!BJT57FqcHgW6YPm52t1beSy9wP9vpgL1kcKD094F2a7OPybOwFktH3i3pvAzPDtm9naffsubtm4RPd_roIBefyd4jLJhEiJPNdGVM2jw-A$>?
>
> I cannot reproduce the error currently as this happens only when
> exceed our usual number of users that is far below 60. I will try to
> deploy next week an instance of guacamole with guacd in debug mode and
> to initiate more than 60 connections to it.
>
> Best regards,
>
> Paul
>
> *From:*Nick Couchman <vnick@apache.org <ma...@apache.org>>
> *Sent:* Thursday, November 28, 2024 2:50 PM
> *To:* user@guacamole.apache.org <ma...@guacamole.apache.org>
> *Subject:* Re: Maximum number of simultaneous RDP connections
>
> On Thu, Nov 28, 2024 at 8:27 AM HASENOHR Paul
> <Pa...@ec.europa.eu.invalid> wrote:
>
> Hello,
>
> We have been using Guacamole for the past years with great
> satisfaction for our users. Guacamole is running on Docker
> (standard images to which a custom CA has been added) on a Debian
> 12 VM.
>
> We noticed today during a training that led to an increase of the
> number of concurrent connections that we could not exceed 55-58
> RDP connections. Any other attempt to connect to any RDP server
> (several machines running Ubuntu 22.04 with xorgxrdp, some of them
> without any load) returned immediately a black screen with the
> message “You have been disconnected”.
>
> In the guacd logs, any failed connection was logged as follows:
>
> guacd[1]: INFO: Creating new client for protocol "rdp"
>
> guacd[1]: INFO: Connection ID is
> "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa"
>
> guacd[1916025]: INFO: Security mode: TLS
>
> guacd[1916025]: INFO: Resize method: display-update
>
> guacd[1916025]: INFO: No clipboard line-ending normalization
> specified. Defaulting to preserving the format of all line endings.
>
> guacd[1916025]: INFO: User
> "@b2935015-b864-4928-a674-2c26ed1dd45d" joined connection
> "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa" (1 users now present)
>
> guacd[1916025]: INFO: Recording of session will be saved to
> "/recording//20241128_100346_XXXXXXXXXX-terminal-004-M_N".
>
> guacd[1916025]: INFO: Loading keymap "base"
>
> guacd[1916025]: INFO: Loading keymap "en-us-qwerty"
>
> guacd[1]: INFO: Connection "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa"
> removed.
>
> A handful of things that I can think of to check:
>
> * It's probably worth putting guacd into debug mode ("-L debug" on the
> command line, or add the log configuration to guacd.conf) and see if
> that yields any more useful information on what happens when the
> connections are failing.
>
> * Since you're running in Docker, check the various Docker limits and
> see if you're running up against something related to container limits
> - amount of memory, number of open files, process, etc. I believe
> Docker has facilities for limiting this similar to the normal "limits"
> and/or "ulimit" command on Linux, but probably slightly different
> configurations in slightly different places. System logs and/or Docker
> logs might also indicate bumping up against this.
>
> * Also, check your system logs, particularly any facility that might
> be present for core dumps and see if anything is being generated that
> indicates a segfault or other limit.
>
> -Nick
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:user-unsubscribe@guacamole.apache.org
> For additional commands, e-mail:user-help@guacamole.apache.org
Re: Maximum number of simultaneous RDP connections
Posted by Tobias Feller | OPC <tf...@opc.de>.
Found this:
https://github.com/ncabatoff/process-exporter
maybe with the data of this tool to get rid of the problem?
I also set in my docker-compose.yml
environment:
GUACD_LOG_LEVEL: debug
on both hosts, in preparation for the ":latest" test.
Am 21.01.2025 um 12:48 schrieb Tobias Feller | OPC:
>
> Hello Paul,
>
> sounds good for me.
>
> Instead of uses the Debian as base for the image, i can also do a test
> with some more debugging.
>
> When i disable one of the load balancing hosts i can reach the limit
> very easy, but i can not let the guacamole in this state for a longer
> time, because it is a production system.
>
> I want to support you of course to catch this issue. Of course i want
> to reduce the interruption for the users to 1 monitoring/debugging
> session. So i guess i need some hints (linux commands/config changes)
> what i should active to debug / monitor on host/in docker (via host)
> because i am not an linux system expert at all.
>
> Also which logs/files from docker to persistent on the host that can
> help to find the problem?
>
> @Paul, you also already monitor many things. Any hints from you?
>
> @Nick/@Michael maybe more i can do? (see also the Mail from Paul from
> 16.12.24 with the subject)
>
> Maybe some linux/docker resource monitoring?
>
> I also see something about "ld-musl-x86_64.so" in the host console on
> the server. Wondering if this is normal to see it on the
> server-console and not only in the docker.
>
> Also on the other server i see the errors. And also they are uptodate
> with the the 1.5.3 Version. So this seems not the source problem for
> the issue, or maybe something that will only happen with the newer
> guacamole-images.
>
> Jan 21 12:32:28 kernel: traps: guacd[2686260] general protection fault
> ip:7fe60099167f sp:7fe5d2d5e1d8 error:0 in
> ld-musl-x86_64.so.1[7fe600980000+4c000]
> Jan 21 12:34:55 kernel: traps: guacd[2790014] general protection fault
> ip:7fe60099167f sp:7fe5c3caa1d8 error:0 in
> ld-musl-x86_64.so.1[7fe600980000+4c000]
> Jan 21 12:35:37 kernel: traps: guacd[2882872] general protection fault
> ip:7fe60099167f sp:7fe5ccd161d8 error:0 in
> ld-musl-x86_64.so.1[7fe600980000+4c000]
> Jan 21 12:36:35 kernel: traps: guacd[2917121] general protection fault
> ip:7fe600991a64 sp:7fe5e6e4e1a0 error:0 in
> ld-musl-x86_64.so.1[7fe600980000+4c000]
>
> Thanks.
>
> I would be happy to hear from you.
>
> Best regards,
>
> Tobias
>
> Am 21.01.2025 um 11:56 schrieb HASENOHR Paul:
>>
>> Hello Nick and Tobias,
>>
>> Just to mention that I could create an image with guacd 1.6-dev on
>> Debian 12 last week and I will run again the tests this week to see
>> if I can have more than 60 RDP connections. If it works, I will clean
>> the dockerfile and the script used to build guacamole and post it to
>> this thread.
>>
>> Best regards,
>>
>> Paul
>>
>> *From:*Nick Couchman <vn...@apache.org>
>> *Sent:* Monday, January 20, 2025 11:06 PM
>> *To:* user@guacamole.apache.org
>> *Subject:* Re: Maximum number of simultaneous RDP connections
>>
>> On Mon, Jan 20, 2025 at 3:22 AM Tobias Feller | OPC <tf...@opc.de>
>> wrote:
>>
>> Hi Nick, Hi Paul,
>>
>> i can also confirm this issue with > ~ 60 active Connections.
>>
>> Same environment. Docker, Debian
>>
>> I ran into this problem a time ago with Version 1.5.4 / 1.5.5 and
>> then going back to 1.5.3 to resolve it.
>>
>> In the meantime we now also have a HA-setup:
>>
>> * Loadbalancer with RoundRobin/StickySessions
>> * 2 Guacamole Hosts (docker, guacd,tomcat)
>> * 1 HA (cloud) Postgres DB
>>
>> This morning one of the Host (Debian 11, running 1.5.3) had some
>> problems, and all users connected to the guacamole-host with
>> version 1.5.5. After some time i received the info that users can
>> not connect, because without round-robin the 1.5.5, hit the
>> 60-connection limit.
>>
>> It is maybe possible to provide an offical debian-image instead
>> of ALPINE? Will this be addressed/fixed in 1.6?
>>
>> It's hard to say whether this will be addressed in 1.6.0, because
>> it's been hard to get reliable reproduction of the issue to this
>> point. That's not to say that I doubt that anyone who reports this is
>> actually running into the problem, just that it's difficult to
>> resolve a problem that you cannot deterministically reproduce. If you
>> want to figure out if the problem still exists or has been solved in
>> 1.6.0, the best thing to do would be to build the Docker images
>> yourself and update your environment and see if the problem exists.
>>
>> Regarding moving from Alpine to Debian - I'm sure it's possible;
>> however, the reasons for choosing Alpine as the base image are not
>> arbitrary. I've forgotten exactly why we went that direction in the
>> past, but I believe it was due to the availability of the various
>> libraries that we need for guacd - things like libssh2, FreeRDP, etc.
>> Making that transition to Debian would require a good bit of work to
>> validate that all of the protocols and other features (guacenc) that
>> rely on external libraries. Again, very doable, but not necessarily
>> trivial.
>>
>> Also a small feature request for this kind of this HA-Setup:
>>
>> Is it possible to add a info somewhere in the connection-history
>> from which host the connection was initiated? Maybe via an
>> ENVIRONMENT-VAR "GUCAMOLE_HOST_ID" as prefix/suffix in some
>> existing info (connection name) if defined?
>>
>> It is possible, yes, but not without changes in the code - some
>> changes would need to be made to add a host ID or host name, etc., to
>> the available parameter tokens.
>>
>> -Nick
>>
> --
> OPC® cardsystems GmbH
> Phone: +49 651 8408-0 | Fax: +49 651 8408-150
> E-Mail:tfeller@opc.de | Internet:www.opc.de
>
> Geschäftsführer: Dipl.-Ing. (FH) Klaus Dieter Schömer
> Registergericht: Amtsgericht Wittlich | HRB-Nr.: 3903
--
OPC® cardsystems GmbH
Phone: +49 651 8408-0 | Fax: +49 651 8408-150
E-Mail:tfeller@opc.de | Internet:www.opc.de
Geschäftsführer: Dipl.-Ing. (FH) Klaus Dieter Schömer
Registergericht: Amtsgericht Wittlich | HRB-Nr.: 3903
Re: Maximum number of simultaneous RDP connections
Posted by Tobias Feller | OPC <tf...@opc.de>.
Hello Paul,
sounds good for me.
Instead of uses the Debian as base for the image, i can also do a test
with some more debugging.
When i disable one of the load balancing hosts i can reach the limit
very easy, but i can not let the guacamole in this state for a longer
time, because it is a production system.
I want to support you of course to catch this issue. Of course i want to
reduce the interruption for the users to 1 monitoring/debugging session.
So i guess i need some hints (linux commands/config changes) what i
should active to debug / monitor on host/in docker (via host) because i
am not an linux system expert at all.
Also which logs/files from docker to persistent on the host that can
help to find the problem?
@Paul, you also already monitor many things. Any hints from you?
@Nick/@Michael maybe more i can do? (see also the Mail from Paul from
16.12.24 with the subject)
Maybe some linux/docker resource monitoring?
I also see something about "ld-musl-x86_64.so" in the host console on
the server. Wondering if this is normal to see it on the server-console
and not only in the docker.
Also on the other server i see the errors. And also they are uptodate
with the the 1.5.3 Version. So this seems not the source problem for the
issue, or maybe something that will only happen with the newer
guacamole-images.
Jan 21 12:32:28 kernel: traps: guacd[2686260] general protection fault
ip:7fe60099167f sp:7fe5d2d5e1d8 error:0 in
ld-musl-x86_64.so.1[7fe600980000+4c000]
Jan 21 12:34:55 kernel: traps: guacd[2790014] general protection fault
ip:7fe60099167f sp:7fe5c3caa1d8 error:0 in
ld-musl-x86_64.so.1[7fe600980000+4c000]
Jan 21 12:35:37 kernel: traps: guacd[2882872] general protection fault
ip:7fe60099167f sp:7fe5ccd161d8 error:0 in
ld-musl-x86_64.so.1[7fe600980000+4c000]
Jan 21 12:36:35 kernel: traps: guacd[2917121] general protection fault
ip:7fe600991a64 sp:7fe5e6e4e1a0 error:0 in
ld-musl-x86_64.so.1[7fe600980000+4c000]
Thanks.
I would be happy to hear from you.
Best regards,
Tobias
Am 21.01.2025 um 11:56 schrieb HASENOHR Paul:
>
> Hello Nick and Tobias,
>
> Just to mention that I could create an image with guacd 1.6-dev on
> Debian 12 last week and I will run again the tests this week to see if
> I can have more than 60 RDP connections. If it works, I will clean the
> dockerfile and the script used to build guacamole and post it to this
> thread.
>
> Best regards,
>
> Paul
>
> *From:*Nick Couchman <vn...@apache.org>
> *Sent:* Monday, January 20, 2025 11:06 PM
> *To:* user@guacamole.apache.org
> *Subject:* Re: Maximum number of simultaneous RDP connections
>
> On Mon, Jan 20, 2025 at 3:22 AM Tobias Feller | OPC <tf...@opc.de>
> wrote:
>
> Hi Nick, Hi Paul,
>
> i can also confirm this issue with > ~ 60 active Connections.
>
> Same environment. Docker, Debian
>
> I ran into this problem a time ago with Version 1.5.4 / 1.5.5 and
> then going back to 1.5.3 to resolve it.
>
> In the meantime we now also have a HA-setup:
>
> * Loadbalancer with RoundRobin/StickySessions
> * 2 Guacamole Hosts (docker, guacd,tomcat)
> * 1 HA (cloud) Postgres DB
>
> This morning one of the Host (Debian 11, running 1.5.3) had some
> problems, and all users connected to the guacamole-host with
> version 1.5.5. After some time i received the info that users can
> not connect, because without round-robin the 1.5.5, hit the
> 60-connection limit.
>
> It is maybe possible to provide an offical debian-image instead of
> ALPINE? Will this be addressed/fixed in 1.6?
>
> It's hard to say whether this will be addressed in 1.6.0, because it's
> been hard to get reliable reproduction of the issue to this point.
> That's not to say that I doubt that anyone who reports this is
> actually running into the problem, just that it's difficult to resolve
> a problem that you cannot deterministically reproduce. If you want to
> figure out if the problem still exists or has been solved in 1.6.0,
> the best thing to do would be to build the Docker images yourself and
> update your environment and see if the problem exists.
>
> Regarding moving from Alpine to Debian - I'm sure it's possible;
> however, the reasons for choosing Alpine as the base image are not
> arbitrary. I've forgotten exactly why we went that direction in the
> past, but I believe it was due to the availability of the various
> libraries that we need for guacd - things like libssh2, FreeRDP, etc.
> Making that transition to Debian would require a good bit of work to
> validate that all of the protocols and other features (guacenc) that
> rely on external libraries. Again, very doable, but not necessarily
> trivial.
>
> Also a small feature request for this kind of this HA-Setup:
>
> Is it possible to add a info somewhere in the connection-history
> from which host the connection was initiated? Maybe via an
> ENVIRONMENT-VAR "GUCAMOLE_HOST_ID" as prefix/suffix in some
> existing info (connection name) if defined?
>
> It is possible, yes, but not without changes in the code - some
> changes would need to be made to add a host ID or host name, etc., to
> the available parameter tokens.
>
> -Nick
>
--
OPC® cardsystems GmbH
Phone: +49 651 8408-0 | Fax: +49 651 8408-150
E-Mail:tfeller@opc.de | Internet:www.opc.de
Geschäftsführer: Dipl.-Ing. (FH) Klaus Dieter Schömer
Registergericht: Amtsgericht Wittlich | HRB-Nr.: 3903
RE: Maximum number of simultaneous RDP connections
Posted by HASENOHR Paul <Pa...@ec.europa.eu.INVALID>.
Hello Nick and Tobias,
Just to mention that I could create an image with guacd 1.6-dev on Debian 12 last week and I will run again the tests this week to see if I can have more than 60 RDP connections. If it works, I will clean the dockerfile and the script used to build guacamole and post it to this thread.
Best regards,
Paul
From: Nick Couchman <vn...@apache.org>
Sent: Monday, January 20, 2025 11:06 PM
To: user@guacamole.apache.org
Subject: Re: Maximum number of simultaneous RDP connections
On Mon, Jan 20, 2025 at 3:22 AM Tobias Feller | OPC <tf...@opc.de>> wrote:
Hi Nick, Hi Paul,
i can also confirm this issue with > ~ 60 active Connections.
Same environment. Docker, Debian
I ran into this problem a time ago with Version 1.5.4 / 1.5.5 and then going back to 1.5.3 to resolve it.
In the meantime we now also have a HA-setup:
* Loadbalancer with RoundRobin/StickySessions
* 2 Guacamole Hosts (docker, guacd,tomcat)
* 1 HA (cloud) Postgres DB
This morning one of the Host (Debian 11, running 1.5.3) had some problems, and all users connected to the guacamole-host with version 1.5.5. After some time i received the info that users can not connect, because without round-robin the 1.5.5, hit the 60-connection limit.
It is maybe possible to provide an offical debian-image instead of ALPINE? Will this be addressed/fixed in 1.6?
It's hard to say whether this will be addressed in 1.6.0, because it's been hard to get reliable reproduction of the issue to this point. That's not to say that I doubt that anyone who reports this is actually running into the problem, just that it's difficult to resolve a problem that you cannot deterministically reproduce. If you want to figure out if the problem still exists or has been solved in 1.6.0, the best thing to do would be to build the Docker images yourself and update your environment and see if the problem exists.
Regarding moving from Alpine to Debian - I'm sure it's possible; however, the reasons for choosing Alpine as the base image are not arbitrary. I've forgotten exactly why we went that direction in the past, but I believe it was due to the availability of the various libraries that we need for guacd - things like libssh2, FreeRDP, etc. Making that transition to Debian would require a good bit of work to validate that all of the protocols and other features (guacenc) that rely on external libraries. Again, very doable, but not necessarily trivial.
Also a small feature request for this kind of this HA-Setup:
Is it possible to add a info somewhere in the connection-history from which host the connection was initiated? Maybe via an ENVIRONMENT-VAR "GUCAMOLE_HOST_ID" as prefix/suffix in some existing info (connection name) if defined?
It is possible, yes, but not without changes in the code - some changes would need to be made to add a host ID or host name, etc., to the available parameter tokens.
-Nick
Re: Maximum number of simultaneous RDP connections
Posted by Nick Couchman <vn...@apache.org>.
On Mon, Jan 20, 2025 at 3:22 AM Tobias Feller | OPC <tf...@opc.de> wrote:
> Hi Nick, Hi Paul,
>
> i can also confirm this issue with > ~ 60 active Connections.
>
> Same environment. Docker, Debian
>
> I ran into this problem a time ago with Version 1.5.4 / 1.5.5 and then
> going back to 1.5.3 to resolve it.
>
> In the meantime we now also have a HA-setup:
>
> - Loadbalancer with RoundRobin/StickySessions
> - 2 Guacamole Hosts (docker, guacd,tomcat)
> - 1 HA (cloud) Postgres DB
>
> This morning one of the Host (Debian 11, running 1.5.3) had some problems,
> and all users connected to the guacamole-host with version 1.5.5. After
> some time i received the info that users can not connect, because without
> round-robin the 1.5.5, hit the 60-connection limit.
>
> It is maybe possible to provide an offical debian-image instead of ALPINE?
> Will this be addressed/fixed in 1.6?
>
It's hard to say whether this will be addressed in 1.6.0, because it's been
hard to get reliable reproduction of the issue to this point. That's not to
say that I doubt that anyone who reports this is actually running into the
problem, just that it's difficult to resolve a problem that you cannot
deterministically reproduce. If you want to figure out if the problem still
exists or has been solved in 1.6.0, the best thing to do would be to build
the Docker images yourself and update your environment and see if the
problem exists.
Regarding moving from Alpine to Debian - I'm sure it's possible; however,
the reasons for choosing Alpine as the base image are not arbitrary. I've
forgotten exactly why we went that direction in the past, but I believe it
was due to the availability of the various libraries that we need for guacd
- things like libssh2, FreeRDP, etc. Making that transition to Debian would
require a good bit of work to validate that all of the protocols and other
features (guacenc) that rely on external libraries. Again, very doable, but
not necessarily trivial.
>
> Also a small feature request for this kind of this HA-Setup:
>
> Is it possible to add a info somewhere in the connection-history from
> which host the connection was initiated? Maybe via an ENVIRONMENT-VAR
> "GUCAMOLE_HOST_ID" as prefix/suffix in some existing info (connection name)
> if defined?
>
It is possible, yes, but not without changes in the code - some changes
would need to be made to add a host ID or host name, etc., to the available
parameter tokens.
-Nick
>
RE: Maximum number of simultaneous RDP connections
Posted by Tobias Feller | OPC <tf...@opc.de>.
Hi Nick, Hi Paul,
i can also confirm this issue with > ~ 60 active Connections.
Same environment. Docker, Debian
I ran into this problem a time ago with Version 1.5.4 / 1.5.5 and then
going back to 1.5.3 to resolve it.
In the meantime we now also have a HA-setup:
* Loadbalancer with RoundRobin/StickySessions
* 2 Guacamole Hosts (docker, guacd,tomcat)
* 1 HA (cloud) Postgres DB
This morning one of the Host (Debian 11, running 1.5.3) had some
problems, and all users connected to the guacamole-host with version
1.5.5. After some time i received the info that users can not connect,
because without round-robin the 1.5.5, hit the 60-connection limit.
It is maybe possible to provide an offical debian-image instead of
ALPINE? Will this be addressed/fixed in 1.6?
Also a small feature request for this kind of this HA-Setup:
Is it possible to add a info somewhere in the connection-history from
which host the connection was initiated? Maybe via an ENVIRONMENT-VAR
"GUCAMOLE_HOST_ID" as prefix/suffix in some existing info (connection
name) if defined?
Thanks a lot.
Best regards,
Tobias
Am 16.12.2024 um 18:34 schrieb HASENOHR Paul:
>
> Hello Nick,
>
> I built the guacd Docker image from the branch staging/1.6.0 and ran
> the same series of test and unfortunately, they failed again from the
> 60^th connection onwards. This time, the failure seems to be linked to
> /lib/libcrypto.so.1.1 All details in the second part of this message.
>
> *DEBIAN 12 tests*
>
> I did not manage to build an image based on Debian 12. Either it fails
> during when make checkis executed (see the [socket] message below) or
> rdp does not work in the resulting guacd image. Looking at the builder
> image of the Dockerfile, I found several core dump files in it. I
> attach the Dockerfile I used and the config.log generated during the
> build.
>
> [socket] nested_send_instruction: Assertion failed on
> socket/nested_send_instruction.c:105:
> CU_ASSERT_EQUAL(offset,strlen(expected))
>
> *Analysis of one of the core dump produced during the build stage:*
>
> root@e0a228a4b17f:/tmp# gdb
> /tmp/guacamole-server/src/libguac/tests/.libs/test_libguac
> core-test_libguac.28610.buildkitsandbox.1734366310
>
> GNU gdb (Debian 13.1-3) 13.1
>
> Copyright (C) 2023 Free Software Foundation, Inc.
>
> License GPLv3+: GNU GPL version 3 or later
> <http://gnu.org/licenses/gpl.html>
>
> This is free software: you are free to change and redistribute it.
>
> There is NO WARRANTY, to the extent permitted by law.
>
> Type "show copying" and "show warranty" for details.
>
> This GDB was configured as "x86_64-linux-gnu".
>
> Type "show configuration" for configuration details.
>
> For bug reporting instructions, please see:
>
> <https://www.gnu.org/software/gdb/bugs/>.
>
> Find the GDB manual and other documentation resources online at:
>
> <http://www.gnu.org/software/gdb/documentation/>.
>
> For help, type "help".
>
> Type "apropos word" to search for commands related to "word"...
>
> Reading symbols from
> /tmp/guacamole-server/src/libguac/tests/.libs/test_libguac...
>
> (No debugging symbols found in
> /tmp/guacamole-server/src/libguac/tests/.libs/test_libguac)
>
> [New LWP 28610]
>
> [Thread debugging using libthread_db enabled]
>
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
>
> Core was generated by
> `/tmp/guacamole-server/src/libguac/tests/.libs/test_libguac'.
>
> Program terminated with signal SIGABRT, Aborted.
>
> #0 __pthread_kill_implementation (threadid=<optimized out>,
> signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
>
> 44 ./nptl/pthread_kill.c: No such file or directory.
>
> (gdb) bt
>
> #0 __pthread_kill_implementation (threadid=<optimized out>,
> signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
>
> #1 0x00007f0e1158ff1f in __pthread_kill_internal (signo=6,
> threadid=<optimized out>) at ./nptl/pthread_kill.c:78
>
> #2 0x00007f0e11540fb2 in __GI_raise (sig=sig@entry=6) at
> ../sysdeps/posix/raise.c:26
>
> #3 0x00007f0e1152b472 in __GI_abort () at ./stdlib/abort.c:79
>
> #4 0x00007f0e116faf87 in PRIV_guac_mem_realloc_or_die () from
> /tmp/guacamole-server/src/libguac/.libs/libguac.so.24
>
> #5 0x000055f66bf32c70 in test_mem.realloc_or_die_fail_large ()
>
> #6 0x00007f0e1171d927 in ?? () from /lib/x86_64-linux-gnu/libcunit.so.1
>
> #7 0x00007f0e1171db78 in ?? () from /lib/x86_64-linux-gnu/libcunit.so.1
>
> #8 0x00007f0e1171dfb0 in CU_run_all_tests () from
> /lib/x86_64-linux-gnu/libcunit.so.1
>
> #9 0x000055f66bf396a0 in main ()
>
> (gdb) quit
>
> I am likely missing some packages to build guacd on Debian. Could you
> tell me what is missing/wrong?
>
> *ALPINE tests*
>
> To run gdb in the Alpine guacd container, I installed gdb,
> apk-tools-dbg, musl-dbg and openssl1.1-compat-dbg
>
> Core was generated by `/opt/guacamole/sbin/guacd -b 0.0.0.0 -L debug -f'.
>
> Program terminated with signal SIGSEGV, Segmentation fault.
>
> #0 0x00007f87341580e3 in CRYPTO_set_ex_data () from /lib/libcrypto.so.1.1
>
> [Current thread is 1 (LWP 24844)]
>
> (gdb) bt
>
> #0 0x00007f87341580e3 in CRYPTO_set_ex_data () from /lib/libcrypto.so.1.1
>
> #1 0x00007f86d985a26c in transport_default_connect_tls () from
> /opt/guacamole/lib/libfreerdp3.so.3
>
> #2 0x00007f86d97ed996 in nego_try_connect () from
> /opt/guacamole/lib/libfreerdp3.so.3
>
> #3 0x00007f86d97efda8 in nego_connect () from
> /opt/guacamole/lib/libfreerdp3.so.3
>
> #4 0x00007f86d982a899 in rdp_client_connect () from
> /opt/guacamole/lib/libfreerdp3.so.3
>
> #5 0x00007f86d981683f in freerdp_connect () from
> /opt/guacamole/lib/libfreerdp3.so.3
>
> #6 0x00007f86d9c281f6 in guac_rdp_handle_connection () from
> /opt/guacamole/lib/libguac-client-rdp.so
>
> #7 0x00007f86d9c28baa in guac_rdp_client_thread () from
> /opt/guacamole/lib/libguac-client-rdp.so
>
> #8 0x00007f8734525bc2 in start (p=0x7f86d8125328) at
> src/thread/pthread_create.c:207
>
> #9 0x00007f8734527f30 in __clone () at src/thread/x86_64/clone.s:22
>
> Backtrace stopped: frame did not save the PC
>
> (gdb)
>
> (gdb) bt full
>
> #0 0x00007f87341580e3 in CRYPTO_set_ex_data () from /lib/libcrypto.so.1.1
>
> No symbol table info available.
>
> #1 0x00007f86d985a26c in transport_default_connect_tls () from
> /opt/guacamole/lib/libfreerdp3.so.3
>
> No symbol table info available.
>
> #2 0x00007f86d97ed996 in nego_try_connect () from
> /opt/guacamole/lib/libfreerdp3.so.3
>
> No symbol table info available.
>
> #3 0x00007f86d97efda8 in nego_connect () from
> /opt/guacamole/lib/libfreerdp3.so.3
>
> No symbol table info available.
>
> #4 0x00007f86d982a899 in rdp_client_connect () from
> /opt/guacamole/lib/libfreerdp3.so.3
>
> No symbol table info available.
>
> #5 0x00007f86d981683f in freerdp_connect () from
> /opt/guacamole/lib/libfreerdp3.so.3
>
> No symbol table info available.
>
> #6 0x00007f86d9c281f6 in guac_rdp_handle_connection () from
> /opt/guacamole/lib/libguac-client-rdp.so
>
> No symbol table info available.
>
> #7 0x00007f86d9c28baa in guac_rdp_client_thread () from
> /opt/guacamole/lib/libguac-client-rdp.so
>
> No symbol table info available.
>
> #8 0x00007f8734525bc2 in start (p=0x7f86d8125328) at
> src/thread/pthread_create.c:207
>
> args = 0x7f86d8125328
>
> state = <optimized out>
>
> #9 0x00007f8734527f30 in __clone () at src/thread/x86_64/clone.s:22
>
> No locals.
>
> Backtrace stopped: frame did not save the PC
>
> (gdb)
>
> (gdb) info thread
>
> Id Target Id Frame
>
> * 1 LWP 24844 0x00007f87341580e3 in CRYPTO_set_ex_data ()
> from /lib/libcrypto.so.1.1
>
> 2 LWP 24858 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 3 LWP 24842 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 4 LWP 24857 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 5 LWP 24852 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 6 LWP 24839 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 7 LWP 24845 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 8 LWP 24851 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 9 LWP 24856 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 10 LWP 24846 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 11 LWP 24849 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 12 LWP 24865 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 13 LWP 24847 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 14 LWP 24855 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 15 LWP 24850 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 16 LWP 24859 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 17 LWP 24902 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 18 LWP 24848 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 19 LWP 24866 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 20 LWP 24853 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 21 LWP 24923 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 22 LWP 24864 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 23 LWP 24862 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 24 LWP 24860 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 25 LWP 24854 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 26 LWP 24924 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 27 LWP 24917 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 28 LWP 24922 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 29 LWP 24872 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 30 LWP 24945 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 31 LWP 24918 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 32 LWP 24919 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 33 LWP 24920 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 34 LWP 24921 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 35 LWP 24873 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 36 LWP 24901 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 37 LWP 24861 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 38 LWP 24863 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 39 LWP 24897 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 40 LWP 24869 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 41 LWP 24937 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 42 LWP 24936 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 43 LWP 24934 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 44 LWP 24907 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 45 LWP 24895 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 46 LWP 24896 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 47 LWP 24915 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 48 LWP 24929 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 49 LWP 24932 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 50 LWP 24876 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 51 LWP 24944 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 52 LWP 24939 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 53 LWP 24938 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 54 LWP 24867 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 55 LWP 24930 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 56 LWP 24931 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 57 LWP 24927 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 58 LWP 24888 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 59 LWP 24950 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 60 LWP 24898 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 61 LWP 24928 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 62 LWP 24903 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 63 LWP 24870 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 64 LWP 24900 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 65 LWP 24893 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 66 LWP 24894 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 67 LWP 24899 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 68 LWP 25013 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 69 LWP 24958 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 70 LWP 25010 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 71 LWP 24908 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 72 LWP 24871 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 73 LWP 24916 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 74 LWP 25016 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 75 LWP 24878 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 76 LWP 25008 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 77 LWP 24956 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 78 LWP 24986 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 79 LWP 24942 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 80 LWP 25009 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 81 LWP 24946 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 82 LWP 24868 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 83 LWP 24969 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 84 LWP 24890 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 85 LWP 25064 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 86 LWP 24904 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 87 LWP 25014 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 88 LWP 25019 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 89 LWP 24960 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 90 LWP 24910 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 91 LWP 24925 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 92 LWP 24881 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 93 LWP 24992 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 94 LWP 25035 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 95 LWP 25017 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 96 LWP 25039 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 97 LWP 25011 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 98 LWP 24874 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 99 LWP 24951 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 100 LWP 25015 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 101 LWP 25075 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 102 LWP 24943 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 103 LWP 24891 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 104 LWP 24998 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 105 LWP 25024 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 106 LWP 25022 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 107 LWP 24911 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 108 LWP 24962 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 109 LWP 25001 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 110 LWP 25060 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 111 LWP 24926 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 112 LWP 24882 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 113 LWP 24957 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 114 LWP 25000 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 115 LWP 25020 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 116 LWP 24997 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 117 LWP 25025 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 118 LWP 25029 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 119 LWP 24905 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 120 LWP 25021 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 121 LWP 24941 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 122 LWP 24875 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 123 LWP 25033 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 124 LWP 25045 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 125 LWP 24974 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 126 LWP 24963 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 127 LWP 24906 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 128 LWP 25078 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 129 LWP 24980 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 130 LWP 24883 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 131 LWP 24982 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 132 LWP 25005 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 133 LWP 25037 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 134 LWP 25004 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 135 LWP 25002 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 136 LWP 25050 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 137 LWP 25034 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 138 LWP 24996 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 139 LWP 25030 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 140 LWP 25036 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 141 LWP 25061 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 142 LWP 24953 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 143 LWP 24877 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 144 LWP 24933 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 145 LWP 25023 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 146 LWP 24947 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 147 LWP 25032 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 148 LWP 25055 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 149 LWP 24970 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 150 LWP 24975 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 151 LWP 25079 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 152 LWP 24981 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 153 LWP 25006 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 154 LWP 24884 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 155 LWP 25065 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 156 LWP 24964 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 157 LWP 24972 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 158 LWP 25059 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 159 LWP 24955 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 160 LWP 24952 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 161 LWP 25073 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 162 LWP 24993 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 163 LWP 24979 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 164 LWP 25044 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 165 LWP 24971 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 166 LWP 25051 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 167 LWP 25043 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 168 LWP 24954 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 169 LWP 25038 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 170 LWP 25084 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 171 LWP 25077 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 172 LWP 24892 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 173 LWP 25080 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 174 LWP 24948 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 175 LWP 25040 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 176 LWP 25056 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 177 LWP 24976 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 178 LWP 24973 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 179 LWP 25003 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 180 LWP 24959 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 181 LWP 25082 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 182 LWP 25042 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 183 LWP 25076 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 184 LWP 25026 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 185 LWP 24994 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 186 LWP 24995 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 187 LWP 24983 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 188 LWP 24984 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 189 LWP 24968 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 190 LWP 24949 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 191 LWP 25054 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 192 LWP 25041 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 193 LWP 24967 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 194 LWP 25012 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 195 LWP 24843 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 196 LWP 25057 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 197 LWP 25085 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 198 LWP 25027 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 199 LWP 25081 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 200 LWP 24966 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 201 LWP 25052 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 202 LWP 25046 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 203 LWP 24978 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 204 LWP 25070 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 205 LWP 25062 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 206 LWP 25058 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 207 LWP 24977 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 208 LWP 24909 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 209 LWP 25018 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 210 LWP 24879 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 211 LWP 24880 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 212 LWP 25083 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 213 LWP 25028 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 214 LWP 24990 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 215 LWP 24886 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 216 LWP 24961 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 217 LWP 25031 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 218 LWP 24885 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 219 LWP 25074 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 220 LWP 25049 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 221 LWP 25007 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 222 LWP 25071 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 223 LWP 24889 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 224 LWP 25048 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 225 LWP 25069 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 226 LWP 24985 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 227 LWP 24965 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 228 LWP 25063 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 229 LWP 24887 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 230 LWP 25086 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 231 LWP 24940 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 232 LWP 25067 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 233 LWP 24991 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 234 LWP 24999 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 235 LWP 25066 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 236 LWP 24989 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 237 LWP 24935 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 238 LWP 25072 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 239 LWP 24914 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 240 LWP 25053 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 241 LWP 25068 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 242 LWP 25047 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 243 LWP 24988 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 244 LWP 24987 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 245 LWP 24913 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> 246 LWP 24912 __cp_end () at src/thread/x86_64/syscall_cp.s:29
>
> (gdb)
>
> The output of thread apply all bt fulland thread apply all btare in
> the attached log file
>
> Please let me know what additional information you would need.
>
> Best regards,
>
> Paul
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:user-unsubscribe@guacamole.apache.org
> For additional commands, e-mail:user-help@guacamole.apache.org
RE: ***UNCHECKED*** RE: Maximum number of simultaneous RDP connections
Posted by HASENOHR Paul <Pa...@ec.europa.eu.INVALID>.
Hello Nick,
I built the guacd Docker image from the branch staging/1.6.0 and ran the same series of test and unfortunately, they failed again from the 60th connection onwards. This time, the failure seems to be linked to /lib/libcrypto.so.1.1 All details in the second part of this message.
DEBIAN 12 tests
I did not manage to build an image based on Debian 12. Either it fails during when make check is executed (see the [socket] message below) or rdp does not work in the resulting guacd image. Looking at the builder image of the Dockerfile, I found several core dump files in it. I attach the Dockerfile I used and the config.log generated during the build.
[socket] nested_send_instruction: Assertion failed on socket/nested_send_instruction.c:105: CU_ASSERT_EQUAL(offset,strlen(expected))
Analysis of one of the core dump produced during the build stage:
root@e0a228a4b17f:/tmp# gdb /tmp/guacamole-server/src/libguac/tests/.libs/test_libguac core-test_libguac.28610.buildkitsandbox.1734366310
GNU gdb (Debian 13.1-3) 13.1
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /tmp/guacamole-server/src/libguac/tests/.libs/test_libguac...
(No debugging symbols found in /tmp/guacamole-server/src/libguac/tests/.libs/test_libguac)
[New LWP 28610]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/tmp/guacamole-server/src/libguac/tests/.libs/test_libguac'.
Program terminated with signal SIGABRT, Aborted.
#0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
44 ./nptl/pthread_kill.c: No such file or directory.
(gdb) bt
#0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
#1 0x00007f0e1158ff1f in __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
#2 0x00007f0e11540fb2 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3 0x00007f0e1152b472 in __GI_abort () at ./stdlib/abort.c:79
#4 0x00007f0e116faf87 in PRIV_guac_mem_realloc_or_die () from /tmp/guacamole-server/src/libguac/.libs/libguac.so.24
#5 0x000055f66bf32c70 in test_mem.realloc_or_die_fail_large ()
#6 0x00007f0e1171d927 in ?? () from /lib/x86_64-linux-gnu/libcunit.so.1
#7 0x00007f0e1171db78 in ?? () from /lib/x86_64-linux-gnu/libcunit.so.1
#8 0x00007f0e1171dfb0 in CU_run_all_tests () from /lib/x86_64-linux-gnu/libcunit.so.1
#9 0x000055f66bf396a0 in main ()
(gdb) quit
I am likely missing some packages to build guacd on Debian. Could you tell me what is missing/wrong?
ALPINE tests
To run gdb in the Alpine guacd container, I installed gdb, apk-tools-dbg, musl-dbg and openssl1.1-compat-dbg
Core was generated by `/opt/guacamole/sbin/guacd -b 0.0.0.0 -L debug -f'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00007f87341580e3 in CRYPTO_set_ex_data () from /lib/libcrypto.so.1.1
[Current thread is 1 (LWP 24844)]
(gdb) bt
#0 0x00007f87341580e3 in CRYPTO_set_ex_data () from /lib/libcrypto.so.1.1
#1 0x00007f86d985a26c in transport_default_connect_tls () from /opt/guacamole/lib/libfreerdp3.so.3
#2 0x00007f86d97ed996 in nego_try_connect () from /opt/guacamole/lib/libfreerdp3.so.3
#3 0x00007f86d97efda8 in nego_connect () from /opt/guacamole/lib/libfreerdp3.so.3
#4 0x00007f86d982a899 in rdp_client_connect () from /opt/guacamole/lib/libfreerdp3.so.3
#5 0x00007f86d981683f in freerdp_connect () from /opt/guacamole/lib/libfreerdp3.so.3
#6 0x00007f86d9c281f6 in guac_rdp_handle_connection () from /opt/guacamole/lib/libguac-client-rdp.so
#7 0x00007f86d9c28baa in guac_rdp_client_thread () from /opt/guacamole/lib/libguac-client-rdp.so
#8 0x00007f8734525bc2 in start (p=0x7f86d8125328) at src/thread/pthread_create.c:207
#9 0x00007f8734527f30 in __clone () at src/thread/x86_64/clone.s:22
Backtrace stopped: frame did not save the PC
(gdb)
(gdb) bt full
#0 0x00007f87341580e3 in CRYPTO_set_ex_data () from /lib/libcrypto.so.1.1
No symbol table info available.
#1 0x00007f86d985a26c in transport_default_connect_tls () from /opt/guacamole/lib/libfreerdp3.so.3
No symbol table info available.
#2 0x00007f86d97ed996 in nego_try_connect () from /opt/guacamole/lib/libfreerdp3.so.3
No symbol table info available.
#3 0x00007f86d97efda8 in nego_connect () from /opt/guacamole/lib/libfreerdp3.so.3
No symbol table info available.
#4 0x00007f86d982a899 in rdp_client_connect () from /opt/guacamole/lib/libfreerdp3.so.3
No symbol table info available.
#5 0x00007f86d981683f in freerdp_connect () from /opt/guacamole/lib/libfreerdp3.so.3
No symbol table info available.
#6 0x00007f86d9c281f6 in guac_rdp_handle_connection () from /opt/guacamole/lib/libguac-client-rdp.so
No symbol table info available.
#7 0x00007f86d9c28baa in guac_rdp_client_thread () from /opt/guacamole/lib/libguac-client-rdp.so
No symbol table info available.
#8 0x00007f8734525bc2 in start (p=0x7f86d8125328) at src/thread/pthread_create.c:207
args = 0x7f86d8125328
state = <optimized out>
#9 0x00007f8734527f30 in __clone () at src/thread/x86_64/clone.s:22
No locals.
Backtrace stopped: frame did not save the PC
(gdb)
(gdb) info thread
Id Target Id Frame
* 1 LWP 24844 0x00007f87341580e3 in CRYPTO_set_ex_data () from /lib/libcrypto.so.1.1
2 LWP 24858 __cp_end () at src/thread/x86_64/syscall_cp.s:29
3 LWP 24842 __cp_end () at src/thread/x86_64/syscall_cp.s:29
4 LWP 24857 __cp_end () at src/thread/x86_64/syscall_cp.s:29
5 LWP 24852 __cp_end () at src/thread/x86_64/syscall_cp.s:29
6 LWP 24839 __cp_end () at src/thread/x86_64/syscall_cp.s:29
7 LWP 24845 __cp_end () at src/thread/x86_64/syscall_cp.s:29
8 LWP 24851 __cp_end () at src/thread/x86_64/syscall_cp.s:29
9 LWP 24856 __cp_end () at src/thread/x86_64/syscall_cp.s:29
10 LWP 24846 __cp_end () at src/thread/x86_64/syscall_cp.s:29
11 LWP 24849 __cp_end () at src/thread/x86_64/syscall_cp.s:29
12 LWP 24865 __cp_end () at src/thread/x86_64/syscall_cp.s:29
13 LWP 24847 __cp_end () at src/thread/x86_64/syscall_cp.s:29
14 LWP 24855 __cp_end () at src/thread/x86_64/syscall_cp.s:29
15 LWP 24850 __cp_end () at src/thread/x86_64/syscall_cp.s:29
16 LWP 24859 __cp_end () at src/thread/x86_64/syscall_cp.s:29
17 LWP 24902 __cp_end () at src/thread/x86_64/syscall_cp.s:29
18 LWP 24848 __cp_end () at src/thread/x86_64/syscall_cp.s:29
19 LWP 24866 __cp_end () at src/thread/x86_64/syscall_cp.s:29
20 LWP 24853 __cp_end () at src/thread/x86_64/syscall_cp.s:29
21 LWP 24923 __cp_end () at src/thread/x86_64/syscall_cp.s:29
22 LWP 24864 __cp_end () at src/thread/x86_64/syscall_cp.s:29
23 LWP 24862 __cp_end () at src/thread/x86_64/syscall_cp.s:29
24 LWP 24860 __cp_end () at src/thread/x86_64/syscall_cp.s:29
25 LWP 24854 __cp_end () at src/thread/x86_64/syscall_cp.s:29
26 LWP 24924 __cp_end () at src/thread/x86_64/syscall_cp.s:29
27 LWP 24917 __cp_end () at src/thread/x86_64/syscall_cp.s:29
28 LWP 24922 __cp_end () at src/thread/x86_64/syscall_cp.s:29
29 LWP 24872 __cp_end () at src/thread/x86_64/syscall_cp.s:29
30 LWP 24945 __cp_end () at src/thread/x86_64/syscall_cp.s:29
31 LWP 24918 __cp_end () at src/thread/x86_64/syscall_cp.s:29
32 LWP 24919 __cp_end () at src/thread/x86_64/syscall_cp.s:29
33 LWP 24920 __cp_end () at src/thread/x86_64/syscall_cp.s:29
34 LWP 24921 __cp_end () at src/thread/x86_64/syscall_cp.s:29
35 LWP 24873 __cp_end () at src/thread/x86_64/syscall_cp.s:29
36 LWP 24901 __cp_end () at src/thread/x86_64/syscall_cp.s:29
37 LWP 24861 __cp_end () at src/thread/x86_64/syscall_cp.s:29
38 LWP 24863 __cp_end () at src/thread/x86_64/syscall_cp.s:29
39 LWP 24897 __cp_end () at src/thread/x86_64/syscall_cp.s:29
40 LWP 24869 __cp_end () at src/thread/x86_64/syscall_cp.s:29
41 LWP 24937 __cp_end () at src/thread/x86_64/syscall_cp.s:29
42 LWP 24936 __cp_end () at src/thread/x86_64/syscall_cp.s:29
43 LWP 24934 __cp_end () at src/thread/x86_64/syscall_cp.s:29
44 LWP 24907 __cp_end () at src/thread/x86_64/syscall_cp.s:29
45 LWP 24895 __cp_end () at src/thread/x86_64/syscall_cp.s:29
46 LWP 24896 __cp_end () at src/thread/x86_64/syscall_cp.s:29
47 LWP 24915 __cp_end () at src/thread/x86_64/syscall_cp.s:29
48 LWP 24929 __cp_end () at src/thread/x86_64/syscall_cp.s:29
49 LWP 24932 __cp_end () at src/thread/x86_64/syscall_cp.s:29
50 LWP 24876 __cp_end () at src/thread/x86_64/syscall_cp.s:29
51 LWP 24944 __cp_end () at src/thread/x86_64/syscall_cp.s:29
52 LWP 24939 __cp_end () at src/thread/x86_64/syscall_cp.s:29
53 LWP 24938 __cp_end () at src/thread/x86_64/syscall_cp.s:29
54 LWP 24867 __cp_end () at src/thread/x86_64/syscall_cp.s:29
55 LWP 24930 __cp_end () at src/thread/x86_64/syscall_cp.s:29
56 LWP 24931 __cp_end () at src/thread/x86_64/syscall_cp.s:29
57 LWP 24927 __cp_end () at src/thread/x86_64/syscall_cp.s:29
58 LWP 24888 __cp_end () at src/thread/x86_64/syscall_cp.s:29
59 LWP 24950 __cp_end () at src/thread/x86_64/syscall_cp.s:29
60 LWP 24898 __cp_end () at src/thread/x86_64/syscall_cp.s:29
61 LWP 24928 __cp_end () at src/thread/x86_64/syscall_cp.s:29
62 LWP 24903 __cp_end () at src/thread/x86_64/syscall_cp.s:29
63 LWP 24870 __cp_end () at src/thread/x86_64/syscall_cp.s:29
64 LWP 24900 __cp_end () at src/thread/x86_64/syscall_cp.s:29
65 LWP 24893 __cp_end () at src/thread/x86_64/syscall_cp.s:29
66 LWP 24894 __cp_end () at src/thread/x86_64/syscall_cp.s:29
67 LWP 24899 __cp_end () at src/thread/x86_64/syscall_cp.s:29
68 LWP 25013 __cp_end () at src/thread/x86_64/syscall_cp.s:29
69 LWP 24958 __cp_end () at src/thread/x86_64/syscall_cp.s:29
70 LWP 25010 __cp_end () at src/thread/x86_64/syscall_cp.s:29
71 LWP 24908 __cp_end () at src/thread/x86_64/syscall_cp.s:29
72 LWP 24871 __cp_end () at src/thread/x86_64/syscall_cp.s:29
73 LWP 24916 __cp_end () at src/thread/x86_64/syscall_cp.s:29
74 LWP 25016 __cp_end () at src/thread/x86_64/syscall_cp.s:29
75 LWP 24878 __cp_end () at src/thread/x86_64/syscall_cp.s:29
76 LWP 25008 __cp_end () at src/thread/x86_64/syscall_cp.s:29
77 LWP 24956 __cp_end () at src/thread/x86_64/syscall_cp.s:29
78 LWP 24986 __cp_end () at src/thread/x86_64/syscall_cp.s:29
79 LWP 24942 __cp_end () at src/thread/x86_64/syscall_cp.s:29
80 LWP 25009 __cp_end () at src/thread/x86_64/syscall_cp.s:29
81 LWP 24946 __cp_end () at src/thread/x86_64/syscall_cp.s:29
82 LWP 24868 __cp_end () at src/thread/x86_64/syscall_cp.s:29
83 LWP 24969 __cp_end () at src/thread/x86_64/syscall_cp.s:29
84 LWP 24890 __cp_end () at src/thread/x86_64/syscall_cp.s:29
85 LWP 25064 __cp_end () at src/thread/x86_64/syscall_cp.s:29
86 LWP 24904 __cp_end () at src/thread/x86_64/syscall_cp.s:29
87 LWP 25014 __cp_end () at src/thread/x86_64/syscall_cp.s:29
88 LWP 25019 __cp_end () at src/thread/x86_64/syscall_cp.s:29
89 LWP 24960 __cp_end () at src/thread/x86_64/syscall_cp.s:29
90 LWP 24910 __cp_end () at src/thread/x86_64/syscall_cp.s:29
91 LWP 24925 __cp_end () at src/thread/x86_64/syscall_cp.s:29
92 LWP 24881 __cp_end () at src/thread/x86_64/syscall_cp.s:29
93 LWP 24992 __cp_end () at src/thread/x86_64/syscall_cp.s:29
94 LWP 25035 __cp_end () at src/thread/x86_64/syscall_cp.s:29
95 LWP 25017 __cp_end () at src/thread/x86_64/syscall_cp.s:29
96 LWP 25039 __cp_end () at src/thread/x86_64/syscall_cp.s:29
97 LWP 25011 __cp_end () at src/thread/x86_64/syscall_cp.s:29
98 LWP 24874 __cp_end () at src/thread/x86_64/syscall_cp.s:29
99 LWP 24951 __cp_end () at src/thread/x86_64/syscall_cp.s:29
100 LWP 25015 __cp_end () at src/thread/x86_64/syscall_cp.s:29
101 LWP 25075 __cp_end () at src/thread/x86_64/syscall_cp.s:29
102 LWP 24943 __cp_end () at src/thread/x86_64/syscall_cp.s:29
103 LWP 24891 __cp_end () at src/thread/x86_64/syscall_cp.s:29
104 LWP 24998 __cp_end () at src/thread/x86_64/syscall_cp.s:29
105 LWP 25024 __cp_end () at src/thread/x86_64/syscall_cp.s:29
106 LWP 25022 __cp_end () at src/thread/x86_64/syscall_cp.s:29
107 LWP 24911 __cp_end () at src/thread/x86_64/syscall_cp.s:29
108 LWP 24962 __cp_end () at src/thread/x86_64/syscall_cp.s:29
109 LWP 25001 __cp_end () at src/thread/x86_64/syscall_cp.s:29
110 LWP 25060 __cp_end () at src/thread/x86_64/syscall_cp.s:29
111 LWP 24926 __cp_end () at src/thread/x86_64/syscall_cp.s:29
112 LWP 24882 __cp_end () at src/thread/x86_64/syscall_cp.s:29
113 LWP 24957 __cp_end () at src/thread/x86_64/syscall_cp.s:29
114 LWP 25000 __cp_end () at src/thread/x86_64/syscall_cp.s:29
115 LWP 25020 __cp_end () at src/thread/x86_64/syscall_cp.s:29
116 LWP 24997 __cp_end () at src/thread/x86_64/syscall_cp.s:29
117 LWP 25025 __cp_end () at src/thread/x86_64/syscall_cp.s:29
118 LWP 25029 __cp_end () at src/thread/x86_64/syscall_cp.s:29
119 LWP 24905 __cp_end () at src/thread/x86_64/syscall_cp.s:29
120 LWP 25021 __cp_end () at src/thread/x86_64/syscall_cp.s:29
121 LWP 24941 __cp_end () at src/thread/x86_64/syscall_cp.s:29
122 LWP 24875 __cp_end () at src/thread/x86_64/syscall_cp.s:29
123 LWP 25033 __cp_end () at src/thread/x86_64/syscall_cp.s:29
124 LWP 25045 __cp_end () at src/thread/x86_64/syscall_cp.s:29
125 LWP 24974 __cp_end () at src/thread/x86_64/syscall_cp.s:29
126 LWP 24963 __cp_end () at src/thread/x86_64/syscall_cp.s:29
127 LWP 24906 __cp_end () at src/thread/x86_64/syscall_cp.s:29
128 LWP 25078 __cp_end () at src/thread/x86_64/syscall_cp.s:29
129 LWP 24980 __cp_end () at src/thread/x86_64/syscall_cp.s:29
130 LWP 24883 __cp_end () at src/thread/x86_64/syscall_cp.s:29
131 LWP 24982 __cp_end () at src/thread/x86_64/syscall_cp.s:29
132 LWP 25005 __cp_end () at src/thread/x86_64/syscall_cp.s:29
133 LWP 25037 __cp_end () at src/thread/x86_64/syscall_cp.s:29
134 LWP 25004 __cp_end () at src/thread/x86_64/syscall_cp.s:29
135 LWP 25002 __cp_end () at src/thread/x86_64/syscall_cp.s:29
136 LWP 25050 __cp_end () at src/thread/x86_64/syscall_cp.s:29
137 LWP 25034 __cp_end () at src/thread/x86_64/syscall_cp.s:29
138 LWP 24996 __cp_end () at src/thread/x86_64/syscall_cp.s:29
139 LWP 25030 __cp_end () at src/thread/x86_64/syscall_cp.s:29
140 LWP 25036 __cp_end () at src/thread/x86_64/syscall_cp.s:29
141 LWP 25061 __cp_end () at src/thread/x86_64/syscall_cp.s:29
142 LWP 24953 __cp_end () at src/thread/x86_64/syscall_cp.s:29
143 LWP 24877 __cp_end () at src/thread/x86_64/syscall_cp.s:29
144 LWP 24933 __cp_end () at src/thread/x86_64/syscall_cp.s:29
145 LWP 25023 __cp_end () at src/thread/x86_64/syscall_cp.s:29
146 LWP 24947 __cp_end () at src/thread/x86_64/syscall_cp.s:29
147 LWP 25032 __cp_end () at src/thread/x86_64/syscall_cp.s:29
148 LWP 25055 __cp_end () at src/thread/x86_64/syscall_cp.s:29
149 LWP 24970 __cp_end () at src/thread/x86_64/syscall_cp.s:29
150 LWP 24975 __cp_end () at src/thread/x86_64/syscall_cp.s:29
151 LWP 25079 __cp_end () at src/thread/x86_64/syscall_cp.s:29
152 LWP 24981 __cp_end () at src/thread/x86_64/syscall_cp.s:29
153 LWP 25006 __cp_end () at src/thread/x86_64/syscall_cp.s:29
154 LWP 24884 __cp_end () at src/thread/x86_64/syscall_cp.s:29
155 LWP 25065 __cp_end () at src/thread/x86_64/syscall_cp.s:29
156 LWP 24964 __cp_end () at src/thread/x86_64/syscall_cp.s:29
157 LWP 24972 __cp_end () at src/thread/x86_64/syscall_cp.s:29
158 LWP 25059 __cp_end () at src/thread/x86_64/syscall_cp.s:29
159 LWP 24955 __cp_end () at src/thread/x86_64/syscall_cp.s:29
160 LWP 24952 __cp_end () at src/thread/x86_64/syscall_cp.s:29
161 LWP 25073 __cp_end () at src/thread/x86_64/syscall_cp.s:29
162 LWP 24993 __cp_end () at src/thread/x86_64/syscall_cp.s:29
163 LWP 24979 __cp_end () at src/thread/x86_64/syscall_cp.s:29
164 LWP 25044 __cp_end () at src/thread/x86_64/syscall_cp.s:29
165 LWP 24971 __cp_end () at src/thread/x86_64/syscall_cp.s:29
166 LWP 25051 __cp_end () at src/thread/x86_64/syscall_cp.s:29
167 LWP 25043 __cp_end () at src/thread/x86_64/syscall_cp.s:29
168 LWP 24954 __cp_end () at src/thread/x86_64/syscall_cp.s:29
169 LWP 25038 __cp_end () at src/thread/x86_64/syscall_cp.s:29
170 LWP 25084 __cp_end () at src/thread/x86_64/syscall_cp.s:29
171 LWP 25077 __cp_end () at src/thread/x86_64/syscall_cp.s:29
172 LWP 24892 __cp_end () at src/thread/x86_64/syscall_cp.s:29
173 LWP 25080 __cp_end () at src/thread/x86_64/syscall_cp.s:29
174 LWP 24948 __cp_end () at src/thread/x86_64/syscall_cp.s:29
175 LWP 25040 __cp_end () at src/thread/x86_64/syscall_cp.s:29
176 LWP 25056 __cp_end () at src/thread/x86_64/syscall_cp.s:29
177 LWP 24976 __cp_end () at src/thread/x86_64/syscall_cp.s:29
178 LWP 24973 __cp_end () at src/thread/x86_64/syscall_cp.s:29
179 LWP 25003 __cp_end () at src/thread/x86_64/syscall_cp.s:29
180 LWP 24959 __cp_end () at src/thread/x86_64/syscall_cp.s:29
181 LWP 25082 __cp_end () at src/thread/x86_64/syscall_cp.s:29
182 LWP 25042 __cp_end () at src/thread/x86_64/syscall_cp.s:29
183 LWP 25076 __cp_end () at src/thread/x86_64/syscall_cp.s:29
184 LWP 25026 __cp_end () at src/thread/x86_64/syscall_cp.s:29
185 LWP 24994 __cp_end () at src/thread/x86_64/syscall_cp.s:29
186 LWP 24995 __cp_end () at src/thread/x86_64/syscall_cp.s:29
187 LWP 24983 __cp_end () at src/thread/x86_64/syscall_cp.s:29
188 LWP 24984 __cp_end () at src/thread/x86_64/syscall_cp.s:29
189 LWP 24968 __cp_end () at src/thread/x86_64/syscall_cp.s:29
190 LWP 24949 __cp_end () at src/thread/x86_64/syscall_cp.s:29
191 LWP 25054 __cp_end () at src/thread/x86_64/syscall_cp.s:29
192 LWP 25041 __cp_end () at src/thread/x86_64/syscall_cp.s:29
193 LWP 24967 __cp_end () at src/thread/x86_64/syscall_cp.s:29
194 LWP 25012 __cp_end () at src/thread/x86_64/syscall_cp.s:29
195 LWP 24843 __cp_end () at src/thread/x86_64/syscall_cp.s:29
196 LWP 25057 __cp_end () at src/thread/x86_64/syscall_cp.s:29
197 LWP 25085 __cp_end () at src/thread/x86_64/syscall_cp.s:29
198 LWP 25027 __cp_end () at src/thread/x86_64/syscall_cp.s:29
199 LWP 25081 __cp_end () at src/thread/x86_64/syscall_cp.s:29
200 LWP 24966 __cp_end () at src/thread/x86_64/syscall_cp.s:29
201 LWP 25052 __cp_end () at src/thread/x86_64/syscall_cp.s:29
202 LWP 25046 __cp_end () at src/thread/x86_64/syscall_cp.s:29
203 LWP 24978 __cp_end () at src/thread/x86_64/syscall_cp.s:29
204 LWP 25070 __cp_end () at src/thread/x86_64/syscall_cp.s:29
205 LWP 25062 __cp_end () at src/thread/x86_64/syscall_cp.s:29
206 LWP 25058 __cp_end () at src/thread/x86_64/syscall_cp.s:29
207 LWP 24977 __cp_end () at src/thread/x86_64/syscall_cp.s:29
208 LWP 24909 __cp_end () at src/thread/x86_64/syscall_cp.s:29
209 LWP 25018 __cp_end () at src/thread/x86_64/syscall_cp.s:29
210 LWP 24879 __cp_end () at src/thread/x86_64/syscall_cp.s:29
211 LWP 24880 __cp_end () at src/thread/x86_64/syscall_cp.s:29
212 LWP 25083 __cp_end () at src/thread/x86_64/syscall_cp.s:29
213 LWP 25028 __cp_end () at src/thread/x86_64/syscall_cp.s:29
214 LWP 24990 __cp_end () at src/thread/x86_64/syscall_cp.s:29
215 LWP 24886 __cp_end () at src/thread/x86_64/syscall_cp.s:29
216 LWP 24961 __cp_end () at src/thread/x86_64/syscall_cp.s:29
217 LWP 25031 __cp_end () at src/thread/x86_64/syscall_cp.s:29
218 LWP 24885 __cp_end () at src/thread/x86_64/syscall_cp.s:29
219 LWP 25074 __cp_end () at src/thread/x86_64/syscall_cp.s:29
220 LWP 25049 __cp_end () at src/thread/x86_64/syscall_cp.s:29
221 LWP 25007 __cp_end () at src/thread/x86_64/syscall_cp.s:29
222 LWP 25071 __cp_end () at src/thread/x86_64/syscall_cp.s:29
223 LWP 24889 __cp_end () at src/thread/x86_64/syscall_cp.s:29
224 LWP 25048 __cp_end () at src/thread/x86_64/syscall_cp.s:29
225 LWP 25069 __cp_end () at src/thread/x86_64/syscall_cp.s:29
226 LWP 24985 __cp_end () at src/thread/x86_64/syscall_cp.s:29
227 LWP 24965 __cp_end () at src/thread/x86_64/syscall_cp.s:29
228 LWP 25063 __cp_end () at src/thread/x86_64/syscall_cp.s:29
229 LWP 24887 __cp_end () at src/thread/x86_64/syscall_cp.s:29
230 LWP 25086 __cp_end () at src/thread/x86_64/syscall_cp.s:29
231 LWP 24940 __cp_end () at src/thread/x86_64/syscall_cp.s:29
232 LWP 25067 __cp_end () at src/thread/x86_64/syscall_cp.s:29
233 LWP 24991 __cp_end () at src/thread/x86_64/syscall_cp.s:29
234 LWP 24999 __cp_end () at src/thread/x86_64/syscall_cp.s:29
235 LWP 25066 __cp_end () at src/thread/x86_64/syscall_cp.s:29
236 LWP 24989 __cp_end () at src/thread/x86_64/syscall_cp.s:29
237 LWP 24935 __cp_end () at src/thread/x86_64/syscall_cp.s:29
238 LWP 25072 __cp_end () at src/thread/x86_64/syscall_cp.s:29
239 LWP 24914 __cp_end () at src/thread/x86_64/syscall_cp.s:29
240 LWP 25053 __cp_end () at src/thread/x86_64/syscall_cp.s:29
241 LWP 25068 __cp_end () at src/thread/x86_64/syscall_cp.s:29
242 LWP 25047 __cp_end () at src/thread/x86_64/syscall_cp.s:29
243 LWP 24988 __cp_end () at src/thread/x86_64/syscall_cp.s:29
244 LWP 24987 __cp_end () at src/thread/x86_64/syscall_cp.s:29
245 LWP 24913 __cp_end () at src/thread/x86_64/syscall_cp.s:29
246 LWP 24912 __cp_end () at src/thread/x86_64/syscall_cp.s:29
(gdb)
The output of thread apply all bt full and thread apply all bt are in the attached log file
Please let me know what additional information you would need.
Best regards,
Paul
RE: ***UNCHECKED*** RE: Maximum number of simultaneous RDP connections
Posted by HASENOHR Paul <Pa...@ec.europa.eu.INVALID>.
Hello Nick,
I installed gdb, apk-tools-dbg and musl-dbg in the guacd 1.5.5 alpine container. As I have no experience in using gdb, I followed the instructions at https://stackoverflow.com/questions/5745215/getting-stacktrace-from-core-dump
Let me know if you need the output of any other command.
I will try to test the version 1.6.0 next week. If I do not manage by end of next week, I will only be able to do it during the second week of January.
FIRST core dump
/tmp # gdb /opt/guacamole/sbin/guacd core-guacd.12920.8a6bb6a83b86.1733497224
GNU gdb (GDB) 13.1
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-alpine-linux-musl".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /opt/guacamole/sbin/guacd...
warning: Can't open file /usr/lib/libexpat.so.1.9.2 during file-backed mapping note processing
[New LWP 12920]
Core was generated by `/opt/guacamole/sbin/guacd -b 0.0.0.0 -L debug -f'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 a_crash () at ./arch/x86_64/atomic_arch.h:108
108 ./arch/x86_64/atomic_arch.h: No such file or directory.
(gdb)
(gdb)
(gdb) bt full
#0 a_crash () at ./arch/x86_64/atomic_arch.h:108
No locals.
#1 get_meta (p=p@entry=0x38 <error: Cannot access memory at address 0x38>) at src/malloc/mallocng/meta.h:131
offset = <optimized out>
index = <optimized out>
base = <optimized out>
meta = <optimized out>
area = <optimized out>
#2 0x00007f8b34a97a16 in __libc_free (p=0x38) at src/malloc/mallocng/free.c:105
g = <optimized out>
idx = <optimized out>
stride = <optimized out>
start = <optimized out>
end = <optimized out>
self = <optimized out>
all = <optimized out>
mi = <optimized out>
base = <optimized out>
len = <optimized out>
e = <optimized out>
#3 0x00007f8b346eeeac in ERR_clear_error () from /lib/libcrypto.so.1.1
No symbol table info available.
#4 0x00007f8b34707177 in ?? () from /lib/libcrypto.so.1.1
No symbol table info available.
#5 0x00007f8b34ac8e8a in __pthread_once_full (init=0x7f8b34707171, control=0x7f8b3483b7cc) at src/thread/pthread_once.c:22
__cb = {__f = 0x7f8b34ac8dff <undo>, __x = 0x7f8b3483b7cc, __next = 0x7f8ae349cf48}
#6 __pthread_once_full (control=0x7f8b3483b7cc, init=0x7f8b34707171) at src/thread/pthread_once.c:11
__cb = <optimized out>
#7 0x00007f8b347601bf in CRYPTO_THREAD_run_once () from /lib/libcrypto.so.1.1
No symbol table info available.
#8 0x00007f8b34707725 in OPENSSL_init_crypto () from /lib/libcrypto.so.1.1
No symbol table info available.
#9 0x00007f8b3468a86c in ?? () from /lib/libcrypto.so.1.1
No symbol table info available.
#10 0x00007f8b347071c3 in ?? () from /lib/libcrypto.so.1.1
No symbol table info available.
#11 0x00007f8b34ac8e8a in __pthread_once_full (init=0x7f8b347071b6, control=0x7f8b3483b7f0) at src/thread/pthread_once.c:22
__cb = {__f = 0x7f8b34ac8dff <undo>, __x = 0x7f8b3483b7f0, __next = 0x0}
#12 __pthread_once_full (control=0x7f8b3483b7f0, init=0x7f8b347071b6) at src/thread/pthread_once.c:11
__cb = <optimized out>
#13 0x00007f8b347601bf in CRYPTO_THREAD_run_once () from /lib/libcrypto.so.1.1
No symbol table info available.
#14 0x00007f8b34707698 in OPENSSL_init_crypto () from /lib/libcrypto.so.1.1
No symbol table info available.
#15 0x00007f8b349fa184 in OPENSSL_init_ssl () from /lib/libssl.so.1.1
No symbol table info available.
#16 0x00007f8b1e68572f in guac_common_ssh_init () from /opt/guacamole/lib/libguac-client-rdp.so
No symbol table info available.
#17 0x00007f8b1e66c9a0 in guac_client_init () from /opt/guacamole/lib/libguac-client-rdp.so
No symbol table info available.
#18 0x00007f8b34a54d8d in guac_client_load_plugin () from /opt/guacamole/lib/libguac.so.24
No symbol table info available.
#19 0x000056026a3da7e6 in guacd_exec_proc ()
No symbol table info available.
#20 0x000056026a3dac22 in guacd_create_proc ()
No symbol table info available.
#21 0x000056026a3d8ea1 in guacd_route_connection ()
No symbol table info available.
#22 0x000056026a3d90d2 in guacd_connection_thread ()
No symbol table info available.
#23 0x00007f8b34ac7bc2 in start (p=0x7f8ae349d388) at src/thread/pthread_create.c:207
args = 0x7f8ae349d388
state = <optimized out>
#24 0x00007f8b34ac9f30 in __clone () at src/thread/x86_64/clone.s:22
No locals.
Backtrace stopped: frame did not save the PC
(gdb)
(gdb)
(gdb)
(gdb)
(gdb)
(gdb) info threads
Id Target Id Frame
* 1 LWP 12920 a_crash () at ./arch/x86_64/atomic_arch.h:108
(gdb)
(gdb)
(gdb)
(gdb)
(gdb)
(gdb) info threads
Id Target Id Frame
* 1 LWP 12920 a_crash () at ./arch/x86_64/atomic_arch.h:108
(gdb) thread apply all bt
Thread 1 (LWP 12920):
#0 a_crash () at ./arch/x86_64/atomic_arch.h:108
#1 get_meta (p=p@entry=0x38 <error: Cannot access memory at address 0x38>) at src/malloc/mallocng/meta.h:131
#2 0x00007f8b34a97a16 in __libc_free (p=0x38) at src/malloc/mallocng/free.c:105
#3 0x00007f8b346eeeac in ERR_clear_error () from /lib/libcrypto.so.1.1
#4 0x00007f8b34707177 in ?? () from /lib/libcrypto.so.1.1
#5 0x00007f8b34ac8e8a in __pthread_once_full (init=0x7f8b34707171, control=0x7f8b3483b7cc) at src/thread/pthread_once.c:22
#6 __pthread_once_full (control=0x7f8b3483b7cc, init=0x7f8b34707171) at src/thread/pthread_once.c:11
#7 0x00007f8b347601bf in CRYPTO_THREAD_run_once () from /lib/libcrypto.so.1.1
#8 0x00007f8b34707725 in OPENSSL_init_crypto () from /lib/libcrypto.so.1.1
#9 0x00007f8b3468a86c in ?? () from /lib/libcrypto.so.1.1
#10 0x00007f8b347071c3 in ?? () from /lib/libcrypto.so.1.1
#11 0x00007f8b34ac8e8a in __pthread_once_full (init=0x7f8b347071b6, control=0x7f8b3483b7f0) at src/thread/pthread_once.c:22
#12 __pthread_once_full (control=0x7f8b3483b7f0, init=0x7f8b347071b6) at src/thread/pthread_once.c:11
#13 0x00007f8b347601bf in CRYPTO_THREAD_run_once () from /lib/libcrypto.so.1.1
#14 0x00007f8b34707698 in OPENSSL_init_crypto () from /lib/libcrypto.so.1.1
#15 0x00007f8b349fa184 in OPENSSL_init_ssl () from /lib/libssl.so.1.1
#16 0x00007f8b1e68572f in guac_common_ssh_init () from /opt/guacamole/lib/libguac-client-rdp.so
#17 0x00007f8b1e66c9a0 in guac_client_init () from /opt/guacamole/lib/libguac-client-rdp.so
#18 0x00007f8b34a54d8d in guac_client_load_plugin () from /opt/guacamole/lib/libguac.so.24
#19 0x000056026a3da7e6 in guacd_exec_proc ()
#20 0x000056026a3dac22 in guacd_create_proc ()
#21 0x000056026a3d8ea1 in guacd_route_connection ()
#22 0x000056026a3d90d2 in guacd_connection_thread ()
#23 0x00007f8b34ac7bc2 in start (p=0x7f8ae349d388) at src/thread/pthread_create.c:207
#24 0x00007f8b34ac9f30 in __clone () at src/thread/x86_64/clone.s:22
Backtrace stopped: frame did not save the PC
(gdb) thread apply all bt full
Thread 1 (LWP 12920):
#0 a_crash () at ./arch/x86_64/atomic_arch.h:108
No locals.
#1 get_meta (p=p@entry=0x38 <error: Cannot access memory at address 0x38>) at src/malloc/mallocng/meta.h:131
offset = <optimized out>
index = <optimized out>
base = <optimized out>
meta = <optimized out>
area = <optimized out>
#2 0x00007f8b34a97a16 in __libc_free (p=0x38) at src/malloc/mallocng/free.c:105
g = <optimized out>
idx = <optimized out>
stride = <optimized out>
start = <optimized out>
end = <optimized out>
self = <optimized out>
all = <optimized out>
mi = <optimized out>
base = <optimized out>
len = <optimized out>
e = <optimized out>
#3 0x00007f8b346eeeac in ERR_clear_error () from /lib/libcrypto.so.1.1
No symbol table info available.
#4 0x00007f8b34707177 in ?? () from /lib/libcrypto.so.1.1
No symbol table info available.
#5 0x00007f8b34ac8e8a in __pthread_once_full (init=0x7f8b34707171, control=0x7f8b3483b7cc) at src/thread/pthread_once.c:22
__cb = {__f = 0x7f8b34ac8dff <undo>, __x = 0x7f8b3483b7cc, __next = 0x7f8ae349cf48}
#6 __pthread_once_full (control=0x7f8b3483b7cc, init=0x7f8b34707171) at src/thread/pthread_once.c:11
__cb = <optimized out>
#7 0x00007f8b347601bf in CRYPTO_THREAD_run_once () from /lib/libcrypto.so.1.1
No symbol table info available.
#8 0x00007f8b34707725 in OPENSSL_init_crypto () from /lib/libcrypto.so.1.1
No symbol table info available.
#9 0x00007f8b3468a86c in ?? () from /lib/libcrypto.so.1.1
No symbol table info available.
#10 0x00007f8b347071c3 in ?? () from /lib/libcrypto.so.1.1
No symbol table info available.
#11 0x00007f8b34ac8e8a in __pthread_once_full (init=0x7f8b347071b6, control=0x7f8b3483b7f0) at src/thread/pthread_once.c:22
__cb = {__f = 0x7f8b34ac8dff <undo>, __x = 0x7f8b3483b7f0, __next = 0x0}
#12 __pthread_once_full (control=0x7f8b3483b7f0, init=0x7f8b347071b6) at src/thread/pthread_once.c:11
__cb = <optimized out>
#13 0x00007f8b347601bf in CRYPTO_THREAD_run_once () from /lib/libcrypto.so.1.1
No symbol table info available.
#14 0x00007f8b34707698 in OPENSSL_init_crypto () from /lib/libcrypto.so.1.1
No symbol table info available.
#15 0x00007f8b349fa184 in OPENSSL_init_ssl () from /lib/libssl.so.1.1
No symbol table info available.
#16 0x00007f8b1e68572f in guac_common_ssh_init () from /opt/guacamole/lib/libguac-client-rdp.so
No symbol table info available.
#17 0x00007f8b1e66c9a0 in guac_client_init () from /opt/guacamole/lib/libguac-client-rdp.so
No symbol table info available.
#18 0x00007f8b34a54d8d in guac_client_load_plugin () from /opt/guacamole/lib/libguac.so.24
No symbol table info available.
#19 0x000056026a3da7e6 in guacd_exec_proc ()
No symbol table info available.
#20 0x000056026a3dac22 in guacd_create_proc ()
No symbol table info available.
#21 0x000056026a3d8ea1 in guacd_route_connection ()
No symbol table info available.
#22 0x000056026a3d90d2 in guacd_connection_thread ()
No symbol table info available.
#23 0x00007f8b34ac7bc2 in start (p=0x7f8ae349d388) at src/thread/pthread_create.c:207
args = 0x7f8ae349d388
state = <optimized out>
#24 0x00007f8b34ac9f30 in __clone () at src/thread/x86_64/clone.s:22
No locals.
Backtrace stopped: frame did not save the PC
(gdb)
SECOND core dump
/tmp # gdb /opt/guacamole/sbin/guacd core-guacd.12924.8a6bb6a83b86.1733499168
GNU gdb (GDB) 13.1
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-alpine-linux-musl".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /opt/guacamole/sbin/guacd...
warning: Can't open file /usr/lib/libexpat.so.1.9.2 during file-backed mapping note processing
[New LWP 12924]
Core was generated by `/opt/guacamole/sbin/guacd -b 0.0.0.0 -L debug -f'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 a_crash () at ./arch/x86_64/atomic_arch.h:108
108 ./arch/x86_64/atomic_arch.h: No such file or directory.
(gdb)
(gdb)
(gdb)
(gdb)
(gdb)
(gdb) bt
#0 a_crash () at ./arch/x86_64/atomic_arch.h:108
#1 get_nominal_size (end=0x7f8b2f84552c "", p=0x7f8b2f845520 "") at src/malloc/mallocng/meta.h:169
#2 __libc_free (p=0x7f8b2f845520) at src/malloc/mallocng/free.c:110
#3 0x00007f8b3470732c in OPENSSL_cleanup () from /lib/libcrypto.so.1.1
#4 0x00007f8b34a8e143 in __funcs_on_exit () at src/exit/atexit.c:34
#5 0x00007f8b34a8607d in exit (code=0) at src/exit/exit.c:29
#6 0x000056026a3daa3d in guacd_exec_proc ()
#7 0x000056026a3dac22 in guacd_create_proc ()
#8 0x000056026a3d8ea1 in guacd_route_connection ()
#9 0x000056026a3d90d2 in guacd_connection_thread ()
#10 0x00007f8b34ac7bc2 in start (p=0x7f8ae349d388) at src/thread/pthread_create.c:207
#11 0x00007f8b34ac9f30 in __clone () at src/thread/x86_64/clone.s:22
Backtrace stopped: frame did not save the PC
(gdb)
(gdb)
(gdb)
(gdb)
(gdb) bt full
#0 a_crash () at ./arch/x86_64/atomic_arch.h:108
No locals.
#1 get_nominal_size (end=0x7f8b2f84552c "", p=0x7f8b2f845520 "") at src/malloc/mallocng/meta.h:169
reserved = 8
#2 __libc_free (p=0x7f8b2f845520) at src/malloc/mallocng/free.c:110
g = 0x56026b8e0f40
idx = 18
stride = <optimized out>
start = <optimized out>
end = 0x7f8b2f84552c ""
self = <optimized out>
all = <optimized out>
mi = <optimized out>
base = <optimized out>
len = <optimized out>
e = <optimized out>
#3 0x00007f8b3470732c in OPENSSL_cleanup () from /lib/libcrypto.so.1.1
No symbol table info available.
#4 0x00007f8b34a8e143 in __funcs_on_exit () at src/exit/atexit.c:34
func = 0x7f8b34a8e0ee <call>
arg = 0x7f8b347072c5 <OPENSSL_cleanup>
#5 0x00007f8b34a8607d in exit (code=0) at src/exit/exit.c:29
No locals.
#6 0x000056026a3daa3d in guacd_exec_proc ()
No symbol table info available.
#7 0x000056026a3dac22 in guacd_create_proc ()
No symbol table info available.
#8 0x000056026a3d8ea1 in guacd_route_connection ()
No symbol table info available.
#9 0x000056026a3d90d2 in guacd_connection_thread ()
No symbol table info available.
#10 0x00007f8b34ac7bc2 in start (p=0x7f8ae349d388) at src/thread/pthread_create.c:207
args = 0x7f8ae349d388
state = <optimized out>
#11 0x00007f8b34ac9f30 in __clone () at src/thread/x86_64/clone.s:22
No locals.
Backtrace stopped: frame did not save the PC
(gdb)
(gdb)
(gdb)
(gdb)
(gdb)
(gdb)
(gdb) info threads
Id Target Id Frame
* 1 LWP 12924 a_crash () at ./arch/x86_64/atomic_arch.h:108
(gdb)
(gdb)
(gdb) thread apply all bt
Thread 1 (LWP 12924):
#0 a_crash () at ./arch/x86_64/atomic_arch.h:108
#1 get_nominal_size (end=0x7f8b2f84552c "", p=0x7f8b2f845520 "") at src/malloc/mallocng/meta.h:169
#2 __libc_free (p=0x7f8b2f845520) at src/malloc/mallocng/free.c:110
#3 0x00007f8b3470732c in OPENSSL_cleanup () from /lib/libcrypto.so.1.1
#4 0x00007f8b34a8e143 in __funcs_on_exit () at src/exit/atexit.c:34
#5 0x00007f8b34a8607d in exit (code=0) at src/exit/exit.c:29
#6 0x000056026a3daa3d in guacd_exec_proc ()
#7 0x000056026a3dac22 in guacd_create_proc ()
#8 0x000056026a3d8ea1 in guacd_route_connection ()
#9 0x000056026a3d90d2 in guacd_connection_thread ()
#10 0x00007f8b34ac7bc2 in start (p=0x7f8ae349d388) at src/thread/pthread_create.c:207
#11 0x00007f8b34ac9f30 in __clone () at src/thread/x86_64/clone.s:22
Backtrace stopped: frame did not save the PC
(gdb)
(gdb)
(gdb)
(gdb) thread apply all bt full
Thread 1 (LWP 12924):
#0 a_crash () at ./arch/x86_64/atomic_arch.h:108
No locals.
#1 get_nominal_size (end=0x7f8b2f84552c "", p=0x7f8b2f845520 "") at src/malloc/mallocng/meta.h:169
reserved = 8
#2 __libc_free (p=0x7f8b2f845520) at src/malloc/mallocng/free.c:110
g = 0x56026b8e0f40
idx = 18
stride = <optimized out>
start = <optimized out>
end = 0x7f8b2f84552c ""
self = <optimized out>
all = <optimized out>
mi = <optimized out>
base = <optimized out>
len = <optimized out>
e = <optimized out>
#3 0x00007f8b3470732c in OPENSSL_cleanup () from /lib/libcrypto.so.1.1
No symbol table info available.
#4 0x00007f8b34a8e143 in __funcs_on_exit () at src/exit/atexit.c:34
func = 0x7f8b34a8e0ee <call>
arg = 0x7f8b347072c5 <OPENSSL_cleanup>
#5 0x00007f8b34a8607d in exit (code=0) at src/exit/exit.c:29
No locals.
#6 0x000056026a3daa3d in guacd_exec_proc ()
No symbol table info available.
#7 0x000056026a3dac22 in guacd_create_proc ()
No symbol table info available.
#8 0x000056026a3d8ea1 in guacd_route_connection ()
No symbol table info available.
#9 0x000056026a3d90d2 in guacd_connection_thread ()
No symbol table info available.
#10 0x00007f8b34ac7bc2 in start (p=0x7f8ae349d388) at src/thread/pthread_create.c:207
args = 0x7f8ae349d388
state = <optimized out>
#11 0x00007f8b34ac9f30 in __clone () at src/thread/x86_64/clone.s:22
No locals.
Backtrace stopped: frame did not save the PC
Best regards,
Paul
Re: ***UNCHECKED*** RE: Maximum number of simultaneous RDP connections
Posted by Nick Couchman <ni...@gmail.com>.
On Thu, Dec 12, 2024 at 11:42 AM HASENOHR Paul
<Pa...@ec.europa.eu.invalid> wrote:
> Thank you Sean and Nick for your answers.
>
> The instructions for HA will be very useful although I will never been
> close to the number of connections you are handling!
>
>
>
> The version I used was the Docker image with release 1.5.5
>
>
>
> As the segmentation faults were most of the time happening in
> ld-musl-x86_64.so.1, a colleague suspected an issue with Alpine as musl
> is used instead of glibc. Thus I built a Docker guacd image based on Debian
> 12. I based myself on the Dockerfile associated with the release 1.5.5 and
> edited the list of packages accordingly. Running the exact same load test
> with the same docker configuration, we could reach 80 concurrent sessions
> (then the VM used to launch the selenium instances could not handle the
> load anymore!) without any error message in the system logs of the server.
>
>
>
Interesting - thanks for tracking this down!
> Considering that element, are you still interested in the stack trace with
> 1.5.5 on Alpine? Or should I build a Docker guacd image based on Alpine and
> another one based on Debian 12 with release 1.6.0 to compare?
>
>
>
Yes, I'd still be interested in seeing this stack trace. And, if you have
the time/inclination to run some tests with 1.6.0, I'd be interested in
those findings, as well.
-Nick
>
RE: ***UNCHECKED*** RE: Maximum number of simultaneous RDP connections
Posted by HASENOHR Paul <Pa...@ec.europa.eu.INVALID>.
Thank you Sean and Nick for your answers.
The instructions for HA will be very useful although I will never been close to the number of connections you are handling!
The version I used was the Docker image with release 1.5.5
As the segmentation faults were most of the time happening in ld-musl-x86_64.so.1, a colleague suspected an issue with Alpine as musl is used instead of glibc. Thus I built a Docker guacd image based on Debian 12. I based myself on the Dockerfile associated with the release 1.5.5 and edited the list of packages accordingly. Running the exact same load test with the same docker configuration, we could reach 80 concurrent sessions (then the VM used to launch the selenium instances could not handle the load anymore!) without any error message in the system logs of the server.
Considering that element, are you still interested in the stack trace with 1.5.5 on Alpine? Or should I build a Docker guacd image based on Alpine and another one based on Debian 12 with release 1.6.0 to compare?
Best regards,
Paul
From: Nick Couchman <vn...@apache.org>
Sent: Tuesday, December 10, 2024 8:23 PM
To: user@guacamole.apache.org
Subject: Re: ***UNCHECKED*** RE: Maximum number of simultaneous RDP connections
On Fri, Dec 6, 2024 at 2:06 PM HASENOHR Paul <Pa...@ec.europa.eu.invalid>> wrote:
Dear Nick,
As promised, I ran some further tests.
With the help of a colleague, we could reproduce the issue on a test instance (max 59 concurrent RDP connections).
Thanks, Paul - I'll try to take a look at some point before too long - the day job is keeping me rather busy these days :-/.
You provided the core dumps, but those likely aren't going to be any good to me - if you can actually use gdb to analyze those dumps on the system where you built and ran guacd, and provide the full stack trace (bt or back trace), that'll help track down the issue you're seeing.
Also, I looked back through the e-mails and don't see a specific mention of the version you're running - if you're running 1.5.4 or 1.5.5, and can try with 1.6.0 (you'll have to clone the git repo and build from source), that would be great. I don't know for sure that it will be fixed - I would hope that the issue you're seeing was actually fixed in 1.5.5 with GUACAMOLE-1920 (https://issues.apache.org/jira/browse/GUACAMOLE-1920<https://urldefense.com/v3/__https:/issues.apache.org/jira/browse/GUACAMOLE-1920__;!!DOxrgLBm!BXw4F3224dCJhNXtKkMgMVLrongrG2ohcrykFnTTry5S9FHRu_6D1CHU2_wa7iBX4EjtQgTClYbCcj1FBri-$>), but you aren't the only one reporting this behavior (https://issues.apache.org/jira/browse/GUACAMOLE-1998<https://urldefense.com/v3/__https:/issues.apache.org/jira/browse/GUACAMOLE-1998__;!!DOxrgLBm!BXw4F3224dCJhNXtKkMgMVLrongrG2ohcrykFnTTry5S9FHRu_6D1CHU2_wa7iBX4EjtQgTClYbCcnXDqo2u$>).
-Nick
Re: ***UNCHECKED*** RE: Maximum number of simultaneous RDP connections
Posted by Nick Couchman <vn...@apache.org>.
On Fri, Dec 6, 2024 at 2:06 PM HASENOHR Paul
<Pa...@ec.europa.eu.invalid> wrote:
> Dear Nick,
>
>
>
> As promised, I ran some further tests.
>
> With the help of a colleague, we could reproduce the issue on a test
> instance (max 59 concurrent RDP connections).
>
>
>
Thanks, Paul - I'll try to take a look at some point before too long - the
day job is keeping me rather busy these days :-/.
You provided the core dumps, but those likely aren't going to be any good
to me - if you can actually use gdb to analyze those dumps on the system
where you built and ran guacd, and provide the full stack trace (bt or back
trace), that'll help track down the issue you're seeing.
Also, I looked back through the e-mails and don't see a specific mention of
the version you're running - if you're running 1.5.4 or 1.5.5, and can try
with 1.6.0 (you'll have to clone the git repo and build from source), that
would be great. I don't know for sure that it will be fixed - I would hope
that the issue you're seeing was actually fixed in 1.5.5 with
GUACAMOLE-1920 (https://issues.apache.org/jira/browse/GUACAMOLE-1920), but
you aren't the only one reporting this behavior (
https://issues.apache.org/jira/browse/GUACAMOLE-1998).
-Nick
>
***UNCHECKED*** RE: Maximum number of simultaneous RDP connections
Posted by HASENOHR Paul <Pa...@ec.europa.eu.INVALID>.
Dear Nick,
As promised, I ran some further tests.
With the help of a colleague, we could reproduce the issue on a test instance (max 59 concurrent RDP connections).
After having created 80 user accounts linked evenly to one out of 4 rdp connections (towards xrdp servers), the test protocol was the following:
- With selenium, launch 60 chrome headless instances connecting to Guacamole (one every 20s):
o T0: towards RDP1
o T0+20: towards RDP2
o T0+40: towards RDP3
o T0+60: towards RDP4
o T0+80: towards RDP1 and so on
- Launch a 61st instance one minute after the 60th
- Take a “screenshot” 10s after having initiated the connection
- Keep each connection active for 30 minutes
The outcome is the following (with T0=2024-12-06T14:42:45Z):
- At 15:00:24 (GMT), a connection could not be established and the following log entries could be found:
o In /var/log/messages (GMT+1):
Dec 6 16:00:24 s-jrciprjeop151p kernel: traps: guacd[67983] general protection fault ip:7f8b34a97664 sp:7f8ae349ce28 error:0 in ld-musl-x86_64.so.1[7f8b34a86000+4c000]
o In the guacd Docker container logs:
2024-12-06T15:00:24.770823151Z guacd[1]: INFO: Creating new client for protocol "rdp"
2024-12-06T15:00:24.774091622Z guacd[1]: INFO: Connection ID is "$2ba7c0c0-60cf-41d9-a970-2bc20f15c624"
2024-12-06T15:00:24.890940897Z guacd[1]: INFO: Connection "$2ba7c0c0-60cf-41d9-a970-2bc20f15c624" removed.
2024-12-06T15:00:24.890979827Z guacd[1]: DEBUG: Unable to request termination of client process: No such process
2024-12-06T15:00:24.890994171Z guacd[1]: DEBUG: All child processes for connection "$2ba7c0c0-60cf-41d9-a970-2bc20f15c624" have been terminated.
o In addition, a core dump has been generated: core-guacd.12920.8a6bb6a83b86.1733497224 (attached to that message, 1.3GB uncompressed)
- At 15:03:04 (GMT), the 61st selenium process tried to create what was in fact the 60th RDP connection (as the session of 15:00:24 could not be created) and it failed to do so with the following guacd log entries repeated roughly every 15 seconds until the first selenium process got stopped and the associated connection removed
o Log entries for failed attempts to connect:
2024-12-06T15:03:04.687449173Z guacd[1]: INFO: Creating new client for protocol "rdp"
2024-12-06T15:03:04.691148814Z guacd[1]: INFO: Connection ID is "$ff003e4a-7527-4e5f-9e61-bdf6b10a5536"
2024-12-06T15:03:04.702893330Z guacd[14114]: DEBUG: Processing instruction: size
2024-12-06T15:03:04.702942741Z guacd[14114]: DEBUG: Processing instruction: audio
2024-12-06T15:03:04.702952374Z guacd[14114]: DEBUG: Processing instruction: video
2024-12-06T15:03:04.702959284Z guacd[14114]: DEBUG: Processing instruction: image
2024-12-06T15:03:04.702965978Z guacd[14114]: DEBUG: Processing instruction: timezone
2024-12-06T15:03:04.702972998Z guacd[14114]: DEBUG: Processing instruction: name
2024-12-06T15:03:04.703154230Z guacd[14114]: DEBUG: Parameter "console" omitted. Using default value of 0.
2024-12-06T15:03:04.703198283Z guacd[14114]: DEBUG: Parameter "console-audio" omitted. Using default value of 0.
2024-12-06T15:03:04.703355499Z guacd[14114]: DEBUG: Parameter "ignore-cert" omitted. Using default value of 0.
2024-12-06T15:03:04.703433340Z guacd[14114]: DEBUG: Parameter "disable-auth" omitted. Using default value of 0.
2024-12-06T15:03:04.703442113Z guacd[14114]: INFO: Security mode: TLS
2024-12-06T15:03:04.703450913Z guacd[14114]: DEBUG: User resolution is 1024x629 at 96 DPI
2024-12-06T15:03:04.703458296Z guacd[14114]: DEBUG: Parameter "dpi" omitted. Using default value of 96.
2024-12-06T15:03:04.703478890Z guacd[14114]: DEBUG: Using resolution of 1024x629 at 96 DPI
2024-12-06T15:03:04.703488497Z guacd[14114]: DEBUG: Parameter "force-lossless" omitted. Using default value of 0.
2024-12-06T15:03:04.703496257Z guacd[14114]: DEBUG: Parameter "read-only" omitted. Using default value of 0.
2024-12-06T15:03:04.703532181Z guacd[14114]: DEBUG: Parameter "client-name" omitted. Using default value of "Guacamole RDP".
2024-12-06T15:03:04.703542197Z guacd[14114]: DEBUG: Parameter "enable-wallpaper" omitted. Using default value of 0.
2024-12-06T15:03:04.703578781Z guacd[14114]: DEBUG: Parameter "enable-theming" omitted. Using default value of 0.
2024-12-06T15:03:04.703587648Z guacd[14114]: DEBUG: Parameter "enable-font-smoothing" omitted. Using default value of 0.
2024-12-06T15:03:04.703676486Z guacd[14114]: DEBUG: Parameter "enable-full-window-drag" omitted. Using default value of 0.
2024-12-06T15:03:04.703703149Z guacd[14114]: DEBUG: Parameter "enable-desktop-composition" omitted. Using default value of 0.
2024-12-06T15:03:04.703829234Z guacd[14114]: DEBUG: Parameter "enable-menu-animations" omitted. Using default value of 0.
2024-12-06T15:03:04.703902675Z guacd[14114]: DEBUG: Parameter "disable-bitmap-caching" omitted. Using default value of 0.
2024-12-06T15:03:04.703959216Z guacd[14114]: DEBUG: Parameter "disable-offscreen-caching" omitted. Using default value of 0.
2024-12-06T15:03:04.703976189Z guacd[14114]: DEBUG: Parameter "disable-glyph-caching" omitted. Using default value of 0.
2024-12-06T15:03:04.703984942Z guacd[14114]: DEBUG: Glyph caching is currently universally disabled, regardless of the value of the "disable-glyph-caching" parameter, as glyph caching support is not considered stable by FreeRDP as of the FreeRDP 2.0.0 release. See: https://issues.apache.org/jira/browse/GUACAMOLE-1191
2024-12-06T15:03:04.703992912Z guacd[14114]: DEBUG: Parameter "color-depth" omitted. Using default value of 16.
2024-12-06T15:03:04.704000129Z guacd[14114]: DEBUG: Parameter "enable-printing" omitted. Using default value of 0.
2024-12-06T15:03:04.704007309Z guacd[14114]: DEBUG: Parameter "printer-name" omitted. Using default value of "Guacamole Printer".
2024-12-06T15:03:04.704018796Z guacd[14114]: DEBUG: Parameter "enable-drive" omitted. Using default value of 0.
2024-12-06T15:03:04.704027636Z guacd[14114]: DEBUG: Parameter "drive-name" omitted. Using default value of "Guacamole Filesystem".
2024-12-06T15:03:04.704037463Z guacd[14114]: DEBUG: Parameter "drive-path" omitted. Using default value of "".
2024-12-06T15:03:04.704044590Z guacd[14114]: DEBUG: Parameter "create-drive-path" omitted. Using default value of 0.
2024-12-06T15:03:04.704074503Z guacd[14114]: DEBUG: Parameter "timezone" omitted. Using default value of "Europe/Bucharest".
2024-12-06T15:03:04.704082760Z guacd[14114]: DEBUG: Parameter "enable-sftp" omitted. Using default value of 0.
2024-12-06T15:03:04.704123764Z guacd[14114]: DEBUG: Parameter "sftp-hostname" omitted. Using default value of "s-jrciprjeos144p.cidsn.jrc.it".
2024-12-06T15:03:04.704149121Z guacd[14114]: DEBUG: Parameter "sftp-port" omitted. Using default value of "22".
2024-12-06T15:03:04.704199205Z guacd[14114]: DEBUG: Parameter "sftp-username" omitted. Using default value of "".
2024-12-06T15:03:04.704224352Z guacd[14114]: DEBUG: Parameter "sftp-password" omitted. Using default value of "".
2024-12-06T15:03:04.704231665Z guacd[14114]: DEBUG: Parameter "sftp-passphrase" omitted. Using default value of "".
2024-12-06T15:03:04.704293443Z guacd[14114]: DEBUG: Parameter "sftp-root-directory" omitted. Using default value of "/".
2024-12-06T15:03:04.704324016Z guacd[14114]: DEBUG: Parameter "sftp-server-alive-interval" omitted. Using default value of 0.
2024-12-06T15:03:04.704336816Z guacd[14114]: DEBUG: Parameter "sftp-disable-download" omitted. Using default value of 0.
2024-12-06T15:03:04.704348143Z guacd[14114]: DEBUG: Parameter "sftp-disable-upload" omitted. Using default value of 0.
2024-12-06T15:03:04.704360607Z guacd[14114]: DEBUG: Parameter "recording-name" omitted. Using default value of "recording".
2024-12-06T15:03:04.704421761Z guacd[14114]: DEBUG: Parameter "recording-exclude-output" omitted. Using default value of 0.
2024-12-06T15:03:04.704439167Z guacd[14114]: DEBUG: Parameter "recording-exclude-mouse" omitted. Using default value of 0.
2024-12-06T15:03:04.704534589Z guacd[14114]: DEBUG: Parameter "recording-exclude-touch" omitted. Using default value of 0.
2024-12-06T15:03:04.704572016Z guacd[14114]: DEBUG: Parameter "recording-include-keys" omitted. Using default value of 0.
2024-12-06T15:03:04.704586469Z guacd[14114]: DEBUG: Parameter "create-recording-path" omitted. Using default value of 0.
2024-12-06T15:03:04.704594846Z guacd[14114]: INFO: Resize method: none
2024-12-06T15:03:04.704602279Z guacd[14114]: DEBUG: Parameter "enable-touch" omitted. Using default value of 0.
2024-12-06T15:03:04.704618049Z guacd[14114]: DEBUG: Parameter "enable-audio-input" omitted. Using default value of 0.
2024-12-06T15:03:04.704626053Z guacd[14114]: DEBUG: Parameter "gateway-port" omitted. Using default value of 443.
2024-12-06T15:03:04.704632533Z guacd[14114]: DEBUG: Parameter "disable-copy" omitted. Using default value of 0.
2024-12-06T15:03:04.704677454Z guacd[14114]: DEBUG: Parameter "disable-paste" omitted. Using default value of 0.
2024-12-06T15:03:04.704688920Z guacd[14114]: INFO: No clipboard line-ending normalization specified. Defaulting to preserving the format of all line endings.
2024-12-06T15:03:04.704697854Z guacd[14114]: DEBUG: Parameter "wol-send-packet" omitted. Using default value of 0.
2024-12-06T15:03:04.704821772Z guacd[14114]: INFO: User "@f8a7f328-eb75-41e3-8b62-88b5fdb69de4" joined connection "$ff003e4a-7527-4e5f-9e61-bdf6b10a5536" (1 users now present)
2024-12-06T15:03:04.704853676Z guacd[14114]: DEBUG: Client is using protocol version "VERSION_1_5_0"
2024-12-06T15:03:04.709035759Z guacd[14114]: INFO: Loading keymap "base"
2024-12-06T15:03:04.709114240Z guacd[14114]: INFO: Loading keymap "en-us-qwerty"
2024-12-06T15:03:04.709934353Z guacd[14114]: DEBUG: Support for CLIPRDR (clipboard redirection) registered. Awaiting channel connection.
2024-12-06T15:03:04.709974067Z guacd[14114]: DEBUG: Local framebuffer format PIXEL_FORMAT_BGRX32
2024-12-06T15:03:04.709982987Z guacd[14114]: DEBUG: Remote framebuffer format PIXEL_FORMAT_RGB16
2024-12-06T15:03:05.829568731Z guacd[1]: DEBUG: Guacamole connection closed during handshake
2024-12-06T15:03:05.829625550Z guacd[1]: DEBUG: Error reading "select": End of stream reached while reading instruction
2024-12-06T15:03:06.862328987Z guacd[14114]: DEBUG: SSL_CTX_new failed
2024-12-06T15:03:06.862375254Z guacd[14114]: DEBUG: transport_connect_tls:freerdp_set_last_error_ex ERRCONNECT_CONNECT_CANCELLED [0x0002000B]
2024-12-06T15:03:06.874587928Z guacd[14114]: INFO: RDP server closed/refused connection: Connection failed (server unreachable?)
2024-12-06T15:03:06.953424771Z guacd[14114]: INFO: User "@f8a7f328-eb75-41e3-8b62-88b5fdb69de4" disconnected (0 users remain)
2024-12-06T15:03:06.953464758Z guacd[14114]: INFO: Last user of connection "$ff003e4a-7527-4e5f-9e61-bdf6b10a5536" disconnected
2024-12-06T15:03:06.953560242Z guacd[14114]: DEBUG: Requesting termination of client...
2024-12-06T15:03:06.954335475Z guacd[14114]: DEBUG: Client terminated successfully.
2024-12-06T15:03:06.958190642Z guacd[1]: INFO: Connection "$ff003e4a-7527-4e5f-9e61-bdf6b10a5536" removed.
o Log entries when the 1st connection got released and the 61st selenium process could connect (becoming then the 59th active connection):
2024-12-06T15:14:48.788592903Z guacd[3878]: ERROR: User is not responding.
2024-12-06T15:14:48.788735278Z guacd[3878]: INFO: User "@2c7e97ad-6054-4f8b-be0c-95a56f34ff15" disconnected (0 users remain)
2024-12-06T15:14:48.788901425Z guacd[3878]: INFO: Last user of connection "$6c40d2e8-57c4-48ae-9115-cbb63e87221a" disconnected
2024-12-06T15:14:48.789130750Z guacd[3878]: DEBUG: Requesting termination of client...
2024-12-06T15:14:48.965798638Z guacd[3878]: DEBUG: CLIPRDR (clipboard redirection) channel disconnected.
2024-12-06T15:14:48.978637197Z guacd[3878]: INFO: Internal RDP client disconnected
2024-12-06T15:14:48.979215164Z guacd[3878]: DEBUG: Client terminated successfully.
2024-12-06T15:14:48.981992660Z guacd[1]: INFO: Connection "$6c40d2e8-57c4-48ae-9115-cbb63e87221a" removed.
2024-12-06T15:14:48.982014235Z guacd[1]: DEBUG: All child processes for connection "$6c40d2e8-57c4-48ae-9115-cbb63e87221a" have been terminated.
2024-12-06T15:14:55.578678366Z guacd[1]: INFO: Creating new client for protocol "rdp"
2024-12-06T15:14:55.581795996Z guacd[1]: INFO: Connection ID is "$5565bee8-85e9-403b-a9a8-a2fcc80973c0"
2024-12-06T15:14:55.593694171Z guacd[20939]: DEBUG: Processing instruction: size
2024-12-06T15:14:55.593737238Z guacd[20939]: DEBUG: Processing instruction: audio
2024-12-06T15:14:55.593746798Z guacd[20939]: DEBUG: Processing instruction: video
2024-12-06T15:14:55.593757758Z guacd[20939]: DEBUG: Processing instruction: image
2024-12-06T15:14:55.593796032Z guacd[20939]: DEBUG: Processing instruction: timezone
2024-12-06T15:14:55.593856099Z guacd[20939]: DEBUG: Processing instruction: name
2024-12-06T15:14:55.593978614Z guacd[20939]: DEBUG: Parameter "console" omitted. Using default value of 0.
2024-12-06T15:14:55.594021701Z guacd[20939]: DEBUG: Parameter "console-audio" omitted. Using default value of 0.
2024-12-06T15:14:55.594030645Z guacd[20939]: DEBUG: Parameter "ignore-cert" omitted. Using default value of 0.
2024-12-06T15:14:55.594037575Z guacd[20939]: DEBUG: Parameter "disable-auth" omitted. Using default value of 0.
2024-12-06T15:14:55.594049918Z guacd[20939]: INFO: Security mode: TLS
2024-12-06T15:14:55.594061655Z guacd[20939]: DEBUG: User resolution is 1024x629 at 96 DPI
2024-12-06T15:14:55.594069009Z guacd[20939]: DEBUG: Parameter "dpi" omitted. Using default value of 96.
2024-12-06T15:14:55.594111496Z guacd[20939]: DEBUG: Using resolution of 1024x629 at 96 DPI
2024-12-06T15:14:55.594124679Z guacd[20939]: DEBUG: Parameter "force-lossless" omitted. Using default value of 0.
2024-12-06T15:14:55.594155193Z guacd[20939]: DEBUG: Parameter "read-only" omitted. Using default value of 0.
2024-12-06T15:14:55.594179860Z guacd[20939]: DEBUG: Parameter "client-name" omitted. Using default value of "Guacamole RDP".
2024-12-06T15:14:55.594224500Z guacd[20939]: DEBUG: Parameter "enable-wallpaper" omitted. Using default value of 0.
2024-12-06T15:14:55.594330428Z guacd[20939]: DEBUG: Parameter "enable-theming" omitted. Using default value of 0.
2024-12-06T15:14:55.594443633Z guacd[20939]: DEBUG: Parameter "enable-font-smoothing" omitted. Using default value of 0.
2024-12-06T15:14:55.594471426Z guacd[20939]: DEBUG: Parameter "enable-full-window-drag" omitted. Using default value of 0.
2024-12-06T15:14:55.594478760Z guacd[20939]: DEBUG: Parameter "enable-desktop-composition" omitted. Using default value of 0.
2024-12-06T15:14:55.594485163Z guacd[20939]: DEBUG: Parameter "enable-menu-animations" omitted. Using default value of 0.
2024-12-06T15:14:55.594491437Z guacd[20939]: DEBUG: Parameter "disable-bitmap-caching" omitted. Using default value of 0.
2024-12-06T15:14:55.594497673Z guacd[20939]: DEBUG: Parameter "disable-offscreen-caching" omitted. Using default value of 0.
2024-12-06T15:14:55.594504207Z guacd[20939]: DEBUG: Parameter "disable-glyph-caching" omitted. Using default value of 0.
2024-12-06T15:14:55.594517297Z guacd[20939]: DEBUG: Glyph caching is currently universally disabled, regardless of the value of the "disable-glyph-caching" parameter, as glyph caching support is not considered stable by FreeRDP as of the FreeRDP 2.0.0 release. See: https://issues.apache.org/jira/browse/GUACAMOLE-1191
2024-12-06T15:14:55.594527254Z guacd[20939]: DEBUG: Parameter "color-depth" omitted. Using default value of 16.
2024-12-06T15:14:55.594579311Z guacd[20939]: DEBUG: Parameter "enable-printing" omitted. Using default value of 0.
2024-12-06T15:14:55.594641412Z guacd[20939]: DEBUG: Parameter "printer-name" omitted. Using default value of "Guacamole Printer".
2024-12-06T15:14:55.594658322Z guacd[20939]: DEBUG: Parameter "enable-drive" omitted. Using default value of 0.
2024-12-06T15:14:55.594679715Z guacd[20939]: DEBUG: Parameter "drive-name" omitted. Using default value of "Guacamole Filesystem".
2024-12-06T15:14:55.594707283Z guacd[20939]: DEBUG: Parameter "drive-path" omitted. Using default value of "".
2024-12-06T15:14:55.594722989Z guacd[20939]: DEBUG: Parameter "create-drive-path" omitted. Using default value of 0.
2024-12-06T15:14:55.594732299Z guacd[20939]: DEBUG: Parameter "timezone" omitted. Using default value of "Europe/Bucharest".
2024-12-06T15:14:55.594739166Z guacd[20939]: DEBUG: Parameter "enable-sftp" omitted. Using default value of 0.
2024-12-06T15:14:55.594781820Z guacd[20939]: DEBUG: Parameter "sftp-hostname" omitted. Using default value of "s-jrciprjeos144p.cidsn.jrc.it".
2024-12-06T15:14:55.594844397Z guacd[20939]: DEBUG: Parameter "sftp-port" omitted. Using default value of "22".
2024-12-06T15:14:55.594911355Z guacd[20939]: DEBUG: Parameter "sftp-username" omitted. Using default value of "".
2024-12-06T15:14:55.594925691Z guacd[20939]: DEBUG: Parameter "sftp-password" omitted. Using default value of "".
2024-12-06T15:14:55.595152214Z guacd[20939]: DEBUG: Parameter "sftp-passphrase" omitted. Using default value of "".
2024-12-06T15:14:55.595269395Z guacd[20939]: DEBUG: Parameter "sftp-root-directory" omitted. Using default value of "/".
2024-12-06T15:14:55.595299073Z guacd[20939]: DEBUG: Parameter "sftp-server-alive-interval" omitted. Using default value of 0.
2024-12-06T15:14:55.595312166Z guacd[20939]: DEBUG: Parameter "sftp-disable-download" omitted. Using default value of 0.
2024-12-06T15:14:55.595322743Z guacd[20939]: DEBUG: Parameter "sftp-disable-upload" omitted. Using default value of 0.
2024-12-06T15:14:55.595334003Z guacd[20939]: DEBUG: Parameter "recording-name" omitted. Using default value of "recording".
2024-12-06T15:14:55.595347746Z guacd[20939]: DEBUG: Parameter "recording-exclude-output" omitted. Using default value of 0.
2024-12-06T15:14:55.595357583Z guacd[20939]: DEBUG: Parameter "recording-exclude-mouse" omitted. Using default value of 0.
2024-12-06T15:14:55.595371780Z guacd[20939]: DEBUG: Parameter "recording-exclude-touch" omitted. Using default value of 0.
2024-12-06T15:14:55.595383523Z guacd[20939]: DEBUG: Parameter "recording-include-keys" omitted. Using default value of 0.
2024-12-06T15:14:55.595398177Z guacd[20939]: DEBUG: Parameter "create-recording-path" omitted. Using default value of 0.
2024-12-06T15:14:55.595410687Z guacd[20939]: INFO: Resize method: none
2024-12-06T15:14:55.595422641Z guacd[20939]: DEBUG: Parameter "enable-touch" omitted. Using default value of 0.
2024-12-06T15:14:55.595438557Z guacd[20939]: DEBUG: Parameter "enable-audio-input" omitted. Using default value of 0.
2024-12-06T15:14:55.595451764Z guacd[20939]: DEBUG: Parameter "gateway-port" omitted. Using default value of 443.
2024-12-06T15:14:55.595465344Z guacd[20939]: DEBUG: Parameter "disable-copy" omitted. Using default value of 0.
2024-12-06T15:14:55.595485545Z guacd[20939]: DEBUG: Parameter "disable-paste" omitted. Using default value of 0.
2024-12-06T15:14:55.595502142Z guacd[20939]: INFO: No clipboard line-ending normalization specified. Defaulting to preserving the format of all line endings.
2024-12-06T15:14:55.595516618Z guacd[20939]: DEBUG: Parameter "wol-send-packet" omitted. Using default value of 0.
2024-12-06T15:14:55.595583479Z guacd[20939]: INFO: User "@3e38f412-f074-4969-b622-bf0812316c6e" joined connection "$5565bee8-85e9-403b-a9a8-a2fcc80973c0" (1 users now present)
2024-12-06T15:14:55.595605759Z guacd[20939]: DEBUG: Client is using protocol version "VERSION_1_5_0"
2024-12-06T15:14:55.600200128Z guacd[20939]: INFO: Loading keymap "base"
2024-12-06T15:14:55.600241289Z guacd[20939]: INFO: Loading keymap "en-us-qwerty"
2024-12-06T15:14:55.601047935Z guacd[20939]: DEBUG: Support for CLIPRDR (clipboard redirection) registered. Awaiting channel connection.
2024-12-06T15:14:55.601103492Z guacd[20939]: DEBUG: Local framebuffer format PIXEL_FORMAT_BGRX32
2024-12-06T15:14:55.601129852Z guacd[20939]: DEBUG: Remote framebuffer format PIXEL_FORMAT_RGB16
2024-12-06T15:14:59.984055789Z guacd[20939]: DEBUG: CLIPRDR (clipboard redirection) channel connected.
2024-12-06T15:15:00.328241921Z guacd[20939]: DEBUG: Clipboard data received. Reporting availability of clipboard data to RDP server.
- At 15:32:48 (GMT), while RDP connections were being closed due to the selenium processes being stopped, a core dump has been generated.
o In /var/log/messages (GMT+1)
Dec 6 16:32:48 s-jrciprjeop151p kernel: traps: guacd[68113] general protection fault ip:7f8b34a97a7c sp:7f8ae349d100 error:0 in ld-musl-x86_64.so.1[7f8b34a86000+4c000]
o In guacd docker logs (GMT)
2024-12-06T15:32:48.624974718Z guacd[12924]: ERROR: User is not responding.
2024-12-06T15:32:48.625078086Z guacd[12924]: INFO: User "@8f7db077-f633-466d-a459-e00a18357e7c" disconnected (0 users remain)
2024-12-06T15:32:48.625151523Z guacd[12924]: INFO: Last user of connection "$26bd776b-6d33-4fea-a5a1-4bc6ff3d11cf" disconnected
2024-12-06T15:32:48.625280645Z guacd[12924]: DEBUG: Requesting termination of client...
2024-12-06T15:32:48.750757953Z guacd[12924]: DEBUG: CLIPRDR (clipboard redirection) channel disconnected.
2024-12-06T15:32:48.765691056Z guacd[12924]: INFO: Internal RDP client disconnected
2024-12-06T15:32:48.766157544Z guacd[12924]: DEBUG: Client terminated successfully.
2024-12-06T15:32:48.878712775Z guacd[1]: INFO: Connection "$26bd776b-6d33-4fea-a5a1-4bc6ff3d11cf" removed.
2024-12-06T15:32:48.878757332Z guacd[1]: DEBUG: All child processes for connection "$26bd776b-6d33-4fea-a5a1-4bc6ff3d11cf" have been terminated.
2024-12-06T15:33:06.362058899Z guacd[1]: DEBUG: Guacamole connection closed during handshake
2024-12-06T15:33:06.362146170Z guacd[1]: DEBUG: Error reading "select": End of stream reached while reading instruction
2024-12-06T15:33:08.662943267Z guacd[13264]: ERROR: User is not responding.
2024-12-06T15:33:08.663123142Z guacd[13264]: INFO: User "@5ee9cdfa-0d04-4c2f-acfe-55a114e2f20a" disconnected (0 users remain)
2024-12-06T15:33:08.663189616Z guacd[13264]: INFO: Last user of connection "$4bc9a390-5a8a-4f49-baef-d1e71c5bc666" disconnected
2024-12-06T15:33:08.663358655Z guacd[13264]: DEBUG: Requesting termination of client...
2024-12-06T15:33:08.838800641Z guacd[13264]: DEBUG: CLIPRDR (clipboard redirection) channel disconnected.
2024-12-06T15:33:08.849452825Z guacd[13264]: INFO: Internal RDP client disconnected
2024-12-06T15:33:08.849665197Z guacd[13264]: DEBUG: Client terminated successfully.
2024-12-06T15:33:08.852907658Z guacd[1]: INFO: Connection "$4bc9a390-5a8a-4f49-baef-d1e71c5bc666" removed.
2024-12-06T15:33:08.852963162Z guacd[1]: DEBUG: All child processes for connection "$4bc9a390-5a8a-4f49-baef-d1e71c5bc666" have been terminated.
o A core dump has been generated: core-guacd.12924.8a6bb6a83b86.1733499168 attached to that message (1.3G uncompressed)
For completeness, I attach also the guacd logs of the whole testing session.
I would be grateful if you, or some other developer, could have a look at those elements. I am of course available to provide you with any other information you might need. In case it would be helpful, I have other core dumps from previous tests.
Kind regards,
Paul
From: HASENOHR Paul <Pa...@ec.europa.eu.INVALID>
Sent: Thursday, November 28, 2024 5:25 PM
To: user@guacamole.apache.org
Subject: RE: Maximum number of simultaneous RDP connections
Dear Nick,
Thank you for your suggestions.
Looking at the server system logs, I found many identical segfault entries:
Nov 28 10:44:55 snc-guacamole kernel: [9829816.814388] guacd[2871114]: segfault at 7fdd045f4bf8 ip 00007fd561fe2433 sp 00007fd5045f12e8 error 4 in ld-musl-x86_64.so.1[7fd561f9f000+4c000]
Nov 28 10:44:55 snc-guacamole kernel: [9829816.826102] Code: e3 18 ff ff 8b 44 24 08 48 81 c4 90 00 00 00 5b 5d 41 5c c3 64 48 8b 04 25 00 00 00 00 48 8b 90 80 00 00 00 89 ff 48 8d 14 fa <48> 39 32 74 07 48 89 32 80 48 42 01 31 c0 c3 48 85 f6 74 0a b8 16
Nov 28 10:44:56 snc-guacamole kernel: [9829817.741713] guacd[2871125]: segfault at 7fdd035fabf8 ip 00007fd561fe2433 sp 00007fd5035f72e8 error 4 in ld-musl-x86_64.so.1[7fd561f9f000+4c000]
Nov 28 10:44:56 snc-guacamole kernel: [9829817.748886] Code: e3 18 ff ff 8b 44 24 08 48 81 c4 90 00 00 00 5b 5d 41 5c c3 64 48 8b 04 25 00 00 00 00 48 8b 90 80 00 00 00 89 ff 48 8d 14 fa <48> 39 32 74 07 48 89 32 80 48 42 01 31 c0 c3 48 85 f6 74 0a b8 16
Is it something you are aware of?
Considering that this happens at around 60 connections, could it be in any way related to https://www.mail-archive.com/user@guacamole.apache.org/msg12630.html<https://urldefense.com/v3/__https:/www.mail-archive.com/user@guacamole.apache.org/msg12630.html__;!!DOxrgLBm!BJT57FqcHgW6YPm52t1beSy9wP9vpgL1kcKD094F2a7OPybOwFktH3i3pvAzPDtm9naffsubtm4RPd_roIBefyd4jLJhEiJPNdGVM2jw-A$> ?
I cannot reproduce the error currently as this happens only when exceed our usual number of users that is far below 60. I will try to deploy next week an instance of guacamole with guacd in debug mode and to initiate more than 60 connections to it.
Best regards,
Paul
From: Nick Couchman <vn...@apache.org>>
Sent: Thursday, November 28, 2024 2:50 PM
To: user@guacamole.apache.org<ma...@guacamole.apache.org>
Subject: Re: Maximum number of simultaneous RDP connections
On Thu, Nov 28, 2024 at 8:27 AM HASENOHR Paul <Pa...@ec.europa.eu.invalid>> wrote:
Hello,
We have been using Guacamole for the past years with great satisfaction for our users. Guacamole is running on Docker (standard images to which a custom CA has been added) on a Debian 12 VM.
We noticed today during a training that led to an increase of the number of concurrent connections that we could not exceed 55-58 RDP connections. Any other attempt to connect to any RDP server (several machines running Ubuntu 22.04 with xorgxrdp, some of them without any load) returned immediately a black screen with the message “You have been disconnected”.
In the guacd logs, any failed connection was logged as follows:
guacd[1]: INFO: Creating new client for protocol "rdp"
guacd[1]: INFO: Connection ID is "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa"
guacd[1916025]: INFO: Security mode: TLS
guacd[1916025]: INFO: Resize method: display-update
guacd[1916025]: INFO: No clipboard line-ending normalization specified. Defaulting to preserving the format of all line endings.
guacd[1916025]: INFO: User "@b2935015-b864-4928-a674-2c26ed1dd45d" joined connection "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa" (1 users now present)
guacd[1916025]: INFO: Recording of session will be saved to "/recording//20241128_100346_XXXXXXXXXX-terminal-004-M_N".
guacd[1916025]: INFO: Loading keymap "base"
guacd[1916025]: INFO: Loading keymap "en-us-qwerty"
guacd[1]: INFO: Connection "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa" removed.
A handful of things that I can think of to check:
* It's probably worth putting guacd into debug mode ("-L debug" on the command line, or add the log configuration to guacd.conf) and see if that yields any more useful information on what happens when the connections are failing.
* Since you're running in Docker, check the various Docker limits and see if you're running up against something related to container limits - amount of memory, number of open files, process, etc. I believe Docker has facilities for limiting this similar to the normal "limits" and/or "ulimit" command on Linux, but probably slightly different configurations in slightly different places. System logs and/or Docker logs might also indicate bumping up against this.
* Also, check your system logs, particularly any facility that might be present for core dumps and see if anything is being generated that indicates a segfault or other limit.
-Nick
RE: Maximum number of simultaneous RDP connections
Posted by HASENOHR Paul <Pa...@ec.europa.eu.INVALID>.
Dear Nick,
Thank you for your suggestions.
Looking at the server system logs, I found many identical segfault entries:
Nov 28 10:44:55 snc-guacamole kernel: [9829816.814388] guacd[2871114]: segfault at 7fdd045f4bf8 ip 00007fd561fe2433 sp 00007fd5045f12e8 error 4 in ld-musl-x86_64.so.1[7fd561f9f000+4c000]
Nov 28 10:44:55 snc-guacamole kernel: [9829816.826102] Code: e3 18 ff ff 8b 44 24 08 48 81 c4 90 00 00 00 5b 5d 41 5c c3 64 48 8b 04 25 00 00 00 00 48 8b 90 80 00 00 00 89 ff 48 8d 14 fa <48> 39 32 74 07 48 89 32 80 48 42 01 31 c0 c3 48 85 f6 74 0a b8 16
Nov 28 10:44:56 snc-guacamole kernel: [9829817.741713] guacd[2871125]: segfault at 7fdd035fabf8 ip 00007fd561fe2433 sp 00007fd5035f72e8 error 4 in ld-musl-x86_64.so.1[7fd561f9f000+4c000]
Nov 28 10:44:56 snc-guacamole kernel: [9829817.748886] Code: e3 18 ff ff 8b 44 24 08 48 81 c4 90 00 00 00 5b 5d 41 5c c3 64 48 8b 04 25 00 00 00 00 48 8b 90 80 00 00 00 89 ff 48 8d 14 fa <48> 39 32 74 07 48 89 32 80 48 42 01 31 c0 c3 48 85 f6 74 0a b8 16
Is it something you are aware of?
Considering that this happens at around 60 connections, could it be in any way related to https://www.mail-archive.com/user@guacamole.apache.org/msg12630.html ?
I cannot reproduce the error currently as this happens only when exceed our usual number of users that is far below 60. I will try to deploy next week an instance of guacamole with guacd in debug mode and to initiate more than 60 connections to it.
Best regards,
Paul
From: Nick Couchman <vn...@apache.org>
Sent: Thursday, November 28, 2024 2:50 PM
To: user@guacamole.apache.org
Subject: Re: Maximum number of simultaneous RDP connections
On Thu, Nov 28, 2024 at 8:27 AM HASENOHR Paul <Pa...@ec.europa.eu.invalid>> wrote:
Hello,
We have been using Guacamole for the past years with great satisfaction for our users. Guacamole is running on Docker (standard images to which a custom CA has been added) on a Debian 12 VM.
We noticed today during a training that led to an increase of the number of concurrent connections that we could not exceed 55-58 RDP connections. Any other attempt to connect to any RDP server (several machines running Ubuntu 22.04 with xorgxrdp, some of them without any load) returned immediately a black screen with the message “You have been disconnected”.
In the guacd logs, any failed connection was logged as follows:
guacd[1]: INFO: Creating new client for protocol "rdp"
guacd[1]: INFO: Connection ID is "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa"
guacd[1916025]: INFO: Security mode: TLS
guacd[1916025]: INFO: Resize method: display-update
guacd[1916025]: INFO: No clipboard line-ending normalization specified. Defaulting to preserving the format of all line endings.
guacd[1916025]: INFO: User "@b2935015-b864-4928-a674-2c26ed1dd45d" joined connection "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa" (1 users now present)
guacd[1916025]: INFO: Recording of session will be saved to "/recording//20241128_100346_XXXXXXXXXX-terminal-004-M_N".
guacd[1916025]: INFO: Loading keymap "base"
guacd[1916025]: INFO: Loading keymap "en-us-qwerty"
guacd[1]: INFO: Connection "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa" removed.
A handful of things that I can think of to check:
* It's probably worth putting guacd into debug mode ("-L debug" on the command line, or add the log configuration to guacd.conf) and see if that yields any more useful information on what happens when the connections are failing.
* Since you're running in Docker, check the various Docker limits and see if you're running up against something related to container limits - amount of memory, number of open files, process, etc. I believe Docker has facilities for limiting this similar to the normal "limits" and/or "ulimit" command on Linux, but probably slightly different configurations in slightly different places. System logs and/or Docker logs might also indicate bumping up against this.
* Also, check your system logs, particularly any facility that might be present for core dumps and see if anything is being generated that indicates a segfault or other limit.
-Nick
Re: Maximum number of simultaneous RDP connections
Posted by Nick Couchman <vn...@apache.org>.
On Thu, Nov 28, 2024 at 8:27 AM HASENOHR Paul
<Pa...@ec.europa.eu.invalid> wrote:
> Hello,
>
>
>
> We have been using Guacamole for the past years with great satisfaction
> for our users. Guacamole is running on Docker (standard images to which a
> custom CA has been added) on a Debian 12 VM.
>
> We noticed today during a training that led to an increase of the number
> of concurrent connections that we could not exceed 55-58 RDP connections.
> Any other attempt to connect to any RDP server (several machines running
> Ubuntu 22.04 with xorgxrdp, some of them without any load) returned
> immediately a black screen with the message “You have been disconnected”.
>
>
>
> In the guacd logs, any failed connection was logged as follows:
>
> guacd[1]: INFO: Creating new client for protocol "rdp"
>
> guacd[1]: INFO: Connection ID is "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa"
>
> guacd[1916025]: INFO: Security mode: TLS
>
> guacd[1916025]: INFO: Resize method: display-update
>
> guacd[1916025]: INFO: No clipboard line-ending normalization specified.
> Defaulting to preserving the format of all line endings.
>
> guacd[1916025]: INFO: User "@b2935015-b864-4928-a674-2c26ed1dd45d"
> joined connection "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa" (1 users now
> present)
>
> guacd[1916025]: INFO: Recording of session will be saved to
> "/recording//20241128_100346_XXXXXXXXXX-terminal-004-M_N".
>
> guacd[1916025]: INFO: Loading keymap "base"
>
> guacd[1916025]: INFO: Loading keymap "en-us-qwerty"
>
> guacd[1]: INFO: Connection "$ed73e4c3-ce34-493c-81aa-2fc3810a27fa" removed.
>
>
>
A handful of things that I can think of to check:
* It's probably worth putting guacd into debug mode ("-L debug" on the
command line, or add the log configuration to guacd.conf) and see if that
yields any more useful information on what happens when the connections are
failing.
* Since you're running in Docker, check the various Docker limits and see
if you're running up against something related to container limits - amount
of memory, number of open files, process, etc. I believe Docker has
facilities for limiting this similar to the normal "limits" and/or "ulimit"
command on Linux, but probably slightly different configurations in
slightly different places. System logs and/or Docker logs might also
indicate bumping up against this.
* Also, check your system logs, particularly any facility that might be
present for core dumps and see if anything is being generated that
indicates a segfault or other limit.
-Nick
>