Дайте совет куда рыть в реализации https на сервере?

Здравствуйте! В нашей компании разработан epoll-сервер(edge-triggered) имеется исходники, попытался к нему прикрутить tls-шифрование с помощью gnutls, вроде работает(с сертификатом lets`encrypt)! Тестирую на браузерах, с нескольких клиентов(3 шт.) в режиме keepalive, то есть сервер работает псевдо-параллельно, одному клиенту отдаст кусочек данных потом другому кусочек и т.д. и вроде все клиенты довольны! Дак вот, решил побаловаться с мобильным браузером и тут начались непонятки, в первую очередь firefox не смог пройти процедуру handshake следом мобильный браузер, сервер "убиват" соединения в случае критических ошибок от gnutls_handshake(), в некоторых случаях брайзеры повторяют множество попыток, пока не добьется рукопожатия google например, другие с первого-второго раунда достигают цели а третьи, firefox тупо конектятся, с первого же раза не получается и все больше сервер от него не чего не получает, хотя колесико в веб-интерфейсе браузера по 2-3 минуты крутиться после этого! В чем может быть проблема? Может у кого то есть опыт в работе с gnutls, может есть какие то тонкости по привязке gnutls к не блокируемому сокету. Да, и кстати сертификат без файла цепочки отозванных сертификатов поэтому браузеры его воспринимаю как "непроверенный", сертификат качал certbot`ом, говорят что вроде chain.pem это как раз crl-файл, но сервер ругается при указании его в функции-привязке к gnutls, о ocsp вообще молчу(:( В общем, хочется услышать по более осознанных мыслей опытных людей. Как отточить функцию рукопожатия, где докачать crl-файл и возможна ли ocsp-проверка(так понимаю нужна ссылка на какой то ресурс в нете)?
  • Вопрос задан
  • 66 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы