1台のサーバーにSSL証明書は何枚インストールできるか
1台のサーバーにインストールできるSSL証明書の枚数は、以下の要因によって決まります。
サーバー設定とプロトコルのサポート
SNI(Server Name Indication):
- 主流プロトコル:Nginx、Apache、IISなどの現代的なサーバーはSNI技術をサポートしています(同じIPアドレスとポート(例:443)で複数のドメインをホスティングでき、各ドメインに個別のSSL証明書を対応させられます)。
- 理論上の上限:理論上の明確な制限はなく、サーバーリソース(メモリ、CPU)と設定の複雑さにのみ影響されます。
IPベースSSL:
- 従来の方式:証明書ごとに独立したIPアドレスを紐付ける必要があり、枚数はサーバーで使用可能なIPの数に制限されます。
実際の利用シーンにおける制限
サーバーソフトウェアの設定:
- NginxやApacheなどのサーバーソフトウェアによって、仮想ホスト(Virtual Host)またはserverブロックを通じて複数の証明書を設定します。
例:
- Nginx:
serverブロックで複数のドメインと証明書を定義します。 - Apache:
<VirtualHost>でそれぞれ異なる証明書を設定します。 - IISは7.5バージョン以上でSNIをサポート
認証局(CA)による制限:
- 一部のCAは、1台のサーバーへの証明書インストール枚数に制限を設けていません。
注意
ワイルドカード証明書(*.example.com)とマルチドメイン証明書(SAN)は複数のサブドメインをカバーできるため、必要な証明書の枚数を削減できます。
リソースとパフォーマンス:
- 証明書が多すぎるとサーバーの負荷が増加する可能性があるため(例:SSLハンドシェイクの計算処理)、パフォーマンスとのバランスを取る必要があります。
よくある利用シーン
マルチドメインホスティング
同じサーバーに複数のウェブサイト(例:www.example.com、blog.example.com)をデプロイし、各ドメインで独立した証明書を使用します。
テスト・開発用途
一時的に複数の自己署名証明書やテスト用証明書をインストールします。
混合デプロイ
一部のドメインでは単一ドメイン証明書を使用し、一部ではワイルドカード証明書を使用します。
まとめ
- SNIモード:理論上の上限はなく、推奨される方式です。
- IPベースSSL:サーバーのIP数に制限されます(IP証明書)。
- 推奨事項:実際のニーズに応じて証明書の種類(単一ドメイン、ワイルドカード、SAN)を選択し、SNIによる複数証明書の管理を優先してください。