Подтвердить что ты не робот

Несколько сертификатов SSL в одном приложении Heroku

Возможно ли иметь много сертификатов SSL в одном приложении Heroku?

У нас есть несколько доменных имен разных типов и TLD, указывающих на наше приложение и нуждающихся в защите каждого имени домена. Предпочтительно, не перенаправляя другой защищенный URL.

4b9b3361

Ответ 1

У нас есть несколько доменных имен, принадлежащих нескольким компаниям. Сертификат SAN/UCC доступен только для доменных имен, принадлежащих одному и тому же лицу/компании/физическому лицу. Мы создали iFrame в фоновом режиме в качестве быстрого исправления, но с тех пор мы переместили нашу платформу в нашу собственную инфраструктуру.

Ответ 2

Существует несколько способов маршрутизации трафика нескольких конечных точек SSL в одно и то же приложение.

Конечная точка SSL работает, завершая соединение SSL и вводя незашифрованный трафик обратно в нормальный уровень маршрутизации Heroku.

Вы можете воспользоваться этим, создав новое приложение с новой конечной точкой SSL для прекращения соединения SSL и маршрутизации трафика в существующее приложение:

  • Добавьте свое доменное имя в свое приложение:

    $ heroku domains:add ssl.example.com

  • Создайте новое приложение:

    $ heroku create endpoint-for-example-com

  • Добавьте добавление конечной точки SSL ($ 20/mo):

    $ heroku addons:create ssl:endpoint --app endpoint-for-example-com

  • Добавьте свой сертификат в новое приложение:

     $ heroku certs:add server.crt bundle.pem server.key --app endpoint-for-example-com
     Resolving trust chain... done
     Adding SSL Endpoint to endpoint-for-example-com... done
     endpoint-for-example-com now served by kagawa-1482.herokussl.example.com
    
  • Используйте конечную точку ssl, назначенную вашему новому приложению (например, kagawa-1482.herokussl.example.com) в качестве узла CNAME для имени домена, которое вы хотите защитить. Обычно это делается в конфигурации DNS вашего домена.

Новое приложение не нуждается в каких-либо динамиках, но плата за добавление конечной точки SSL будет составлять 20 долларов США в месяц.

Примечания:

  • Это решение не документировано Heroku, поэтому возможно, что они удалит или изменит это поведение в будущем. Героку подтвердили, что это безопасно для использования в производстве.
  • Обязательно создайте конечные точки в том же регионе, что и основное приложение.
  • Может потребоваться некоторое время, чтобы изменения DNS вступили в силу.

Ответ 3

Недавно геройку добавили автоматические сертификаты LetsEncrypt TLS для платных динов, хобби и до. Это будет работать через любое количество доменов и поддоменов автоматически. Этот метод работает только в том случае, если вам не нужны поддомены подстановочных знаков.

heroku

Кроме того, вы можете управлять сертификацией LE самостоятельно через несколько доменов и поддоменов, certbot

certbot certonly --standalone -d example.com -d www.example.com -d test.net

Вы можете обратиться к этому heroku doc ​​ для загрузки пользовательских сертификатов.

Ответ 4

Хотя это не то же самое, что и вопрос OP, я смог добиться этого на Heroku с единственным сертификатом SAN (Subject Alternative Name) около 25 долларов США в год.

Я создал CSR с несколькими альтернативными именами объектов (subjectAltName) в OSX:

  • Копирование /System/Library/OpenSSL/openssl.cnf в текущий каталог и изменение соответствующих разделов ([req] и [v3_req]):

    [req]
    req_extensions = v3_req
    
    [v3_req]
    subjectAltName=DNS:www.example1.com,DNS:www.example2.com,DNS:www.example3.com
    
  • Затем я использовал этот новый .cnf при создании CSR:

    openssl req -nodes -newkey rsa:2048 -keyout server.key -out server.csr -config openssl.cnf
    
  • Я приобрел сертификат с SSLs.com. Их Comodo "PositiveSSL Multi-Domain" составляет 25,99 долл. США в год на момент написания этой статьи и поддерживает от 3 до 100 доменов (домены более 3 стоят примерно как 12 долл.).

  • Я объединил пакет CA и .crt, что я был отправлен в один .crt(в указанном порядке) и добавил его в Heroku. Все 3 домены были добавлены в приложение и указали на тот же CNAME, и все разрешены по https://как ожидалось.

Намного дешевле, чем $240/год для дополнительной конечной точки, если это жизнеспособный маршрут для всех, кто интересуется.

Соответствующие ссылки:

Ответ 5

Я имею дело с этим сам. Heroku предлагает получить сертификат SAN/UCC, который позволяет вам перечислить несколько доменов. Просто сделал это с GoDaddy, и он работает нормально до сих пор.

https://devcenter.heroku.com/articles/ssl-endpoint#serving-multiple-domains