Сервер не работает.Попытка с openssl s_client
показывает, что квитирование TLS выполнено успешно и сертификат в порядке, но что он разрывается позже в процессе связи:
$ openssl s_client -connect www.sayehrooshan-co.com:443 -servername www.sayehrooshan-co.com -crlf
CONNECTED(00000003)
...
SSL-Session:
Protocol : TLSv1
Cipher : ECDHE-RSA-AES256-SHA
...
Verify return code: 0 (ok)
---
GET / HTTP/1.1
Host: www.sayehrooshan-co.com
140040623380160:error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number:s3_pkt.c:365:
Выполняя захват пакета во время эксперимента, можно увидеть, что серверотправляет обычный текст по соединению TLS:
> various TLS encrypted stuff from client (likely HTTP request) ....
< followed by sudden plain text from the server:
Cannot find table 0.
at System.Data.DataTableCollection.get_Item(Int32 index)
at MyWebServerNamespace.MyWebServer.SetTableRowValue(DataSet& ds, String type, String name, String value) in D:\iteration source - table 13 removed\MyWebServer\MyWebServer.cs:line 4024
at MyWebServerNamespace.MyWebServer.LoadCmsValues(Content cms, Ssl sslClass, DataSet& Ds, DataTable& fileDt, Socket& mySocket, Byte[]& contentBytes, Boolean& showCmsError) in D:\iteration source - table 13 removed\MyWebServer\MyWebServer.cs:line 1761
at MyWebServerNamespace.MyWebServer.HandleTcpRequest(Object state) in D:\iteration source - table 13 removed\MyWebServer\MyWebServer.cs:line 1027
LoadCmsValues enter
Клиент попытается интерпретировать это простое текстовое сообщение как запись TLS.Это означает, что он будет анализировать начальные байты и извлекать версию протокола TLS и длину полезной нагрузки.Учитывая, что это не TLS-запись, все эти значения будут мусором.В зависимости от фактической реализации стека TLS в клиенте это приведет к сообщениям об ошибках, таким как "неправильный номер версии" (заявленная версия протокола TLS не поддерживается) или "SSL_ERROR_RX_RECORD_TOO_LONG" (указанная длина полезной нагрузки не является фактической длиной полезной нагрузки) или более общим "ERR_SSL_PROTOCOL_ERROR" или подобным.