2016-07-12 5 views
2

При попытке «Добавить новый сертификат SSL» с помощью вкладки «Параметры приложения», созданной с помощью «Давайте зашифровать с помощью консоли Google App Engine», получится ошибка диалогового окна и 400 ответ на запрос POST.Google App Engine SSL с Let's Encrypt «не может быть вставлен»

Ошибка
«Предоставленный сертификат SSL не может быть вставлен».

Ранее сгенерированный (около 2 месяцев назад - еще не истек, конечно). SSL-ключ/сертификат с помощью одного и того же метода вставлен просто отлично, но никакой новой сгенерированной версии нет. Я попытался как традиционный «Давайте зашифровать», так и относительно новый метод Certbot. Также попробовал несколько поддоменов, голые домены, особые домены, и каждый результат в той же ошибке.

Я видел, как некоторые люди указали, что -rsa-key-size 2048 решил ту же проблему, но я также попытался указать это (хотя это значение по умолчанию для Certbot как есть). Другие ответы «ожидают 2 часа и теперь его работа» - поиск реального решения, поскольку ненадежные вставки и устаревшие сертификаты могут стать настоящей болью.

ответ

1

Я столкнулся с подобными проблемами, а также несколько недель назад при попытке загрузить мой новый сертификат с использованием того же рецепта, который я успешно использовал раньше.

То, что работало для меня в конце концов был:

  • копирования склеивание все содержимое файла сертификата в коробке с маркировкой Or paste the public key certificate in the box below:

и,

  • авторскими вставьте только полный ключ в конце моего закрытого ключа .pem файл в поле с пометкой Or paste the RSA private key in the box below: (хотя я точно не помню, включил ли я ведущий -----BEGIN RSA PRIVATE KEY----- и хвост -----END RSA PRIVATE KEY----- линий или нет).

I (kinda blindly) сделал несколько попыток для каждой из двух операций копирования-вставки с тем, что пересекло мой разум - обратная связь с успехом/сбоем немедленно.

Замечание - вы можете также проверить свой сертификат, в моем случае первый файл сертификата, который я смог загрузить, был неполным (отсутствующие промежуточные объекты), который, казалось, работал отлично с моего рабочего стола, но сбой при просмотре с Android, мне пришлось сгенерировать еще один. Я использовал digicert, чтобы подтвердить эту проблему и проверьте, 2-й сертификат (после предложения от SO ответа, конечно;)

+0

Одна из тех поздних ночных вечеринок на моем конце в работе с консолью Google и ее распечатке. Однако, без вашего комментария, я бы не был так сосредоточен на деталях копий-пасты. В конце концов, спасибо за поддержку :) – pbinggeser

4

Если вы используете certbot в Apache, то по умолчанию 4096. Так заставить длину ключа до 2048.

certbot-авто --rsa ключ размером 2048 Из документации [https://certbot.eff.org/docs/using.html]

Это создает сертификаты PEM в /etc/letsencrypt/live/example.net

удобст rt к RSA (измените URL-адрес в cmd на ваш сайт).

Судо OpenSSL RSA-информ PEM -in /etc/letsencrypt/live/example.net/privkey.pem -outform PEM> rsaprivatekey.pem

Above command из этого сообщения в блоге http://blog.seafuj.com/lets-encrypt-on-google-app-engine. Это также объясняет, как настроить веб-сервер webapp2.

Перейти к App Engine> Настройки> Сертификаты SSL

Загрузить fullchain.pem кнопка загрузки rsaprivatekey.pem

Файл Загрузить работает отлично - нет необходимости, чтобы вставить, если его более безопасным.

+0

В моем случае 2017 г. июнь закрытым ключом RSA rsa2.pem была проблема 'openssl rsa -in privkey.pem -out rsa2alt.pem' и использование этого вывода для этого поля устранило проблему , Я подозреваю, что это перекрывается с ответом intotecho, поэтому добавление комментария здесь (fullchain.pem был в порядке как открытый ключ). – jimmont

0

У меня была эта проблема. Я создал сертификаты в облачной оболочке Google.

Я сначала пытался использовать fullchain.pem, но это не сработало.

/etc/letsencrypt/live/mydomain.com/cert.pem

Я выпустил Судо менее /etc/letsencrypt/live/whysaurus.com/cert.pem в облаке оболочки Google, и загрузить что как pem 509 cert в appengine, а затем он был принят.