ホストの操作
最終更新日 2023-05-11
オリジンサーバーとの通信を行うには、ホストを追加および編集します。
設定前の注意点
ホストの操作を始める前に、コントロールパネルのコントロールとサービスの操作方法についてご確認ください。
ホストの追加
ホストを追加するには、次の手順に従ってください。
- Fastly コントロールパネルにログインします。
- Home ページから、適切なサービスを選択します。検索ボックスで ID、名称、ドメインによる検索が行えます。
- Edit configuration ボタンをクリックし、アクティブなバージョンをクローンするオプションを選択します。Domains ページが表示されます。
- Origins リンクをクリックします。Origins ページが表示されます。
Create a host ボタンをクリックします。Hosts フィールドが表示されます。
Hosts フィールドにはオリジンサーバーのホスト名または IP アドレスを入力します。ホスト名を入力すると、トランスポート・レイヤー・セキュリティ (TLS) が自動的に有効化され、ポート443が割り当てられます。 IP アドレスを入力すると TLS が無効化され、ポート80が割り当てられます。
Add をクリックしてホストを追加します。
ホストの編集
ホストを作成した後、以下の手順でホストの詳細を編集できます。
Hosts のセクションで、編集するホストの隣にある鉛筆アイコンをクリックします。Edit this host ページが表示されます。
以下の要領で Edit this host 設定画面の各フィールドに入力します。
- Name フィールドには、サーバーの名前を入力します (例:
My Origin Server
)。この名前は Fastly コントロールパネルに表示されます。 - Address フィールドに、オリジンサーバーの IP アドレス (またはホスト名) を入力します。
ホスト名の詳細については、証明書ホスト名と SNI ホスト名の値の違いを理解するを参照してください。
- Name フィールドには、サーバーの名前を入力します (例:
トランスポートレイヤーセキュリティ (TLS) を以下の方法で設定できます。
Enable TLS? オプションで、Fastly とオリジンとの接続を保護するために TSL を有効化する場合、デフォルトの Yes のままにします。TLS を有効化するには、オリジンサーバーに有効な SSL 証明書をインストールし、ファイアウォールのポート443 (または指定されたポート) を開く必要があります。TLS を使用しない場合は No を選択してください。
Verify certificate? オプションから、TLS 証明書の真正性を検証する場合は、デフォルトの Yes に設定します。No を選択すると証明書は検証されません。
警告
証明書を検証しない場合、中間者攻撃に対する脆弱性など、セキュリティに深刻な影響が及びます。証明書の検証を無効にする代わりに、CA 証明書のアップロードをご検討ください。
Certificate Hostname フィールドに TLS 証明書に紐付くホスト名を入力してください。この値は、発行された証明書によって証明書のコモンネーム (CN) もしくはサブジェクトの別名 (SAN) に対して照合されます。
オリジンに複数の証明書を配置するために Server Name Indication (SNI) を使用している場合、SNI hostname フィールドに、任意でオリジンへのリクエストに使用される別の証明書のホスト名を入力します。また、Match the SNI hostname to the Certificate hostname のチェックボックスを選択します。この情報は、TLS ハンドシェイクの際にサーバーにも送信されます。将来については、証明書ホスト名と SNI ホスト名の値の違いを理解するのガイダンスをご覧ください。
自己署名された証明書または主要なブラウザでは一般的に認識されていない認証機関 (CA) によって署名された証明書を使用している場合は、TLS CA certificate フィールドで PEM 形式の証明書を提供することをお勧めします。PEM 形式は次のようになります。
高度な TLS オプションを適用するには、Advanced TLS options リンクをクリックし、必要に応じて指定するオプションフィールドを決定します。これらのコントロールについて詳しくは、高度な TLS オプションをご覧ください。
他の Create a host コントロールを以下のように設定することができます。
- Shielding メニューから、シールド機能を有効化するために POP をオプションで選択します。詳細については、ガイドでオリジンシールドに関する項目を参照してください。
- Health check メニューから、オリジンサーバーのヘルスチェックをオプションで選択します。詳細については、ガイドに記載のヘルスチェックの使用に関する項目を参照してください。
- Auto load balance メニューから、オプションで Yes を選択してオリジンサーバーのロードバランシング機能を有効化します。詳細については、ガイドの負荷分散に関する項目を参照してください。
- 負荷分散を有効化する場合、Weight フィールドに重みを入力します。
- Override host フィールドに、使用しているオリジンに基づいて、オーバーライドホストヘッダーのホスト名をオプションで入力します。このフィールドの値は、グローバルオーバーライドホスト構成を使用して設定したどの値よりも優先されます。サードパーティサービスの Host ヘッダーの例については、Host ヘッダーのオーバーライドに関するドキュメントをご覧ください。
注意
Fastly サービスを使用してオリジンで受信したホストヘッダーを上書きするには、ガイドに記載の上書きホストの指定を参照してください。
Advanced options リンクをクリックすると、オプションフィールドを変更できます (任意)。
- Maximum connection フィールドにバックエンドの接続最大数をオプションで入力します。オリジンを過負荷から保護するために、1キャッシュノードあたりの接続はデフォルトで200に制限されています。
- オプションで Connection timeout フィールドに、接続タイムアウトまでどのくらい待機するかをミリ秒単位で入力します。デフォルトは1000ミリ秒です。
- オプションで First byte timeout フィールドに、ファーストバイトタイムアウトまでどのくらい待機するかをミリ秒単位で入力します。デフォルトは15000ミリ秒です。
- Between bytes timeout フィールドに、バイト間の待機期間をミリ秒単位で入力します (オプション)。デフォルトは 10000ミリ秒です。
Update ボタンをクリックします。新しいオーバーライドホストは、Override host セクションの Show all details フィールドの下に表示され、VCL で以下のようなコードブロックがオリジンの設定に追加されます。
1Backend F_Host_1 {2 .host = "..."; # IP or hostname3 .host_header = "example.com";4 .always_use_host_header = true;5 ...6}- Activate ボタンをクリックして設定変更をデプロイします。
高度な TLS オプション
ホストで TLS を有効にしている場合、Advanced TLS options リンクをクリックしてオプション設定を適用できます。
許容可能な TLS プロトコルバージョンの指定
オリジンサーバーが TLS プロトコルの最新バージョンをサポートするように設定されている場合、Minimum TLS Version と Maximum TLS Version を設定することで、Fastly が接続に使用する TLS プロトコルをカスタマイズすることができます。オリジンが対応可能な場合は、両方とも最新の TLS プロトコル (現在は1.3) に設定することをお勧めします。
指定したバージョンの TLS プロトコルをオリジンがサポートしているかを確認するには openssl
コマンドを使用します。例:
$ openssl s_client -connect origin.example.com:443 -tls1_3
他のプロトコルバージョンをテストするには -tls1_3
を tls1_2
、tls1_1
、tls1_0
に置き換えます。Fastly は SSLv2 または SSLv3 に対応していません。
重要
Fastly は、セキュリティベストプラクティスに従って、デフォルトで TLS プロトコルのバージョン 1.3 を使用しているサーバーを有効化することを推奨しています。エッジノードから顧客のオリジンへのバックエンド接続については、オリジンサーバーで使用されているプロトコルバージョンに応じて、Fastly は TLS 1.3、1.2、1.1、および1.0をサポートしています。サーバーがサポートされている最新バージョンとして TLS 1.0 を選択した場合 、Fastly は引き続き RFC 5246 の記述通り ServerHello メッセージ に基づいて TLS 1.0 をサポートします。
許容可能な TLS 暗号スイートの指定
Fastly は、オリジンサーバーに接続する際に使用される OpenSSL 暗号スイートの設定をサポートしています。これにより、セキュリティプロパティとオリジンサーバーのサポートに基づいて特定の暗号スイートを有効化することができます。Ciphersuites 設定では、OpenSSL 形式の暗号リストを使用できます。Mozilla SSL Configuration Generator の詳細に従って、オリジンがサポートする最強の暗号スイートを使用することをお勧めします。
オリジンが指定された暗号スイートをサポートしているかを確認するには openssl
コマンドを使用します。例:
$ openssl s_client -connect origin.example.com:443 -tls1_2 -cipher ECDHE-RSA-AES128-GCM-SHA256
テストするには -cipher ECDHE-RSA-AES128-GCM-SHA256
を暗号スイートに置き換えます。
TLS クライアント証明書とキーの指定
オリジンへの TLS 接続が Fastly からのものであり、ランダムな匿名のリクエストではないことを保証するために、クライアント証明書を使用してクライアントを検証するようオリジンを設定します。PEM 形式の証明書と秘密鍵を TLS client certificate のテキストボックスに貼り付けます。
重要
プライベートキーはパスフレーズで暗号化してはいけません。
その後、クライアント証明書を必要とするバックエンドを構成し、署名済みの CA 証明書に対して検証します。その手順には次のようなものがあります。
Fastly では、相互 TLS 認証 (mTLS) によってオリジンへの接続を保護できます。
証明書ホスト名と SNI ホスト名の値の違いを理解する
証明書と SNI ホスト名の値の違いは以下のとおりです。
証明書ホスト名 (ssl_cert_hostname
)。 このホスト名は、オリジンの証明書を検証します。これは常に必須です。この値は、証明書のコモンネーム (CN) または利用可能なサブジェクトの別名 (SAN) と一致する必要があります。VCL には ssl_cert_hostname
として表示されます。SNI 証明書に影響が及ぶことはありません。この値は、Certificate hostname フィールドで設定できます。
SNI ホスト名 (ssl_sni_hostname
)。 このホスト名は、TLS ハンドシェイクにどの証明書を使用すべきかを決定します。SNI は一般的に、オリジンが Amazon S3 などの共有ホストを使用している場合、またはオリジンで複数の証明書を使用している場合にのみ必要です。SNI は、接続にどの証明書を使用するかをオリジンサーバーに伝えます。この値は VCL で ssl_sni_hostname
として表示されます。証明書の検証に影響が及ぶことはありません。
下表には、TLS の設定での証明書と SNI ホスト名値の設定と、その結果が示されています。
証明書ホスト名に次の値が含まれる場合 | SNI ホスト名に次の値が含まれている場合 | 証明書検証の値 | SNI の値 |
---|---|---|---|
www.example.com | なし | www.example.com | なし |
www.example.com | www.example.org | www.example.com | www.example.org |
ssl_hostname
値 (推奨されていない) について。 ssl_hostname
値は非推奨となり、ssl_cert_hostname
と ssl_sni_hostname
に置き換わりました。代わりにこれら2つの値を使用してください。
重要
.host
値に IP アドレスを使用する場合 (証明書ホスト名に値を入力しない場合)、サービスのオリジンの TLS 設定で指定した証明書ホスト名が、コモンネーム (CN) または利用可能なサブジェクトの別名 (SAN) のいずれにも一致しない場合にエラーが発生します。
ワイルドカード証明書の使用
ワイルドカード証明書を使用する場合、ワイルドカード証明書と一致する任意の SNI ホスト名が使用できます。SNI ホスト名は、RFC 6066 に準拠した完全修飾ドメイン名 (FQDN) である必要があります。
下表には、*.example.com
のワイルドカード証明書で使用可能な証明書と SNI ホスト名のさまざまな組み合わせが示されています。
証明書ホスト名 | SNI ホスト名 |
---|---|
www.example.com | www.example.com |
live.example.com | live.example.com |
*.example.com | www.example.com |
証明書ホスト名を *.example.com
に指定した場合、Fastly はそれをリテラルとして処理します。
次の内容
サービス設定のバージョンの調整を続ける際、ドメインの設定とヘルスチェックの設定に関するドキュメントをご覧ください。