より厳しいセキュリティ要件に対応するネットワーク環境を準備する

Appleのオペレーティングシステムでは、システムプロセスで求められるネットワークセキュリティがさらに厳格になります。サーバ接続が新しい要件を満たしているかどうか確認してください。

この記事は、IT管理者やデバイス管理サービスの開発者を対象としています。

Appleのオペレーティングシステム(iOS、iPadOS、macOS、watchOS、tvOS、visionOS)では、早ければソフトウェアの次回のメジャーリリースからネットワークセキュリティ要件が厳格化され、TLS構成が古かったり要件を満たしていなかったりするサーバには接続できなくなる可能性があります。

この要件を満たしていないサーバがないか、現在の環境を監査して確認する必要があります。サーバ構成を更新してこの要件に対応させるには、かなりの時間がかかる場合があります(特に外部ベンダーが管理しているサーバの場合)。

対象となる接続および構成の要件

新しい要件は、以下の実行に直接関係するネットワーク接続に適用されます。

  • モバイルデバイス管理(MDM)

  • 宣言型デバイス管理(DDM)

  • 自動デバイス登録

  • 構成プロファイルのインストール

  • アプリのインストール(エンタープライズアプリの配布を含む)

  • ソフトウェアアップデート

例外:SCEPサーバへのネットワーク接続(構成プロファイルのインストール時またはDDMアセットの解決時)およびコンテンツキャッシュサーバへのネットワーク接続は、(アプリのインストールやソフトウェアアップデートに関連するアセットのリクエスト時であっても)対象になりません。

要件:サーバは、TLS 1.2以降に対応している必要があり、ATSに準拠した暗号スイートを使用すること、ATS基準を満たす有効な証明書を提示することが求められます。詳細なネットワークセキュリティ要件については、以下の開発者向けのドキュメントを参照してください。

環境を監査して要件を満たしていない接続を特定する

テストデバイスを使用して、新しいTLS要件を満たしていないサーバ接続が環境内にないか確認します。

テスト範囲の計画を立てる

デバイスの構成に応じて、接続先のサーバは異なる場合があります。監査の対象範囲を確実に網羅するため、お使いの環境に該当するすべての構成をテストしてください。

  • 環境:実稼働、ステージング、テスト

  • デバイスの種類:iPhone、iPad、Mac、Apple Watch、Apple TV、Apple Vision Pro

  • 役割:ユーザグループ(営業、エンジニア、経理)、キオスクデバイス、共有デバイス

  • 登録の種類:自動デバイス登録、アカウント駆動型登録、プロファイル駆動型デバイス登録、共有iPad

接続先のサーバが異なる構成ごとに、以下の監査手順を繰り返します。

ネットワーク診断ログ記録用プロファイルをインストールする

iOS 26.4、iPadOS 26.4、macOS 26.4、watchOS 26.4、tvOS 26.4、visionOS 26.4、またはそれ以降を実行している各テストデバイスに、ネットワーク診断ログ記録用プロファイルをダウンロードしてインストールし、ログ記録を有効にします。プロファイルをインストールしたら、テストデバイスを再起動してください。

要件を満たしていない接続を特定するために必要な詳細情報をログイベントに記録するには、テストを実施する前に必ずこのプロファイルをインストールする必要があります。iPhoneやiPadで自動デバイス登録をテストする場合は、設定アシスタントの「デバイス管理」パネルが表示される前に、Mac用Apple Configuratorを使ってプロファイルをインストールしてください。

通常のワークフローを実施する

テストデバイスを普段通りの環境で使用します。デバイス管理に登録し、アプリやプロファイルをインストールして、組織のサーバに接続するその他のワークフローを実行してください。

この目的は、新しいTLS要件の対象となるすべてのサーバへのネットワーク通信を発生させることです。

sysdiagnoseを収集する

ワークフローを実施したら、テストデバイスからsysdiagnoseを収集します。この診断アーカイブには、要件を満たしていない接続を特定するために必要なログイベントが含まれています。

sysdiagnoseの収集に関するデバイス別の手順

ログを確認する

sysdiagnoseをMacに転送し、.tar.gzファイルを展開します。ターミナルを使って、展開したsysdiagnose内の最上位ディレクトリに移動し、以下のコマンドで関連するログイベントをフィルタリングします。

log show --archive system_logs.logarchive --info -P "p=appstoreagent|appstored|managedappdistributionagent|managedappdistributiond|ManagedClient|ManagedClientAgent|mdmclient|mdmd|mdmuserd|MuseBuddyApp|NanoSettings|Preferences|profiled|profiles|RemoteManagementAgent|remotemanagementd|Setup|'Setup Assistant'|'System Settings'|teslad|TVSettings|TVSetup|XPCAcmeService AND s=com.apple.network AND m:'ATS Violation'|'ATS FCPv2.1 violation'"

各ログイベントには、以下の3つの重要な情報が含まれています。

  • ドメイン:この接続イベントのサーバのドメイン。

  • プロセス:接続を行ったプロセス。この情報から、該当ドメインへのネットワーク接続の目的を判断できます。

  • 警告:接続で違反のあった制約と、サーバが要件を満たしていない理由(サーバが複数の要件を満たしていない場合、1回の接続で複数の警告が記録されることがあります)。

警告ログを解釈する

