Получение доступа к файлу PEM crt / key в приложении Heroku ACM - PullRequest
0 голосов
/ 10 октября 2019

Я ищу доступ / генерацию файлов сертификатов SSL на моем сервере Heroku, чтобы передать их в приложение узла, на котором я работаю.

Я использую Экземпляр сервера Peerjs на Heroku, который отлично работает по HTTP. Сейчас я пытаюсь заставить его работать, используя SSL, чтобы клиентская веб-страница могла получить доступ к серверу peerjs через защищенный протокол веб-сокета. Peerjs поддерживает SSL, если вы укажете местоположение сертификата в кодировке PEM и ключ через один из файлов конфигурации при запуске. Я надеялся использовать сертификаты, сгенерированные Heroku, так как сайт уже доступен через HTTPS (поскольку поддомены heroku уже настроены на SSL), но я сомневаюсь, что у меня будет доступ к ним, который предоставляется «* .herokuapp.com».

В настоящее время я использую хобби (платный) план Heroku и размещаю этот экземпляр peerjs на поддомене heroku.com.

Я рассмотрел настройку ACM для dyno, но, похоже, это для того, чтобы разместить его на отдельном домене, не являющемся героем (?). Я пытался настроить его, но получил следующее:

C:\>heroku certs:auto -a peerjsinstance
=== Automatic Certificate Management is enabled on peerjsinstance

=== Add a custom domain to your app by running: heroku domains:add <yourdomain.com>

C:\>heroku domains:add peerjsinstance.herokuapp.com -a peerjsinstance
Adding peerjsinstance.herokuapp.com to ? peerjsinstance... !
 !    Domain already added to this app.

C:\>heroku certs:info -a peerjsinstance
 !    peerjsinstance has no SSL certificates

Требуется ли иметь собственный домен для получения ACM для создания / автоматического обновления сертификатов для меня? Есть ли способ заставить ACM работать только на этом поддомене? Если я получу свой собственный настраиваемый домен и настроу ACM, смогу ли я ссылаться на файлы сертификатов в конфигурации peerjs?

Я также рассмотрел использование certbot Letsencrypt на сервере в порядкесоздать новые сертификаты для использования экземпляром Peerjs, но я не был уверен, будут ли они работать, если они отличаются от сертификатов, которые Heroku в настоящее время использует для ванильного трафика HTTPS. Можете ли вы смешивать такие сертификаты без искажения трафика? Является ли запуск certbot на heroku лучше, чем использование встроенного ACM heroku?

Какой самый лучший (и самый дешевый - я работаю на бюджет) способ создания или доступа к этим файлам сертификатов для передачи в peerjs?

...