Skip Navigation
Show nav
Heroku Dev Center
  • Get Started
  • ドキュメント
  • Changelog
  • Search
  • Get Started
    • Node.js
    • Ruby on Rails
    • Ruby
    • Python
    • Java
    • PHP
    • Go
    • Scala
    • Clojure
  • ドキュメント
  • Changelog
  • More
    Additional Resources
    • Home
    • Elements
    • Products
    • Pricing
    • Careers
    • Help
    • Status
    • Events
    • Podcasts
    • Compliance Center
    Heroku Blog

    Heroku Blog

    Find out what's new with Heroku on our blog.

    Visit Blog
  • Log inorSign up
View categories

Categories

  • Heroku のアーキテクチャ
    • Dyno (アプリコンテナ)
    • スタック (オペレーティングシステムイメージ)
    • ネットワーキングと DNS
    • プラットフォームポリシー
    • プラットフォームの原則
  • コマンドライン
  • デプロイ
    • Git を使用したデプロイ
    • Docker によるデプロイ
    • デプロイ統合
  • 継続的デリバリー
    • 継続的統合
  • 言語サポート
    • Node.js
    • Ruby
      • Bundler の使用
      • Rails のサポート
    • Python
      • Django の使用
      • Python でのバックグランドジョブ
    • Java
      • Maven の使用
      • Java でのデータベース操作
      • Play Framework の使用
      • Spring Boot の使用
      • Java の高度なトピック
    • PHP
    • Go
      • Go の依存関係管理
    • Scala
    • Clojure
  • データベースとデータ管理
    • Heroku Postgres
      • Postgres の基礎
      • Postgres のパフォーマンス
      • Postgres のデータ転送と保持
      • Postgres の可用性
      • Postgres の特別なトピック
    • Heroku Redis
    • Apache Kafka on Heroku
    • その他のデータストア
  • モニタリングとメトリクス
    • ログ記録
  • アプリのパフォーマンス
  • アドオン
    • すべてのアドオン
  • 共同作業
  • セキュリティ
    • アプリのセキュリティ
    • ID と認証
    • コンプライアンス
  • Heroku Enterprise
    • Private Space
      • インフラストラクチャネットワーキング
    • Enterprise Accounts
    • Enterprise Team
    • Heroku Connect (Salesforce 同期)
    • シングルサインオン (SSO)
  • パターンとベストプラクティス
  • Heroku の拡張
    • Platform API
    • アプリの Webhook
    • Heroku Labs
    • アドオンのビルド
      • アドオン開発のタスク
      • アドオン API
      • アドオンのガイドラインと要件
    • CLI プラグインのビルド
    • 開発ビルドパック
    • Dev Center
  • アカウントと請求
  • トラブルシューティングとサポート
  • セキュリティ
  • アプリのセキュリティ
  • SSL/TLS 証明書の手動による取得

SSL/TLS 証明書の手動による取得

日本語 — Switch to English

この記事の英語版に更新があります。ご覧の翻訳には含まれていない変更点があるかもしれません。

最終更新日 2019年08月14日(水)

デフォルトで、Heroku は、有料の dyno 上で実行するすべてのアプリケーションに、無料の ​Automated Certificate Management (ACM)​ を提供しています。アプリケーションにワイルドカード証明書や別の認証局を使用する場合は、次のステップを使用して、手動で証明書を取得します。

SSL 証明書の購入は、ベンダーによって費用やプロセスが異なります。​ExpeditedSSL​ と ​SSL FastTrack​ は、証明書購入の簡略な方法を提供し、推奨のソリューションになります。他の SSL プロバイダーを使用するには、次のステップの一部または全部を行う必要があります。

​

プライベートキーの生成

​

SSL 証明書を要求する前に、​openssl​ ツールを使用してローカル環境でプライベートキーを生成します。ターミナルから ​openssl​ コマンドを実行できない場合、インストールする必要がある可能性があります。

​​ ​​ ​​ ​​ ​​ ​​ ​​ ​​
​所有している OS​​インストールに使用するコード​
​Mac OS X​​​​Homebrew​​: ​​brew install openssl​​​
​Windows​​​​Windows はパッケージ .exe インストーラーを完了します​​​
​Ubuntu Linux​​​​apt-get install openssl​​​

​openssl​ を使用して新しいプライベートキーを生成します。

求められた場合、簡単なパスワード値を入力します。これは CSR の生成時にのみ使用され、ランタイム時にアプリで使用されません。

 

