C# .NET 2.0/3.5应用程序无法连接到Ubuntu 12.04上强制连接到TLS 1.1的web服务

C# .NET 2.0/3.5应用程序无法连接到Ubuntu 12.04上强制连接到TLS 1.1的web服务,c#,https,mono,openssl,ubuntu-12.04,C#,Https,Mono,Openssl,Ubuntu 12.04,我有一个用C#2.0编写和编译的客户端应用程序,成功地引用并调用了本地开发服务器上的web服务,使用了(精确的穿山甲),但从未进行过更新。调用像这样的URL https://192.168.1.22/service.asmx 然后我用相同的配置将此web服务上传到上的生产服务器,但更新了Ubuntu 12.04。在客户端应用程序中,仅将URL更改为https://myserver.com/service.asmx 但是我的客户端应用程序无法连接。调试消息显示为: 从传输流接收到意外的EOF或0

我有一个用C#2.0编写和编译的客户端应用程序,成功地引用并调用了本地开发服务器上的web服务,使用了(精确的穿山甲),但从未进行过更新。调用像这样的URL

https://192.168.1.22/service.asmx
然后我用相同的配置将此web服务上传到上的生产服务器,但更新了Ubuntu 12.04。在客户端应用程序中,仅将URL更改为
https://myserver.com/service.asmx

但是我的客户端应用程序无法连接。调试消息显示为:

从传输流接收到意外的EOF或0字节

我可以在web浏览器上打开web服务描述页面,这意味着web服务工作正常

我花了一个小时试图解决这个问题,但没有运气。最后我发现了两台服务器之间的差异

在浏览器中,本地服务器的SSL连接使用TLS 1.0,而EC2服务器的SSL连接使用TLS 1.1。我在谷歌上搜索发现.NETFramework2.0只支持TLS1.0和其他版本

我找不到如何在Apache2中禁用TLS1.1


我不知道这是否是Ubuntu12.04或Mono或.NET上的错误。我仍在尝试找到解决方案。

对于临时解决方案,我使用以下代码将客户端设置为使用SSL3:
System.Net.ServicePointManager.SecurityProtocol=System.Net.SecurityProtocolType.SSL3