以下のログメッセージは、サーバが新しいTLS要件を満たしていないことを示しています。違反は、一般的なATSポリシーに対する違反(「Warning [ATS Violation]」)またはFCP v2.1の特定の基準に対する違反(「Warning [ATS FCPv2.1 violation]」)としてマークされます。

以下のようなログが企業の固有のサーバに接続するプロセスで出力されている場合、新しい要件を満たすように該当するサーバを更新する必要があります。

ログのメッセージ

意味

改善策

Warning [ATS violation]: Ciphersuite([negotiated ciphersuite]) not offered in ATS negotiated for server: www.example.com

サーバが、クライアントでATSが義務付けられている場合には提供されないPFS非対応の暗号スイートをネゴシエートしました。

サーバは、PFS暗号スイート(すべてのTLS 1.3暗号スイート、およびECDHEを使用するTLS 1.2暗号スイート)に対応している必要があります。

Warning [ATS violation]: TLS version <1.2 negotiated for server: www.example.com

サーバが、TLS 1.2より古いバージョンのTLSをネゴシエートました。

TLS 1.0/1.1は推奨されておらず、デフォルトでは提供されなくなっています。

可能な場合はTLS 1.3(最低でもTLS 1.2)をネゴシエートするように、サーバを更新してください。

Warning [ATS Violation]: ATS certificate trust requirement not satisfied for server: www.example.com

サーバの証明書が最小要件(詳細はこちら)を満たしていないため、デフォルトのサーバ信頼性評価に合格しませんでした。

要件に適合するようにサーバの証明書を更新します。

証明書が自動登録プロファイルのアンカー証明書に含まれている場合、改善策は不要です。

Warning [ATS violation]: RSA key size [n] bits is less than minimum 2048 bits for server: www.example.com

サーバの証明書が、2048ビット未満のRSA鍵で署名されています。

要件に適合するようにサーバの証明書を更新します。

Warning [ATS violation]: ECDSA key size [n] bits is less than minimum 256 bits for server: www.example.com

サーバの証明書が、256ビット未満のECDSA鍵で署名されています。

Warning [ATS violation]: Leaf certificate hash algorithm (n) is not at least SHA-256 for server: www.example.com

サーバの証明書で、ダイジェスト長が256ビット以上のSecure Hash Algorithm 2(SHA-2)が使用されていませんでした。

Warning [ATS violation]: Did not use TLS when opening connection for server: www.example.com

HTTPSではなくプレーンテキストのHTTPが使用されました。

HTTPSに対応するようにサーバを更新します。

Warning [ATS FCPv2.1 violation]: Signature algorithm rsa_pkcs15_sha1 negotiated by server: www.example.com

サーバが、署名アルゴリズムとしてrsa_pkcs15_sha1を選択しました。

最新の署名アルゴリズムを優先するように構成を更新します。

Warning [ATS FCPv2.1 violation]: Server certificate signed using signature algorithm [signature algorithm] not advertised in ClientHello for server: www.example.com

サーバの証明書が、ClientHelloでアドバタイズされていない署名アルゴリズムで署名されていました。

TLSコードポイントを持つrsa_pkcs15_sha1以外の署名アルゴリズムを使って署名されるように、サーバの証明書を更新します。

Warning [ATS FCPv2.1 violation]: TLS 1.2 negotiated without extended master secret (EMS) for server: www.example.com

サーバはTLS 1.2をネゴシエートしたものの、Extended Master Secret(EMS)拡張機能をネゴシエートしませんでした。

TLS 1.3を使用するようにサーバを更新するか、少なくともEMSがネゴシエートされるようにTLS 1.2の設定を更新します。

個別のサーバを検証する

要件を満たしていないサーバを監査で特定したら、それらのサーバを個別にテストして、具体的な違反事項を検証したり改善策が成功していることを確認したりできます。

以下のコマンドを実行します。「https://example.com:8000」の部分は、お使いのサーバまたはエンドポイントに置き換えてください。

nscurl --ats-diagnostics https://example.com:8000/

このコマンドによって、サーバがさまざまな組み合わせのATSポリシーの要件を満たしているかどうかをテストできます。FCP_v2.1モードを有効にしたATSを使用し、テストの結果を確認してください。

  • Configuring NIAP TLS package version requirements

  • ---

  • FCP_v2.1

  • Result : PASS

  • ---

結果が「PASS」(合格)の場合、サーバはすべての要件を満たしています。

接続がブロックされた原因を特定する方法の詳細はこちら

改善策

該当するサーバの所有者と協力し、TLS構成を更新します。サーバは、社内で所有している場合もあれば、デバイス管理サービスや他社のベンダーが所有者である場合もあります。

改善策のためにサーバの所有者に連絡する際は、この記事と、示された具体的な警告メッセージを共有してください。

改善策として、次のような方法が考えられます。

  • TLS 1.2以降(TLS 1.3を推奨)に対応するようにサーバを更新します。

  • TLS 1.2のみをサポートするサーバの場合、少なくとも、完全な前方秘匿性を提供する鍵交換アルゴリズム(ECDHE)、SHA-256、SHA-384、またはSHA-512を使用するAES-GCMベースのAEAD暗号スイート、およびExtended Master Secret拡張機能(RFC 7627)に対応している必要があります。

  • キーサイズ、署名アルゴリズム、有効期間に関するATSの要件を満たすように証明書を更新します。

関連資料

公開日: