nginxは$proxy_hostをSNIとしてどのように処理するのか

nginxは$proxy_hostをSNIとしてどのように処理するのか

セットアップ: nginx オリジン サーバーに HTTPS リクエストを送信する nginx クライアントがあります。

ディレクティブ 'proxy_ssl_name' を使用して SNI を上書きする方法について調査してきました。nginx の公式ドキュメントによると、'proxy_ssl_name' で使用されるデフォルト値は $proxy_host です。

私の場合、$proxy_host の値はアップストリーム サーバー ブロックの名前 ('ups_server') です。クライアント サーバーから SNI として 'ups_server' が送信されていることがわかります。サポートされているドメイン名のいずれとも一致しない SNI を受信した場合、オリジン サーバーがどのようにして正しい証明書をクライアントに送り返しているのか理解できません。

誰かこれを理解するのを手伝ってくれませんか?

答え1

SNI に一致するブロックserverがない場合、オリジン サーバーはデフォルトのブロック証明書を送信します。server

関連情報