概要
Catoクライアントのデバイス認証を設定する際、証明書関連の問題が発生する可能性があります。この文章では基本的なデバイス証明書トラブルシューティングについて説明します。 この機能の詳細については、認証された企業デバイスの制御をご覧ください。
トラブルシューティング
以下はデバイス証明書の問題を調査中に実行可能なトラブルシューティングステップです。
クライアント接続ポリシーを使用してデバイス認証要件を管理することについては、こちらを参照してください。デバイス証明書の各OS設定は、クライアント接続ポリシーを使用して行う必要があります。
デバイスポスチャの下で、エンドユーザーのデバイスにインストールされた証明書について(これらのクライアントバージョンでサポートされている)、デバイスチェックを作成できます。 このチェックは、アカウント用に定義された署名証明書のいずれかに一致する証明書がデバイスにインストールされているかを検証します。 詳細な情報については、デバイス証明書デバイスチェックの作成を参照してください。
CMAにアップロードされた全てのCA証明書は、アクセス>クライアントアクセス>デバイス認証の下にリストされています。 これらはデバイス証明書に署名した認証局の証明書です。 "詳細を表示"アイコンをクリックすると、証明書の詳細が読みやすい形式でリストされます。

CA証明書が期限切れでないことを確認することが重要です。 もしそうであれば、PoPは証明機関がデバイス証明書に有効な期間内に署名していればのみ接続を許可します。 デバイス証明書の場合、Catoは期限切れの証明書でクライアントが接続することを許可しません。 詳しい情報については、期限切れ証明書の処理をご覧ください。
必要なCA証明書がCMAにアップロードされていることを確認する方法の一つとして、クライアント証明書チェーン(認証パス)を確認することが挙げられます。 この例では、クライアント証明書は"CN= Issuing CA Client"の中間証明書で署名され、その中間証明書は"CN= Root CA"のルート証明書で署名されています。これらはCMAにインストールされている証明書と一致する必要があります。
RFC3280によると、クライアント証明書の認証キー識別子はIssuerのSubject Key Identifierと一致している必要があります(この場合、中間証明書)。 これもまた、正しい中間およびルートCA証明書がCMAにアップロードされていることを確認する方法です。

設定が良好であることと証明書が有効であることを確認した後に、クライアントのOS上に証明書が存在することを検証します。
注意:証明書の配布に関する詳細情報は、デバイス証明書の配布とインストールをご覧ください。
Windows:
Windowsでは、デバイス証明書はローカルコンピュータにインストールされる必要があり、現在のユーザーにインストールされてはいけません。 デバイス証明書の存在を確認するための二つの方法があります:
コマンドプロンプトを開いて、certutil -store My を入力してデバイスにある全ての利用可能なユーザー証明書をリスト表示します。 以下の例では、最初の証明書発行者がステップ#2でインストールされたCA証明書の件名と一致しています。 そうでない場合、クライアントがデバイス上に必要な証明書を持っていません。
Certutilは、証明書をリスト、取り消し、または更新するために使用できる非常に強力なツールです。 ツールに関する更なる情報はこちらをご覧ください。
certutilを使用して、以下のコマンドを実行することでデバイスにPFX(p12)証明書ファイルをインストールすることもできます。 これは、Windowsデバイスへのデバイス証明書の配布で説明されているように、Windowsデバイスに証明書をインストールするための推奨方法です。
/certutil -csp "Microsoft Software Key Storage Provider" -importpfx My <path-to-p12-file> NoExportまた、Windowsスタートメニューからcertlm.mscを入力することで、デバイスにインストールされている証明書を確認することができます。 これにより、ローカルコンピュータにインストールされている全ての証明書が表示されます。 デバイス証明書はローカルコンピュータの個人/証明書フォルダにインストールされ、PFXファイルがインストールする必要がある秘密鍵を含む必要があります。

MacOSおよびiOS:
任意のiOSバージョン:
iOSデバイスが、以前にMDMまたはApple Configurator経由で配布された設定プロファイルを含んでいることを確認します。 プロファイルは一般 > VPN & デバイス管理 > iOS18用の設定プロファイルにあります。 古いiOSバージョンでのプロファイルの場所の検索については、iOSユーザーガイドを参照してください。

VPNプロファイルが正しく設定されていることを確認してください。 VPNの設定はデバイスタイプ(macOS または iOS)ごとに構成する必要があります:
接続タイプ: カスタムSSL
識別子:
macOSの場合: com.catonetworks.mac.CatoClient
iOSの場合: CatoNetworks.CatoVPN
サーバー: vpn.catonetworks.net
アカウント: アカウント名を追加します。 例えば: CatoNetworksAccount。
iOSクライアントv5.6以降の場合: アカウントは"CatoClientVPN"として設定します。
プロバイダー・バンドル識別子:
macOSの場合: com.catonetworks.mac.CatoClient.CatoClientSysExtension
iOSの場合: CatoNetworks.CatoVPN.CatoVPNNEExtenstion
プロバイダー指定要件: なし
ユーザー認証: 証明書
プロバイダータイプ: パケットトンネル
クレデンシャル: '証明書' ペイロードから証明書を選択します
プロキシ設定: なし
VPNプロファイル設定の詳細については、macOSおよびiOSデバイスへのデバイス証明書の配布を参照してください。
macOS v5.5以上:
macOSクライアントv5.5から、証明書はMDM配布なしでデバイスに直接インストール可能です。 証明書と秘密鍵はキーチェーンアクセスで見つけることができます。
デバイス証明書は説明されているようにmacOSデバイスに配布される場合があります。 デバイス証明書の配布およびMicrosoft Active Directoryを経由してWindows Enterprise CAを使用します。 詳細については: 構成マネージャーから独立してMacコンピュータ用クライアント証明書を作成して展開する方法
ユーザー証明書はキーチェーンアクセスのログインセクションにあります。
証明書が「常に信頼」に設定されていることを確認してください。
秘密鍵のアクセス制御設定がCatoクライアントまたは‘すべてのアプリケーションがこのアイテムにアクセスするのを許可’に設定してあることを確認してください。



OID検証
OID検証はアカウントの高度な設定で構成されています。 設定は証明書の拡張(OID)を検証し、一つまたは複数の承認された値を指定します。
デフォルトでは、OID検証は無効です。 この記事で説明されている形式を使用して、OID検証を設定できますアカウントの高度な設定の作業。 次の例では、証明書が証明書テンプレート情報拡張(1.3.6.1.4.1.311.21.7)を含むことを確認し、二つの承認された値のいずれかが含まれています。
cert_ext_obj(cert, "1.3.6.1.4.1.311.21.7") == "1.3.6.1.4.1.67291.458.7;1.3.6.1.4.1.58472.73142.918.5"
クライアント側では、必要なOIDがクライアント証明書に含まれていることを確認してください。
Windowsでは、Windows証明書マネージャが証明書の詳細を表示し、必要なOID拡張が含まれていることを確認し、期待される値の一つを含んでいます。 “certutil -v -store My” コマンドも証明書に関する詳細情報を提供し、その中にOID値が含まれています。
macOSで、キーチェーンアクセスまたは適切な証明書検査ツールを使用して、証明書拡張を確認します。
以下のcertutil出力は、証明書拡張OIDとそれに関連するテンプレート情報を示しています。
1.3.6.1.4.1.311.21.7: Flags = 0, Length = 30
証明書テンプレート情報
Template=1.3.6.1.4.1.58472.73142.918.5
Major Version Number=100
Minor Version Number=36