TLSv1.3 とエージェントクライアントコレクターSummary<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } TLSv1.2 および TLSv1.3 は、安全なオンライン通信に不可欠なトランスポート層セキュリティ (TLS) プロトコルの最新バージョンです。2008 年に導入された TLSv1.2 では、以前のバージョンと比較して暗号化が強化されています。2018 年に完成した TLSv1.3 は、ハンドシェイク プロセスを合理化し、古い暗号化方法を排除することで、セキュリティとパフォーマンスをさらに向上させます。TLSv1.2 は依然として安全なオプションですが、現在では TLSv1.3 が最も安全で効率的な選択肢であると考えられています。 NIST SP 800-52 リビジョン 2、セクション 4.1 に従い、クライアントは TLS 1.2 を使用するように構成する必要があり、TLS 1.3 を使用するように設定する必要があります。クライアントは、民間セクターサーバーとの互換性のために TLS 1.1 および TLS 1.0 を使用するように構成できますが、SSL 2.0 または SSL 3.0 を使用することはできません。2024 年 1 月 1 日以降は TLS 1.3 のサポートが必要になり、それ以降はクライアントを TLS 1.3 用に構成する必要があります。一般に、TLS 1.3 をサポートするクライアントも TLS 1.2 を許可する必要がありますが、相互運用性のために必要ない場合は TLS 1.3 を無効にすることができます。 ACC および MID サーバーにおける NIST SP 800-52 の適用 TLS 1.1 と TLS 1.0 がプライベートネットワークで問題ないという NIST の提案は、従来のアプリケーションに対応しますが、TLS 1.0 と TLS 1.1 は ACC エージェントが使用する Go API でサポートされておらず、MID サーバーではデフォルトで無効になっています。この実験では「禁止」とみなします。 TLS 1.2 は、ServiceNow インスタンスとの通信に必要です。TLS 1.3 は、NowSupport ケース (「Please enable TLSv1.3 on 'myinstance') を使用してインスタンスで有効にできますが、これは執筆時点 (25 年 9 月) のデフォルト構成ではありません。 KB0563633を参照してください 優先プロトコル:TLSv1.3許可されたプロトコル:TLSv1.2、TLSv1.3禁止されているプロトコル:TLS 1.1、TLS 1.0、SSL 2.0、SSL 3.0 デフォルト構成がこの標準にどのように適合しているかを見てみましょう。 Facts<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } TLS 1.3 は Java 17 ではデフォルトで有効になっており、Washington DC リリース以降、MID サーバーにバンドルされた JDK (OpenJDK 17) として含まれています。エージェントと MID Web サーバーは、利用可能な最高の TLS プロトコルバージョンを自動的にネゴシエートします。TLSv1.3 が利用可能な場合は、TLSv1.2 よりも選択されます。その結果、ほとんどの ACC 展開はデフォルトで TLSv1.3 を使用して動作します。 Release<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } この情報は、Washington DC 以降のリリースに適用されます。 Instructions<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } TLS1.3 が使用されていることを確認するにはどうすればよいですか? Wireshark を使用して、MID サーバーと ACC エージェントの間のネットワークパケットを検査できます。Wireshark をクライアント(エージェント)またはサーバー(MID)にインストールするか、 KB1443986 に従って別のマシンで分析するためにネットワークトレースファイルをキャプチャする必要があります。簡単なガイドは次のとおりです。シナリオの詳細:MID サーバー IP = 192.168.100.7、MID Web サーバーポート = 8080 パケットキャプチャを開始し、ACC サービスを再起動します。ACC サービスによる MID サーバーへの接続を許可します (acc.logを確認)キャプチャを停止し、(トレース ファイルを使用している場合)Wireshark を使用してパケット キャプチャを開きますMID Web サーバーが 443 以外のポートでリッスンする場合は、パケットを TLS としてデコードできることを Wireshark に知らせる必要があります。 [Decode As..] を開く:[Analyze] > [Decode As..] (Ctrl+Shift+U)次のオプションを使用して、このテーブルの新しいエントリを構成します。 Field: TCP portValue: [MID Web Server Port]Current: TLS [保存] ボタンをクリックします。 MID サーバーとの間の TLS ハンドシェイクのフィルター たとえば、ip.addr == 192.168.100.7 && tls.handshake というフィルターを使用します。 MID から Server Hello パケットを開き、デコードされたパケットを調べます。 テスト #1 – Yokohama MID サーバー (Java 17) のデフォルト構成: パケットキャプチャは、TLSv1.3 が MID サーバーによって提供される唯一のプロトコルであることを示しています。 テスト #2 – wrapper-override.conf での jdk.tls.server.protocols の設定:jdk.tls.server.protocols=TLSv1.2,TLSv1.3サーバーは常に最新の TLS バージョンをクライアントに提供します。スクリーンショットは上記と同じです。 テスト #3 - TLSv1.3 が無効になっている設定ミス: jdk.tls.server.protocols=TLSv1.2 サーバーは引き続き TLS1.3 を提供します。可能な限り TLSv1.3 を使用する必要があるため、これは良いことですが (NIST SP 800-52 Rev.2、8 ページ)、MID Web サーバーがこのプロパティを尊重しない可能性があることも示しています。 テスト #4 – TLSv1.3 をブラックリストに登録する:jdk.tls.server.protocols=TLSv1.2jdk.tls.disabledAlgorithms=TLSv1.3 (+defaults) [jre セキュリティ設定] この実験では、TLS 1.2 接続を強制するために JRE のセキュリティ設定を使用して TLSv1.3 を無効にしました。 ACC エージェントは、TLSv1.2 と TLSv1.3 の両方をサポートされているプロトコルとして提供しました (クライアント hello を参照 – 図には示されていません)。これは、java.security を使用して TLSv1.3 をブラックリストに登録したため、MID サーバーが TLSv1.2 接続をネゴシエートしました。 テスト #5 – TLSv1.2 をブラックリストに登録する: MID サーバーで TLSv1.2 を無効にすると、MID からインスタンスへの通信に影響を与えるため、無効にすることはできません。MID サーバーと ACC エージェント間で TLSv1.3 を適用するには、エージェントと MID サーバー間でロードバランサーを設定します。 KB2537468 では、TLSv1.3 が適用されたオープンソースの HAProxy ロードバランサーを構成する手順が示されています。 分析サマリー MID サーバーと ACC アプリケーションは、NIST SP 800-52 リビジョン 2、セクション 4.1 のガイダンスに標準構成 (out-of-the-box) で準拠しています。エージェントと MID Web サービスは、利用可能な最高の TLS プロトコルバージョンを自動的にネゴシエートします。TLSv1.3 が利用可能な場合は、TLSv1.2 よりも選択されます。 注: TLS 1.2 より古いプロトコルは、ACC エージェントでサポートされておらず、Java 17 で無効になっているため、テストされませんでした Related Links<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-52r2.pdf FAQ: Q1: Washington DC 以降を使用している場合、TLSv1.3 を使用するように MID Web サーバーを構成する必要がありますか? A1: TLSv1.3 は Java 17 ではデフォルトで有効になっているため、それ以上のアクションを実行する必要はありません。Q2: Microsoft は、Windows 11 と Server 2022 のみが TLS 1.3 をサポートしていると述べています。これは、以前のバージョンの Windows 上の ACC エージェントが TLS 1.3 を使用して接続できなくなり、新しいバージョンの Windows で MID サーバーをホストする必要があることを意味しますか?A2: いいえ、MID サーバーと ACC クライアントアプリケーションは Windows TLS API (Schannel) を使用しないため、このガイダンスは適用されません。ACC のコンテキストでは、Microsoft の推奨事項を無視できます。Q3: これは、Event Management など、MID Web サーバーを使用する他のアプリケーションにも適用されますか。 A3: サーバー側の動作は、MID Web サーバーを使用する他のアプリケーションに対しても一貫しています。サードパーティクライアントが TLSv1.2 をネゴシエートする場合がありますが、これを検証するには独自のテストを実施する必要があります。 Q4: ACC エージェントと MID サーバー間の通信に TLS 1.3 を適用するにはどうすればよいですか? A4: ACC から MID への通信に TLS 1.3 を適用するには、HTTP プロキシまたはロードバランサーを設定する必要があります。適切な TLS 設定を使用して HAProxy を構成する詳細な手順については、「KB2537468」を参照してください。 MID サーバーで TLS 1.2 を無効にすることはお勧めしません。これは、ほとんどの ServiceNow インスタンスや、送信 HTTP 要求を使用する他の MID サーバーアプリケーションとの互換性にとって不可欠なものです。