Я пытаюсь узнать о поколении сертификата, подписываясь и что оно берет для становления Приблизительно.
Я разрабатываю Прокси HTTP, который будет средним прокси между браузером и фактическим веб-сервером, и он будет использоваться для записи сообщений HTTPS, отправляют полученный между браузером и фактическим веб-сервером.
Я должен генерировать динамические сертификаты для доменов, просмотренных в браузере в Прокси HTTP, которого я разрабатываю в машине Ubuntu 14 64 битов. Я хочу хром, должен работать гладко при просматривании различных сайтов.
Что я сделал до сих пор:
Созданный ключ и сам подписанный сертификат для использования CA ниже команд.
certtool --generate-privkey --outfile ca-key.pem
certtool --generate-self-signed --template cert.cfg --load-privkey ca-key.pem --outfile ca-cert.pem
Явно набор приблизительно сертификат в системном хранилище сертификата.
Преобразованный pem к crt использованию сертификата ниже команды
openssl x509 -in ca-cert.pem -inform PEM -out ca-cert.crt
(Я должен найти соответствующую команду в certtool),
Затем скопированный ca-cert.crt
файл к /usr/share/ca-certificates/extra
соедините каналом и выполняемый ниже команды для установки сертификата CA в системе явно.
sudo dpkg-reconfigure ca-certificates
С этим я получаю системное окно, я выбираю ca-cert.crt
и нажмите Ok для установки сертификата явно в системе. Мое понимание - то, что, так как ca-cert.crt установлен в системе явно, любым другим сертификатам, подписанным этим сертификатом CA и густым, будут доверять системе (кроме приложений с помощью их собственного хранилища сертификата как Firefox).
Затем я создал ключ для использования Прокси HTTP ниже команды:
certtool --generate-privkey --outfile key.pem
Затем я создал csr для использования Прокси HTTP ниже команды.
certtool --generate-request --load-privkey key.pem --template cert.cfg --outfile request.pem*
Затем я подписал csr, использующий ниже команды.
certtool --generate-certificate --load-request request.pem --load-ca-certificate ca-cert.pem --load-ca-privkey ca-key.pem --template cert.cfg --outfile cert.pem
Наконец у меня есть cert.key и cert.pem. Теперь эти файлы сертификата используются для коммуникации между браузером и моим Прокси HTTP.
Я вижу, что Chrome не показывает полученное содержание. Однако, если я запускаю Chrome с ignore-certificate-errors
режим, затем Chrome хорошо работает и показывает содержание в сайте правильно.
Кто-то может вести меня относительно того, что я делаю неправильно, это заставляет Chrome не показывать полученное содержание?
Вы взглянули на шаблонный файл cert.cfg
? То же самое имя файла происходит в двух различных вызовах certtool
, где цели вызовов дополнительны друг к другу.
Проверьте, что шаблон является тем же в обоих случаях. В особенности необходимо обратить внимание на ca
- инструкция в каждом файле для проверки они соответствуют.