Outlook が実際に TLS 1.2 を使用した通信を行っているか確認する方法


2018/1/30 更新 : Network Monitor での確認方法を手順が少なく、プロキシを使用した環境でも有効な内容に変更しました。

 

こんにちは。日本マイクロソフト Outlook サポート チームです。

KB4057306 で公開しているように、Office 365 では 2018 年 3 月 1 日以降、TLS 1.2 での接続が必要となります。
前回、Windows 7 環境の Outlook が TLS 1.2 を使用した通信を行うために必要な準備を こちら の記事でご紹介しました。

今回は、Outlook が実際に TLS 1.2 を使用した暗号化通信を行っているかについて確認する方法をご紹介します。


はじめに

現在のところ Office 365 や Exchange Online の管理者側で TLS 1.2 を使用してクライアントからの接続が行われているか確認するレポート機能などは実装されていません。

現時点では、クライアント側で Network Monitor 3.4 で Outlook による通信のパケットをキャプチャして確認するのが確実な方法となります。


注意が必要な点

Outlook は Exchange Online への接続に HTTP の通信を行いますが、ここで TLS 1.2 プロトコルを使用した HTTPS による暗号化通信が必要となります。

Outlook が Exchange Online をふくめた Exchange Server へ HTTP での接続を行う際、Windows の WinHTTP と呼ばれる機能を使用しますので、Exchange Online へ Outlook で接続する Windows 7 端末では WinHTTP が TLS 1.2 を使用するための準備が必要であり、この制御方法を紹介したのが 前回記事 の「Exchange Server へ接続する場合」の箇所です。

また、前回記事でも記載したように、先進認証や Office 共通の動作などで、Outlook が WinINet と呼ばれる機能で HTTP 通信を行う場合もあり、WinINet では Internet Explorer のインターネット オプションで [TLS 1.2 を使用する] が選択されていれば TLS 1.2 が使用されます。

このため、Outlook が行う WinINet による通信で TLS 1.2 が使用されていても、WinHTTP は TLS 1.0 のままだった、という状況が特に Windows 7 では発生しやすく注意が必要です。

Qualys SSL Labs  のように、Web ブラウザでアクセスして暗号化のバージョンを確認するようなサイトでは、WinINet など Web ブラウザで使用される TLS バージョンの確認が可能ですが、WinHTTP の暗号化に使用されている TLS バージョンの確認はできません。

なお、Windows 8.1 以降では WinINet と WinHTTP の何れにおいても TLS 1.2 が既定で使用されます。

それでは、ご利用の端末で実際に Outlook が TLS 1.2 を使用した HTTPS の通信で Exchange Online へ接続しているか確認する方法を具体的にご紹介していきます。


準備

1. 以下のサイトから Network Monitor 3.4 のインストール ファイルをダウンロードし、確認を行う端末に Network Monitor をインストールします。

タイトル: Microsoft Network Monitor 3.4
http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=4865

NM34_x64.exe (64 bit OS 用)
NM34_x86.exe (32 bit OS 用)

※ インストール後、正常にパケットのキャプチャを行うために Windows OS の再起動が必要となります。


パケット キャプチャの実施

1. Outlook が起動している場合は終了します。
2. Network Monitor を右クリックの [管理者として実行] から起動します。
3. Network Monitor が起動されたことを確認します。
※この時、左下の [Select Networks] が空で表示される場合は、管理者として起動されていない可能性があります。
4. Network Monitor の [New Capture] ボタンをクリックします。
5. 表示された [Capture x] (x は キャプチャの通し番号です) のタブが選択された状態で [Start] ボタンをクリックしてパケットのキャプチャを確認します。

6. 上部の Frame Summaryにパケットが表示され始めたら、Outlook を起動して Exchange Online へ接続します。
7. Outlook の起動が完了して Exchange Online に接続されたことを確認したら Network Monitor の[Stop] ボタンをクリックします。


キャプチャしたパケットの確認

Network Monitor 上部の [Display Filter] ウィンドウに以下の文字列をコピー & ペーストして [Apply] ボタンをクリックします。

ProcessName == "OUTLOOK.EXE"
and TLS.TlsRecLayer.TlsRecordLayer.Version.Major == 3
and TLS.TlsRecLayer.TlsRecordLayer.Version.Minor < 3

上記文字列は、Outlook が TLS 1.2 未満の通信を行っていないか確認するためのフィルター条件となります。
[Apply] をクリック後、中央の [Frame Summary] に何も表示されなければ Outlook が TLS 1.2 未満の通信を行っていないことを確認出来ますので、まずこちらの確認を先に実行ください。

Outlook が TLS 1.2 未満の通信を行っている場合、以下のように TLS 1.0 や 1.1 のパケットが抽出されます。(※)
この場合は設定の見直しが必要です。

※ なお、TLS のパケットが分割された際、実際には TLS 1.2  の通信が行われていても後半のパケットが TLS 1.0 と Network Monitor 上で表示される場合があります。この場合、直前の同じ接続先との通信におけるパケットを確認し、TLS 1.2 が使用されていれば問題ありません。

次に、TLS 1.2 での通信を行っているかの確認を行ってみましょう。
[Display Filter] ウィンドウに入力した文字列を以下のように変更します。

ProcessName == "OUTLOOK.EXE"
and TLS.TlsRecLayer.TlsRecordLayer.Version.Major == 3
and TLS.TlsRecLayer.TlsRecordLayer.Version.Minor == 3

上記文字列は、Outlook が TLS 1.2 の通信を行っているパケットを抽出するためのフィルター条件となります。
[Apply] をクリックすると以下のように Outloook が TLS 1.2 で通信しているパケットが抽出されます。

- 補足
TLS のバージョンは以下のように表されます。これらを利用して今回のフィルター条件を定義しています。

TLS 1.2   Major: 3   Minor: 3
TLS 1.1   Major: 3   Minor: 2
TLS 1.0   Major: 3   Minor: 1


本情報の内容 (添付文書、リンク先などを含む) は、作成日時点でのものであり、予告なく変更される場合があります。

Skip to main content