
TLS 1.0 および 1.1 は安全ではないと考えられるようになったため、当社の Web サイトではこれらのサポートを廃止します。
この変更によって影響を受ける訪問者の割合 (%) を確認するにはどうすればよいでしょうか? (つまり、TLS 1.2 をサポートしていない訪問者)
Windows Server 2012 R2 と IIS8 を使用します。
答え1
2台目のサーバー(仮想マシンや同じホスト上の2台目のデーモンなど)をセットアップします。書き換えルールを使用してリバースプロキシ2 番目のサーバーにオプションの何かを要求します。たとえば、ページに隠された目に見えない画像などです。2 番目のサーバーを TLS 1.2 のみを許可するように構成します。別のホスト名にホットリンクしないでください。必ずプロキシを使用してください。そうしないと、安全でなくなるため、ブラウザーに警告が表示されるか、画像が読み込まれない可能性があります。
次に、イメージのリクエストを追跡します。サポートされていないクライアントでは、SSL/TLS エラーが発生します。サポートされているクライアントでは、いくつかの「200 OK」ログが生成されます。ログに有用な情報が何も表示されない場合は、代わりに JavaScript にプロキシして、成功したときにトラフィックをログに記録する AJAX リクエストを実行してみてください (ただし、スクリプト ブロッカーによってこれが停止される可能性があります)。
ログに頼って判断する前に、2 番目のサーバーの SSL/TLS サポートをテストするには、多くの詳細をリストできる nmap などの優れたテストを使用します。
nmap --script ssl-enum-ciphers example.com
答え2
Windows サーバーの接続にどの SSL/TLS プロトコルが使用されたかを確認するためにサーバー ログを確認する方法は知りません (Nginx と Apache を使用すると簡単です)。
そのため、私が考えられる最良の方法は、OS とブラウザのバージョンを追跡する分析ソフトウェア (例: Google Analytics) を使用することです。これは 100% 正確ではありません (ブラウザで JavaScript や追跡をオフにしている人もいます)。
Google Analyticsなどを使用することは多くの難解な USER_AGENT フィールドを解読しようとするよりはましですが、理論的にはこれも別の方法であり、おそらくサーバー ログに記録されるでしょう。その方法を実行する方法の詳細については、こちらを参照してください。https://stackoverflow.com/questions/17798944/get-browser-name-and-version-from-iis-log-file-in-log-parser。
訪問者のブラウザと OS のバージョンがわかったら、次の表を参照して TLS 1.2 をサポートしているかどうかを確認できます。 https://en.m.wikipedia.org/wiki/Transport_Layer_Security#Web_browsersそうすれば、大まかな割合を計算できるはずです。
ssllabsスキャンツール(https://www.ssllabs.com/ssltest/) はサイトをスキャンして SSL/TLS 設定をテストします。これには、参照ブラウザのリストが使用する TLS のバージョンと暗号も含まれます。SSL/TLS 構成の状態を確認するために、とにかくこのスキャンを実行することを強くお勧めします。
主に、古いバージョンの IE と古いバージョンの Android が問題になります。
また、TLS 1.0 および 1.1 をオフにする前に、Web サイトでブラウザー検出を実行して、これらのユーザーに 1 か月ほど警告を追加することもできます。古い IE バージョンに警告を表示する CSS スタイルシートを含めるには、「[if lt IE 11]」ステートメントを使用するのが非常に簡単です。ただし、IE10 は標準モードでこの構文をサポートしなくなったため、影響を受けるブラウザーです。また、古い Android ブラウザーでこれを行うのはそれほど簡単ではありません。
答え3
1 つの可能性としては、SSL/TLS ハンドシェイク バージョンをログに記録できるリバース プロキシ (Squid、Apache など) を使用することです。または、Web サービス ホストの数が非常に限られている (1 桁台) 場合は、サーバー上で直接 Wireshark を使用してハンドシェイクを分析することもできます。