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

10291
Maciej Krawczyk

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

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

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

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

Я гуглил это, но я не нашел ничего полезного.

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

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

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

1 ответ на вопрос

9
Erik

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

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

У меня не сработало Alexandre Bourlier 6 лет назад 0
это работает с Chrome v64. Вы импортируете .crt на вкладке «Authorities», как указал @Erik. Примечание: FireFox не доставляет вам хлопот lasec0203 6 лет назад 3
Вкладка «Полномочия» предназначена для сертификатов CA. Сертификаты не CA должны находиться на вкладке Серверы. Хотя вы [не можете] (например, https://bbs.archlinux.org/viewtopic.php?pid=1776753#p1776753) вручную добавить сертификат без CA в Chromium 65.0.3325.162. x-yuri 6 лет назад 0