Windows player v2-R200 can't connect to SNI-hosted CMS

Hi!

I’m experiencing this issue, where the Xibo player for Windows can’t connect to a host using HTTPS and SNI (it’s a multi-application server). The Android player connects successfully.

Reaching and using the CMS works from Windows. The error the player shows is:

“The underlying connection was closed: An unexpected error occurred on a send.”

with no more information.

The server is hosted on AWS using an AWS-issued HTTPS certificate. After creating a new server ­—using Terraform, then provisioning with Ansible, so it’s the same configuration on both servers— and moving the CMS to this new, single application machine, the player connects without any issue. In both cases there is an LB which contains the AWS ACM certificate for HTTPS termination, a quite common setup.

So Android player connects, Windows does not connect to the multi-host server.

Server details:
NGINX
Xibo CMS: 2.0.5

Player details:
Windows 10
xibo-client-v2-R200-win32-x86.msi

GitHub issue:

Thanks for your post

The Windows Player definitely connects to an SNI-enabled host, so that isn’t the issue.

I think it’s far more likely to be AWS denying TLS 1.0 connections. Windows by default doesn’t offer TLS 1.2 even though it’s quite capable of doing it.

Try enabling that, and I think you’ll find that will solve it:

Thank you. TLS 1.0 is no longer recommended to use. I think compatibility with the latest TLS version requires an up to date .NET framework.

It looks like .NET 4.6+ supports TLS 1.2 by default. On .NET 4.5 you can set it on the SecurityProtocol:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;

For older versions of .NET there are some options:

All you need to do to enable TLS 1.2 connections is apply the registry key I linked in my original reply.