2017年5月6日土曜日

Schannel EvenID 36888/36874: 特定のサイトだけIEで開けない

先日仕事をしていて、どうにも解決ができないIEトラブルがあり、調査にいつもより時間を要したのでひょっとして同じように困っている人がいるのではないかと記事にしています。
IE系のトラブルシューティングは今度どこかにまとめるかもしませんが基本的には
1.閲覧履歴の削除をしてみる
2.IEをリセットする
3.IEの無効化・有効化をしてみる
などが有効になりますが、今回発生したトラブルはそれらをしてみても現象が一向に解決せずイベントビューアから特定のイベントを絞り込んで調査しなければなりませんでした。
困っている人が見ている可能性があるので、早速記事本文に入ります。

<対象となる現象>

クライアント側のIEで特定のサイトが閲覧できなくなり、上記トラブルシューティングが有効でない場合で、イベントビューアで「Schannel EvenID 36888/36874」というエラーが発生している

<対象とならない現象>

サーバ側で発生しているエラーの対処

<推奨解決方法>

PCの再キッティング(再インストールなど)

<未検証解決方法>

itTobyさんのこちらの記事(原文英語)にある、対応方法を取る。もしくはitTobyさんが紹介しているこちらの記事(原文英語:Microsoft TechNet記事)でSSL certificateをマニュアルで作成する。

<記事ここから>

仕事でトラブルシューティングをしていると、どうしても超えられない壁を経験することがあります。僕の仕事上、基本的にはアプリケーションの問題であったりすれば開発に直結しているそれぞれのアプリケーションのサポート窓口にエスカレーションしたりすればよいのですが、そもそもユーザに提供しているPCのOSなどに問題があったり、サポート窓口が用意されていないような小規模のウェブサイトで問題が発生していると手詰まりとなってしまうのは良くある話です。

今回のケースはそのどちらにも当てはまるケースで、切り分けとしてユーザアカウントに依存していないか、PCに依存していないかという調査をしたところ、問題の発生しているPCから特定のサイトに接続した時に何をやってもエラーを排出するというものでした。

次に上述したIEの一通りのトラブルシューティングを行ったのですが、現象は一向に収まらず対応しているチーム内でPCの再イメージを行うか話し合っていたところだったのですが、そもそもこの系統の仕事をしている人間は原因を突き止めるということに異様な執着心(笑)を持っているため、原因を追究することになりました。

このようなかなり特異なエラーの場合、エラーログなどを見るのが定石になるので「コントロールパネル」の「管理ツール」、イベントビューアでエラーが発生した時間帯に起きているログを拾ったところ、記事のタイトルのエラーを発見したのでした。

どうやらSSL関係のエラーということはわかったのですが、調査はここからさらに難航し、Google検索の日本語でヒットした内容ではほとんどがサーバ側の問題として取り扱っており、今回のようにクライアント側の問題について言及しているものが見つからなかったのです。

最終的に、検索範囲を英語圏に変えてしばらく検索結果を見ていたところ、見つけたのがitTobyさんの記事ということになります。
そして記事をわからないところも含めて斜め読みした結果、PCの再イメージを決断したという形になります。

正直なところ、itTobyさんの記事は難解なのですべてを完全に理解したわけでは全くないのですが、再イメージを決断する決め手となったのは、「So therein lies the problem: Your server doesn't like any of the proposals from the client. (意訳:つまりここに問題があると言える:サーバ側がクライアントが提示している「提案:セキュアな接続手法:文中より追加」の全てが好みで無かったと言える)」というところです。

サーバ側で発生している問題なのであれば、サービスを提供する側として問題解決する必要があると思いますが、今回は特定のPCのみで発生している問題でしかもitTobyさんの記事によるとPC側からの証明書発行の要求(Certificate Signing Request:証明書署名要求)時点で問題が発生していることが原因である可能性が高いということになるからです。

自分で書いていてわかりにくかったのでまとめると
他のPCでは問題はない ⇒ 問題の発生しているPCでサーバからの証明書が発行をしてもらえない状況になってしまった ⇒ 他の同条件のサーバからの証明書発行でも問題がでる可能性が高い ⇒ 特定のサーバ用にマニュアルで証明書を発行しても再発の可能性が高い ⇒ 根本解決が望まれる ⇒ 手っ取り早く再イメージ(再インストール)した方が良い
という論理になります。

当然クライアント側でもどうしても環境を変えられない事情などがあると思いますので、その際は紹介した記事を熟読してことに当たっていただければと思います。

0 件のコメント:

コメントを投稿