- English
- 日本語
Fastly が管理する証明書で TLSを設定する
最終更新日 2024-04-12
このガイドでは、Fastly が管理する証明書を使用してドメインの HTTPS を有効にするために Fastly TLS を使う方法について説明します。HTTPS を使用して Fastly から安全にトラフィックを配信するため、Web サイトまたはアプリケーションは、信頼できる認証局によって署名された有効な TLS 証明書をクライアントに提供する必要があります。TLS (トランスポートレベルセキュリティ) とその前身の SSL (セキュアソケットレイヤー) を利用することで、クライアントは安全なサーバー接続を通じて HTTPS によってトラフィックを配信することができます。
Fastly マネージド証明書では、ACME プロトコルを使用して、TLS 証明書の調達と更新を行います。認証機関には、いくつかのオプションがあります。
- Certainly は、Fastly の公的に信頼されている認証機関です
- Let’s Encrypt は、サードパーティの非営利認証機関です
- GlobalSign は、サードパーティの商用認証機関です (有料アカウントでのみご利用いただけます)
トライアルアカウントには、Certainly または Let's Encrypt 認証局を使用した 2 つのドメイン用の Fastly マネージド証明書が含まれています。有料アカウントにアップグレードすることで、GlobalSign を使用したり、追加ドメインを保護できます。
ヒント
Fastly の TLS サブスクリプション API を使用して、Fastly TLS サブスクリプションをプログラムで管理することができます。
設定前の注意点
ドメインに TLS を設定する前に、Fastly TLS の前提条件と制限事項をご確認ください。
ドメイン向け TLS の設定
ドメイン向け TLS の設定は、認証局にドメインを登録して「安全性を確保する」必要があります。プログラムを介さず、Fastly コントロールパネルでこのプロセスを行うには、以下の手順にしたがってください。
- 初めて TLS を設定する
- 追加ドメインの保護
初めて TLS を設定するには、以下の手順を完了します。
- Fastly コントロールパネルにログインし、Secure リンクをクリックします。Secure ページでは、Fastly のセキュリティ製品の概要が表示されます。
- Manage certificates をクリックします。
- Get started をクリックします。
- Domain Name フィールドに、保護したい Apex ドメイン (例:
example.com
)、サブドメイン (例:www.example.com
またはapi.example.com
)、ワイルドカードドメイン (例:*.example.com
) を入力します。 - 認証機関メニューから、証明書を保護する認証機関のいずれかを選択します。認証機関によって大きな価格差が生じることがあります。これらの違いの詳細については、価格設定ページでご確認ください。
- TLS 設定の選択メニューから、適用する TLS 設定を選択します。この設定では、証明書がデプロイされる IP と、適用される関連 TLS 設定の両方を定義します。デフォルトオプションは HTTP/3 & TLS v1.3 +0RTT (t.sni) です。
- Continue をクリックします。ドメインページには、ドメインとその所有者であることを確認する詳細な手順が表示されます。
ドメインの所有権を確認する
HTTPS トラフィックの配信を開始するにあたり、Fastly はお客様が コントロールパネルに追加したドメインがお客様の管理下にあることを検証する必要があります。Fastly では、ACME DNS チャレンジ、ACME HTTP チャレンジ、またはメールによる検証によって、apex ドメインとサブドメインを検証することができます。これらの方法では、特定の DNS 変更が必要です。ワイルドカードドメインでは、DNS チャレンジまたはメールによる検証が必要です。
重要
Fastly は、ドメイン検証目的の ACME チャレンジを完了するため、お客様のサービスと DNS の動作を変更する場合があります。
ACME DNS チャレンジによるドメイン所有者の検証
Fastly マネージド TLS 証明書に追加されるドメインがお客様の管理下にあることを検証するデフォルトの方法は、ACME DNS チャレンジです。この方法はあらゆる種類のドメイン (apex、サブドメイン、ワイルドカード) に適しています。この方法では、_acme-challenge
サブドメインが Fastly に向けられるだけです。これにより、本番トラフィックを Fastly に向ける前に、TLS を設定することができます。
この検証方法を使用するには、お客様のドメインに対して独自のターゲットを持つ CNAME レコードを作成する必要があります。以下の手順に従って、CNAME レコードとターゲットのフォーマットを表示します。
- Security > TLS management > Domains に移動します。
Subscriptions タブをクリックします。
変更したいサブスクリプションの View subscription details をクリックします。
確認するドメインの Verification 列で Verification options をクリックします。Verify domain ownership ページには、レコードとターゲットのフォーマットが表示されます。
CNAME レコードを作成する手順は、DNS プロバイダーのコントロールパネルによって異なります。手順の詳細については、DNS プロバイダーのドキュメントをご参照ください。CNAME レコードは、_acme-challenge.DOMAIN_NAME
のフォーマット (例:_acme-challenge.www.example.com
) を使用し、対象のドメインに対して固有のターゲット (例:domain_token.fastly-validations.com
) に向けられていなければなりません。DNS レコードを Fastly に向けたら、サービスの中断を防ぐために、_acme-challenge
サブドメインに対する CNAME レコードをそのままに残しておくことをお勧めします。
ACME HTTP チャレンジによるドメイン所有権の検証
お客様がドメインを管理していることを検証する別の方法として、ACME HTTP チャレンジがあります。この方法は apex ドメインとサブドメインに対してのみ利用できます (ワイルドカードドメインは、DNS または メールによるチャレンジでのみ検証することができます)。これにより本番トラフィックが直ちに Fastly に向けられます。
警告
ACME HTTP チャレンジのドメイン検証方法では、TLS の設定が完了する前に、すべてのエンドユーザートラフィックを Fastly に向けてしまう可能性があります。つまり、エンドユーザーが Web サイトにアクセスすると、ブラウザに安全でないという警告が表示されたり、そのドメインに完全にアクセスできなくなる可能性があります。これを避けるために、この検証方法を使用する前に、適切に構成された Fastly サービスと強制 TLS リダイレクトを必ず無効にしてください。
この検証方法を使用するには、以下の手順に従って、CNAME レコードとターゲットのフォーマットを表示します。
- Security > TLS management > Domains に移動します。
- Subscriptions タブをクリックします。
- 変更したいサブスクリプションの View subscription details をクリックします。
- 確認するドメインの Verification 列にある Verification options をクリックします。
- ACME HTTP チャレンジに合わせて、最適な検証方法を選択します。
- サブドメインの場合、Fastly ホスト名に直接向ける CNAME レコードを作成します。
- apex ドメインの場合、通知された IP アドレスを用いて対象のドメインに対して A レコードを作成します
いずれの方法でも、設定後すぐに本番トラフィックが Fastly を経由して流れ始めます。
電子メールチャレンジによるドメイン所有権の検証
GlobalSign を認証局として選択した場合、ドメインの所有権をメールで検証することができます。(Let's Encrypt はドメイン認証のための電子メールチャレンジをサポートしていません。) この認証メソッドを使用するには、以下の手順に従ってください。
- メールでドメインコントロールを確認する設定を有効にするには、サポートチームまでお問い合わせください。
- Security > TLS management > Domains に移動します。
- Subscriptions タブをクリックします。
- 変更したいサブスクリプションの View subscription details をクリックします。
- 確認するドメインの Verification 列にある Verification options をクリックします。
- メール検証セクションで、メニューを使用してメールによる検証を送信するメールアドレスを選択します。認証局として選択された場合、GlobalSign は Fastly に検証メールの送信先として使用可能なメールアドレスのリストを提供します。一般的に、このリストには以下のようなメールアドレスが含まれます:
admin@example.com
administrator@example.com
hostmaster@example.com
postmaster@example.com
webmaster@example.com
- Get verification email をクリックします。
Fastly は指定されたアドレスに認証メールを送信するよう GlobalSign に指示します。認証メールに含まれているリンクをクリックすることで、ドメイン所有者の検証プロセスが完了します。
ドメイン検証後
1時間以内に TLS が有効化されます。その際に以下にある TLS ステータスを確認することができます。
TLS ステータス | 説明 |
---|---|
Checking domain DNS records… Step 1 of 3 | ドメイン検証が進行中です。証明書に追加されるドメインがお客様の管理下にあることを検証するため、Fastly が DNS レコードを確認しています。次のステータスに進むためには、ドメインの DNS レコードを更新し、ACME チャレンジタイプのいずれかを完了してドメインが管理下にあることを検証する必要があります。 |
証明書がリクエストされました。CA からのレスポンスを待機中… ステップ 2/3 | ドメイン検証が確認されました。Fastly は、お客様がドメインを管理していることを確認し、認証局にそのドメインの TLS 証明書を要求しました。 |
TLS 有効 (証明書はグローバルに展開されます) | 認証局から TLS 証明書が発行されました。新たに発行された証明書を Fastly グローバルネットワークに伝搬するのに20分から1時間かかります。 |
注意
GlobalSign 証明書を使用している場合、ドメインの所有権を検証した後、DNS 解決プロセスをモニタリングし、TLS 証明書が検証されて発行される前に、ドメインがグローバルで解決されていることを確認する必要があります。 DNS ベンダーによっては、DNS が解決されるまで最大72時間かかる場合があります。
トラブルシューティング
1時間以上経過し、TLS 有効化がドメイン追加のあるステージで止まっている場合は、問題が発生している可能性があります。
ドメイン DNS レコード確認中のステージで止まっている場合
Checking domain DNS records
のステータスで止まっている場合は、ドメインの所有者を検証するための DNS レコードが正しく設定されていない可能性があります。コマンドラインアプリケーションで以下のような dig
コマンドを使用して DNS レコードを確認することができます。
ACME チャレンジ | コマンド |
---|---|
HTTP | dig www.example.com +short |
DNS | dig _acme-challenge.www.example.com +short |
example.com
は、DNS レコードを設定した際に使用したホスト名に変更してください。
DNS レコードが正しく設定されている場合、このコマンドによる結果には、ドメインの所有権を確認する手順で定義された検証に必要な CNAME または A レコードのうち1つが含まれます。
DNS レコードを間近に追加または変更した場合、DNS 変更がインターネット全体に伝播されるのに最大 72時間かかる場合があります。この間に、該当するアドレスが表示されない場合、DNS レコードの設定が正しく行われていない可能性があります。
問題が解決しない場合、お客様のドメインにおいて Certification Authority Authorization (CAA) レコードが、証明局による証明書発行をブロックしている可能性があります。この CAA レコードは、ドメインに対して証明書の発行を許可する認証局 (CA) を指定するのに使用されます。CAA レコードが存在する場合、マネージド Fastly TLS 証明書を利用するにあたり、このレコードを削除する必要が生じる場合があります。
Fastly TLS でサポートされている各認証機関に必要となる CAA レコード値を以下に示します。
認証機関 | CAA レコード値 |
---|---|
Certainly | certainly.com |
Let's Encrypt | letsencrypt.org |
GlobalSign | globalsign.com |
証明書要求のステータスで止まっている場合
ドメインが Waiting for a response from CA
のステータスで止まっている場合、認証局で一時的な問題が発生している可能性があります。1時間経過しても状況が変わらない場合は、サポートチームまでお問い合わせください。新しい証明書のリクエストの場合は、ドメインを削除してはじめからやり直すことで解決する場合があります。
TLS が有効化されたが、証明書はどこにデプロイされていない場合
ドメインの Activated
のステータスが表示されているにもかかわらず、証明書が展開されていることが確認できない場合は、Fastly ネットワークでまだ展開中の可能性があります。証明書が完全にデプロイされるには、20分から1時間かかります。1時間経過しても状況が変わらない場合は、サポートチームまでお問い合わせください。
失敗とリスト表示されるサブスクリプション
サブスクリプションには、それが新しいサブスクリプションで7日間にわたって証明書の発行に失敗した場合、または有効期限日を超えて7日間にわたって証明書の更新に失敗した既存のサブスクリプションの場合に、Failed
状態が表示されます。また、サブスクリプションが失敗したこと知らせるメール通知も送信されます。
通常、Fastly にトラフィックをポイントしていない場合、または適切な DNS レコードでない場合に、サブスクリプションは失敗します。GlobalSign サブスクリプションは、特にドメインがグローバルで解決されていない場合に失敗することがあります。これにより、世界中のどこからもアクセスできなくなります。 DNS Checker などのツールを使用して、ドメインがグローバルに伝播されていることを確認してください。
これらの問題を解決したら、以下の手順を使用して、サブスクリプションの再発行を試すことができます。
- Security > TLS management > Domains に移動します。
- Subscriptions タブをクリックします。
- 失敗したサブスクリプションの View subscription details をクリックします。
- Retry now をクリックします。
失敗したサブスクリプションを再試行した後は、24時間にわたって関連する証明書の発行または更新が試行されます。24時間後に依然として証明書を取得できない場合には、サブスクリプションは再び失敗としてマークされます。
HTTPS トラフィックを配信するために DNS をポイントする
証明書の展開後、HTTPS 経由で安全なトラフィックを配信するために、以下の手順に従ってください。
TLS ドメインインターフェースを用いて追加したドメインが正しく Fastly サービスに設定されていることをご確認ください。
新たに作成された証明書 IP アドレスにトラフィックがポイントするように、DNS レコードを設定します。ドメイン所有権の検証に HTTP チャレンジメソッドを利用した場合は、すでにトラフィックが証明書に向けられています。ドメインに関連する TLS 設定情報を表示する DNS 詳細を確認するをクリックすることで、すべての DNS 情報 (CNAME、A レコード、オプションとして AAAA レコード) を確認することができます。
apex ドメイン(例:
example.com
)で TLS を使用する場合、DNS プロバイダーでA レコードを作成する必要があります。サブドメインやワイルドカードドメイン (例: または*.example.com
) の場合は、www.example.com
関連する cname レコードを作成するする必要があります。
ドメインと証明書は、1つまたは複数の TLS 設定を利用するように設定することができます。詳しくは、DNS と TLS 構成の管理に関する詳細を参照してください。
警告
初期設定後に Fastly に向けていた DNS レコードを Fastly 以外に向くように変更した場合は、TLS で終端することができなくなります。また、90日後に有効期限が切れる証明書の更新も行われません。
TLS サブスクリプションの管理
サブスクリプションページを使用して、サブスクリプションにドメインを追加または削除したり、共通名を変更したりすることができます。TLS サブスクリプションを管理するには、以下の手順に従ってください。
- Security > TLS management > Domains に移動します。
Subscriptions タブをクリックします。
変更したいサブスクリプションの View subscription details をクリックします。
Manage Subscription をクリックします。
注意
お客様は
Pending
、Issued
、およびRenewing
の状態にあるサブスクリプションのみを管理できます。Manage Subscription details ページから、以下のことができます:
- 新しいドメインの追加: Domain フィールドに、1つまたは複数の apex ドメイン (例:
example.com
)、サブドメイン (例:www.example.com
やapi.example.com
)、ワイルドカードドメイン (例:*.example.com
) を入力し、Add をクリックします。コンマで複数のドメインを区切ります。 - 既存ドメインの削除: 削除したいドメインの行にある Actions 列のゴミ箱をクリックします。確認画面の指示に従って、削除を完了してください。
- サブスクリプションの共通名を変更する:Common name メニューから、このサブスクリプションを表すドメインを選択します。
- 新しいドメインの追加: Domain フィールドに、1つまたは複数の apex ドメイン (例:
サブスクリプションに変更を加えた後、Submit をクリックします。変更を確認するメッセージが表示されます。
変更を確認するをクリックして、変更を送信します。前の画面に戻るには、No, review changes をクリックして変更を確認してください。
注意
新しいドメインを追加した場合、変更を確認した後にドメイン所有権を検証する必要があります。TLS 証明書のドメイン検証をご覧ください。
TLS の無効化と TLS ドメインの削除
いったんドメインが TLS を有効化されたら、TLS ドメインページで各ドメインカードに記載されている Deactivate TLS ボタンからTLSを無効にすることができます。複数の証明書を持っている場合、Add/Edit Activations をクリックし、有効な設定の横にあるDeactivate ボタンをクリックすることで、特定の証明書を無効化することができます。すべての証明書が無効化されている場合は、Fastly は選択されたドメインでTLSトラフィックを提供せず、それは無効になります。Fastly は無効化したドメインに対しても証明書の更新を実施しようとします。この更新プロセスを防ぐために、ドメインを無効化した後に該当するサブスクリプションを削除します。Fastly は削除されたサブスクリプションの証明書を更新しません。
証明書の管理と更新
各認証機関には、ユーザーの認証を管理する際に Fastly が従う個別の検証と更新期間が設定されています。
Certainly の更新。 Certainly は30日間有効な証明書を発行します。Fastly は、20日後にドメインの再検証と証明書の更新を試みます。ただし、DNS レコードが Fastly をポイントしていない場合、または CAA レコードが Certainly をブロックしている場合には、30日間の期間が終了した時点で証明書は失効します。
Let's Encrypt の更新。 Let’s Encrypt は90日間有効な証明書を発行します。Fastly は、60日後にドメインの再検証と証明書更新を実施します。ただし、DNS レコードが Fastly に向けられていない場合や、CAA レコードが Let's Encrypt をブロックしている場合は、90日間の最終日に証明書は失効します。
GlobalSign の更新。 GlobalSign は360日間有効な証明書を発行します。 Fastly は、275日後にドメインの再検証と証明書の更新を試みます。 ただし、DNS レコードが Fastly に向けられていない場合や、CAA レコードが GlobalSign をブロックしている場合は、365日間の最終日に証明書は失効します。GlobalSign が提供する証明書は、https://www.globalsign.com/repository に記載された GlobalSign の利用規約に従うものとします。
Fastly は、以下の時間枠内に、証明書を更新するための DNS チェックを自動的に実行します。
- Certainly: 証明書の有効期限が切れる10日前
- Let's Encrypt: 証明書の有効期限が切れる30日前
- GlobalSign: 証明書の有効期限が切れる90~120日前
DNS チェックで更新が失敗していると判断された場合、Fastly は TLS の管理権限を持つすべてのアカウントユーザーに自動的にメールを送信し、有効期限が近づいていることを通知します。更新の失敗が継続する場合、Fastly は有効期限日まで定期的にユーザーにメールを送信します。
また、管理プロセスの一環として、ドメインの所有権を検証する必要があります。ドメイン検証のための正しい DNS レコードが設定され、CAA レコードによるブロックが無いにもかかわらず、更新失敗のメールを受信し続ける場合は、サポートチームまでご連絡ください。
翻訳についての注意事項
このフォームを使用して機密性の高い情報を送信しないでください。サポートが必要な場合は、サポートチームまでご連絡ください。このフォームは reCAPTCHA によって保護されており、Google のプライバシーポリシーと利用規約が適用されます。