Вопрос «Закрытый ключ отсутствует или недействителен при импорте сертификата» в Google Chrome


Я хочу протестировать мое веб-приложение на https localhost. К сожалению, невозможно удалить предупреждение с хром. Во-первых, я сгенерировал такой сертификат:

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/localhost-selfsigned.key -out /etc/ssl/certs/localhost-selfsigned.crt

Затем я хотел добавить его в Chrome, настройки> advanced> manage Certificates -> import. Я пытаюсь импортировать файл .crt, сгенерированный ранее, и все, что я получаю, это:

Ошибка импорта сертификата. Закрытый ключ для этого сертификата клиента отсутствует или недействителен.

Я искал его, но ничего не нашел.

Я также попытался включить флаг allow-insecure-localhost и открыть хром с --ignore-certificate-errors но он все еще показывает предупреждение и сломанные https

Есть ли другие способы или я делаю что-то неправильно с сертификатом?


12
2018-05-26 21:18


происхождения


Вы также импортировали /etc/ssl/private/localhost-selfsigned.key файл? Это закрытый ключ. - Zoredache
Браузеру нужен открытый ключ, а не закрытый ключ. - Arjan
Обычно вы создаете самозаверяющий сервер сертификат и установить его в серверное программное обеспечение HTTP, от которого вы отсылаете свое веб-приложение. Клиентские (пользовательские) сертификаты, установленные в веб-браузерах Можно использоваться для аутентификации пользователей при входе в веб-приложения, но это довольно редко. Большинство сайтов / приложений используют аутентификацию имени пользователя и пароля, а не сертификаты пользователя и клиента. - Spiff
Вы можете использовать этот сертификат для обслуживания контента через https и посмотреть, как он выглядит при экспорте из браузера? должен быть одного и того же контента. - cghislai
Кроме того, возможно, вы импортируете с неправильной вкладки. попробуйте переключиться на вкладку сервера, прежде чем нажать кнопку импорта - cghislai


ответы:


Я думаю, что вы, возможно, пытаетесь сделать, это добавить его в неправильное хранилище сертификатов. Если вы пытаетесь добавить его под «Ваши сертификаты», у вас будет плохое время. Эта вкладка предназначена для добавления сертификатов удостоверений; что ваш браузер предлагает серверу, чтобы установить личность браузера.

Что я думаю, что вы хотите сделать, основываясь на вашем описании, вы хотите, чтобы ваш браузер доверял самоподписанному сертификату, который будет на вашем сервере. Если это так, вам нужно добавить его на вкладку «Власти».


8
2017-12-13 14:22



Не работал для меня - Alexandre Bourlier
это работает с Chrome v64. Вы импортируете .crt на вкладке «Власти», как отметил @Erik. Примечание. FireFox не дает вам этой проблемы - lasec0203
Вкладка «Власть» предназначена для сертификатов CA. Сертификаты не-CA должны находиться на вкладке «Серверы». Хотя вы не может, например, вручную добавьте сертификат не CA в Chromium 65.0.3325.162. - x-yuri