Проблема моно-сертификата с HTTPS HttpWebRequest - PullRequest
0 голосов
/ 16 марта 2012

У меня проблемы с TLS при выполнении вещей, скомпилированных с VS11 (профили 2.0 / 4.0) с использованием mono 2.10.8 в Arch Linux:

«Ошибка при получении потока ответов (запись: сбой аутентификации или дешифрования.): SendFailure»

Иногда даже:

«Ошибка при получении потока ответов (запись: ошибка BeginWrite): SendFailure» (очень редко)

Любопытно, что она работает на виртуальной машине Arch Linux, но не на том сервере, на котором она должна работать (на котором также работает Arch Linux). Я запустил один и тот же импорт certmgr на обоих (с / без --machine), также попробовал mozroot, и я использую те же двоичные файлы / ту же конфигурацию. Я даже сейчас использую хакер ServicePointManager.ServerCertificateValidationCallback (доступен по адресу http://www.mono -project.com / UsingTrustedRootsRespectfully # Approach_.23-1: _Actively_ignore_security_concerns_.3D ) сейчас, и он действительно получает обратный вызов валидатора и всегда возвращает true исключение не исчезнет.

Я озадачен тем, как одни и те же двоичные файлы работают в виртуальной машине в одном и том же дистрибутиве с тем же versoin mono. Я уже пытался установить -e открыть этот материал, чтобы посмотреть, загружает ли он разные файлы, но ничто не привлекло мое внимание. Я даже не понимаю, как эта ошибка может возникнуть после того, как вы связались с ServicePointManager. Я думал, что это должно было полностью игнорировать проблемы с сертификатами после этого.

Я также попытался использовать strace -e open certmgr, чтобы посмотреть, где хранится этот материал. По-видимому, он находится в ~ / .config / .mono / certs / AddressBook /, и содержимое папки идентично на виртуальной машине и на сервере, так что, похоже, проблема тоже не возникает.

Есть идеи, как я могу определить причину этой проблемы?

Edit:

После удаления глобального хранилища сертификатов и локального хранилища и его запуска с нуля, оно, похоже, работает на ВМ сразу после импорта только необходимых сертификатов. Делать то же самое на сервере иногда шокирующе работает, но большую часть времени не получается.

т.е. ошибка происходит случайно. Я начинаю подозревать, что это может быть не так просто, как я думал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...