You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have checked open issues and ensured this is not a duplicate
The Problem
Termix-SSH/Termix#1311 correctly normalizes Apple's private RFB 003.889 banner to RFB 003.008, but macOS then advertises security types 30,33,36,2,35. The compatibility proxy forwards that list unchanged, so guacd/libvncclient still selects Apple Remote Desktop authentication (30) before classic VNC password authentication (2). With a dedicated VNC viewer password and no username, the VNC child exits and the UI remains on “Connecting to VNC session...”.
This is the unresolved security-negotiation portion already documented in #1015. The new regression detail is that the merged banner proxy in Termix-SSH/Termix#1311 provides a place where Termix can safely constrain the advertised list, but currently does not do so.
A verified follow-up fix is available in Termix-SSH/Termix#1313. It filters the Apple security list to classic VNC authentication (type 2) only when type 2 is actually offered, while preserving standard RFB servers and Apple servers without type 2.
Configure a macOS Screen Sharing target with “VNC viewers may control screen with password” enabled.
Configure the Termix VNC connection with no username and the dedicated VNC password.
Connect through the web client.
Observe that the compatibility proxy is established but guacd selects/fails on Apple security type 30, or the UI remains stuck connecting.
Expected Behavior
When macOS offers classic VNC password authentication (type 2) for a username-less connection, the compatibility proxy should advertise only type 2 to guacd and allow the session to complete.
Actual Behavior
The banner is normalized, but the original list 30,33,36,2,35 is forwarded. libvncclient chooses type 30 and the connection does not complete.
Three proxy regression tests, including fragmented Apple negotiation and standard-server pass-through.
ESLint and repository-wide TypeScript type checking.
A production Docker build.
A real end-to-end path: Termix web client → guacd 1.6.0 → compatibility proxy → macOS Screen Sharing. Authentication completed and the actual macOS lock screen rendered in the browser.
Title
PR #1311 still selects Apple VNC auth after banner normalization
Platform
Website - Chrome
Server Installation Method
Docker
Version
2.7.1 with merged Termix-SSH/Termix#1311 (
dev-2.8.0)CLI Installation Method
N/A
CLI Version
N/A
Troubleshooting
The Problem
Termix-SSH/Termix#1311 correctly normalizes Apple's private
RFB 003.889banner toRFB 003.008, but macOS then advertises security types30,33,36,2,35. The compatibility proxy forwards that list unchanged, so guacd/libvncclient still selects Apple Remote Desktop authentication (30) before classic VNC password authentication (2). With a dedicated VNC viewer password and no username, the VNC child exits and the UI remains on “Connecting to VNC session...”.This is the unresolved security-negotiation portion already documented in #1015. The new regression detail is that the merged banner proxy in Termix-SSH/Termix#1311 provides a place where Termix can safely constrain the advertised list, but currently does not do so.
A verified follow-up fix is available in Termix-SSH/Termix#1313. It filters the Apple security list to classic VNC authentication (
type 2) only when type2is actually offered, while preserving standard RFB servers and Apple servers without type2.How to Reproduce
dev-2.8.0code containing fix: support macOS VNC connections Termix#1311 and guacd 1.6.0.30, or the UI remains stuck connecting.Expected Behavior
When macOS offers classic VNC password authentication (
type 2) for a username-less connection, the compatibility proxy should advertise only type2to guacd and allow the session to complete.Actual Behavior
The banner is normalized, but the original list
30,33,36,2,35is forwarded. libvncclient chooses type30and the connection does not complete.Verification of Proposed Fix
Termix-SSH/Termix#1313 was tested with:
Additional Context