Chrome не отправляет сертификат клиента, а сертификат действителен - PullRequest
0 голосов
/ 27 сентября 2019

Я наблюдаю странную проблему, связанную с взаимной аутентификацией.Я установил взаимную аутентификацию на нагрузочном балансире BigIP, чтобы принять 2 разных CA.Это означает, что мы принимаем только те сертификаты, которые были выданы этими двумя центрами сертификации.

Я попытался предоставить эти сертификаты LB с использованием OpenSSL, и это нормально работает, то есть я имею в виду 2 сертификата, с использованием IE он работает нормальноКроме того, FireFox работает нормально.но когда я использую chrome, браузер запрашивает сертификат, но он не отправляет сертификат в LB, как это наблюдалось в wiresharks (рисунок ниже)

У меня есть доступ к обоим сертификатам, поэтому я вытащил сертификатыи ключ и используется

openssl s_client -connect Host:port -cert "cert.pem" -key "key.pem"

Он работает нормально, и я вижу, что соединение в порядке.

Используя те же сертификаты в IE, он также работает.Почтальон тоже работает.FireFox работает также.

Chrome, однако он показывает длину сертификата как 0

Chrome Asking for certificate

Chrome not sending certificate

И, как вы можете видеть, тот же сертификат используется OpenSSL и он отправляет.

Enter image description here

Есть идеи, в чем может быть проблема?

Обновление: я запустил Chrome с отладкой и увидел это, кажется, что Chrome не может проанализировать мой ключ или сертификат.

[14836: 18604: 0927 / 172254.921: ОШИБКА: ssl_platform_key_util.cc (70)] Не удалось разобрать открытый ключ.[17536: 16164: 0927 / 172255.100: ОШИБКА: ssl_client_socket_impl.cc (941)] рукопожатие не удалось;возвращается -1, код ошибки SSL 1, net_error -117

...