Heroku は証明書に RSA キーのみをサポートします。楕円曲線キーはサポートしていません。

$ openssl genrsa -des3 -out server.pass.key 2048
...
Enter pass phrase for server.pass.key:
Verifying - Enter pass phrase for server.pass.key:

プライベートキーからパスワードを取り除く必要があるので、パスワードを手動で入力せずにプライベートキーを読み込むことができます。

$ openssl rsa -in server.pass.key -out server.key

これで、現在の作業用ディレクトリに ​server.key​ プライベートキーファイルが用意されます。

​

CSR の生成

​

CSR は、証明書署名要求のことであり、SSL 証明書の購入時にも必要になります。前のステップのプライベートキーを使用して CSR を生成します。これには、組織およびドメインに関する識別情報を入力する必要があります。

ほとんどのフィールドは一目瞭然ですが、次の点には特に注意してください。

​​ ​​ ​​ ​​ ​​ ​​
​フィールド​​説明​
​国名​​組織の本拠がある国の ​​ISO 3166-1 形式​​の 2 文字コード。​
​共通名​​これは、保護する必要のある​​完全修飾ドメイン名​​です。
    ​
  • ​単一のサブドメインの場合: ​​www.example.com​​​
  • ​ ​
  • ​すべてのサブドメインの場合 (ワイルドカード URL を指定): ​​*.example.com​​​
  • ​ ​
  • ​ルートドメインの場合: ​​example.com​​​
  • ​​

​Common Name​ フィールドは、安全なドメインに一致する必要があります。ルートドメイン (たとえば、​example.com​) の証明書は購入できず、​www.example.com​ を保護することは期待できません。その逆もあります。 さらに、SNI SSL および SSL Endpoint は、アプリあたり 1 つの証明書しかサポートしません。マルチドメインアプリケーションにはこのことに留意し、必要なドメインすべてに一致する ​Common Domain​ を指定してください。

CSR を生成します。

$ openssl req -nodes -new -key server.key -out server.csr
...
Country Name (2 letter code) [AU]:US
Common Name (eg, YOUR name) []:www.example.com
...

この操作の結果は、(前のステップからの ​server.key​ プライベートキーファイルと並んで) ローカルディレクトリ内に ​server.csr​ ファイルが生成されます。

​

SSL プロバイダーへの CSR の送信

​

次に、新しい SSL 証明書を作成するプロセスを、選択した証明書プロバイダーで開始します。これは、プロバイダーに応じて異なりますが、前のステップで生成された CSR をある時点でアップロードする必要があります。

どの Web サーバーで証明書を作成するかについても尋ねられることがあります。その場合は、Heroku で使用する Web サーバーとして Nginx を選択します。Nginx がオプションでない場合、Apache 2.x も対応します。

PKCS や X.509 など、使用する証明書形式のオプションが与えられている場合は、X.509 を選択します。

複数のサブドメインを保護する場合は、プロバイダーからワイルドカード証明書を購入する必要があります。これらの証明書は通常さらにコストがかかりますが、​*.example.com​ のすべてのサブドメインのリクエストに SSL で対応できるようになります。

SSL 証明書の購入プロセスが完了すると、次のような複数のファイルが用意されます。

  • 証明書プロバイダーからダウンロードされた、CSR に指定されているドメインの SSL 証明書。このファイルには ​.pem​ または ​.crt​ の拡張子が付けられます。
  • 最初のステップで生成したプライベートキー (​server.key​)。

関連カテゴリー

  • アプリのセキュリティ
自己署名の SSL 証明書を作成する WebSocket のセキュリティ

Information & Support

  • Getting Started
  • Documentation
  • Changelog
  • Compliance Center
  • Training & Education
  • Blog
  • Podcasts
  • Support Channels
  • Status

Language Reference

  • Node.js
  • Ruby
  • Java
  • PHP
  • Python
  • Go
  • Scala
  • Clojure

Other Resources

  • Careers
  • Elements
  • Products
  • Pricing

Subscribe to our monthly newsletter

Your email address:

  • RSS
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku Blog
    • Heroku News Blog
    • Heroku Engineering Blog
  • Heroku Podcasts
  • Twitter
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku
    • Heroku Status
  • Facebook
  • Instagram
  • Github
  • LinkedIn
  • YouTube
Heroku is acompany

 © Salesforce.com

  • heroku.com
  • Terms of Service
  • Privacy
  • Cookies