なぜTLSインスペクションに自分のCA証明書を使用するのか?
素晴らしい質問です! 独自のCA証明書を使用する主なケースは、トラフィックインスペクションの内部コンプライアンス、セキュリティ、ガバナンスのためです。 これは、証明書インフラストラクチャを活用して、環境を横断するトラフィックを復号化および検査できることを意味します。 リマインダー:TLSインスペクションは、RBI、CASB、DLPなどの他のCato機能の前提条件となる機能です。
非公開CA証明書によるTLSインスペクションの仕組みは?
TLSインスペクションに独自のCA証明書を使用するための主なアプローチは2つあります:
CAの秘密鍵を含む独自のCA証明書をアップロードする
Catoからの証明書署名要求(顧客署名証明書)
Cato提供の証明書をTLSインスペクションに使用するオプションも常に利用可能です。 そのオプションについての詳細はこちらからお読みいただけます。
重要な点として、複数の証明書を作成できますが、任意の時点でアクティブにできる証明書は1つだけです。
顧客環境の全体的なセキュリティ姿勢を強化することに加えて、カスタム証明書が設定されると、以下のルールでTLSインスペクションに使用されます:
ファイアウォール
マルウェア対策
IPS
CASB/DLP
RBI
これらのメソッドのいずれかでTLSインスペクションが有効にされると、ルールでバイパスされたトラフィックを除くすべてのTLSトラフィックが復号化されて検査されます。
既存のCA証明書のアップロードによるTLSインスペクション

既存の企業CA証明書をTLSインスペクション用に使用するオプションの場合、まず署名された証明書をアップロードし、暗号化されていない秘密鍵を添付します。
CA証明書がアップロードされると、署名済みのCA名、証明書チェーン、有効期限を含む証明書の詳細ビューが表示されます。
証明書の有効期間を更新するために新しい証明書をアップロードする必要がある場合、現在のアップロードされたファイルを削除し、新しい証明書と鍵ペアでプロセスを再開します。 Cato管理アプリケーションは、証明書の有効期限60日前に管理者に通知を開始し、Cato管理アプリケーションおよびメール通知で期限切れ当日、30日、7日、それを繰り返します。これにより、有効期限切れによる不便やセキュリティの欠落を避けるために役立ちます。
有効期限が60日未満の証明書には、アクティブボタンの横にオレンジ色の三角形アイコンが表示されます。 カーソルをそれに重ねると、「証明書がXX日で期限切れです」と表示されます。 証明書が期限切れになると、アクティブボタンの横に赤い円アイコンが表示され、カーソルをアイコンに重ねると「証明書は期限切れです」と表示され、アクティブボタンはグレーアウトされます。
注意:
Catoは現在、証明書を取り消すことができません。
既存のカスタム証明書をアップロードする方法:
ナビゲーションメニューから、 セキュリティ > 証明書管理をクリックします。
新規をクリックして、カスタム証明書を選択します。
カスタム証明書パネルで、カスタム証明書および証明書の秘密鍵の両方をブラウズしてアップロードします。 両方のファイルが正常にアップロードされた後、送信をクリックします。

送信をクリックすると、証明書と鍵が検証され、すべての必要な情報が正確で使用可能であることが確認されます。 アップロードされた証明書とキーは以下のために検証されます:
証明書は、中間またはCAの発行者証明書でなければなりません(証明書は他の証明書に署名できる必要があります)
証明書チェーンが存在し、ルートCAが含まれています
証明書ファイルはPEM形式でなければなりません
キー ファイルはパスワード保護されておらず、最小暗号化キー長はRSA形式で2048ビットです
秘密鍵はアップロードされたCA証明書と一致する必要があります
これらの検証のいずれかが失敗した場合、エラーが表示されます。
その証明書鍵ペアを使用して、Cato は新しい鍵ペアを生成し、カスタム中間証明書を生成します。 新しく作成された鍵ペアはインポートされた秘密鍵を使用して署名され、暗号化され、Catoのキーストアに保存されます。 新しい中間証明書が生成された後、アップロードされた未暗号化の鍵はシステムから削除され、新たに生成された中間証明書だけが使用されます。
証明書署名要求の生成
このオプションにより、Cato テナントからの証明書署名要求(CSR)を生成し、組織のCAによって署名された中間証明書で署名されるように設定できます。 このオプションは、環境のセキュリティ姿勢を高めることに加え、利用するプラットフォームにより生成されたCSRにより管理者が必要な証明書を作成しやすくします。
注意:
多くのCSRを生成できますが、1回のアカウントで1つの証明書しかアクティブにできません。
アカウント用のカスタムCSRを生成する方法:
ナビゲーションメニューから、 セキュリティ > 証明書管理をクリックします。
新規をクリックして、CSR-証明書署名要求を選択します。
CSRの作成パネルが表示されます。
次の必須フィールドに入力してください:
証明書名
組織名
一般名
注意:CSRの他のフィールドはオプションですが、すべての情報を入力するのがベストプラクティスです。
CSRを作成して、証明機関に署名してもらうためにCSRを作成をクリックします。

CSRを生成した後、署名された証明書をアップロードするオプションが表示されます。

完成したCSRは自動的に管理者のローカルマシンにダウンロードされ、証明機関に署名のためにCSRファイルを送信できます。
CAからの署名された証明書はCato管理アプリケーションにアップロードする必要があります。 証明書管理メニューに戻り証明書をアップロードをクリックします。
ローカルマシンからCato環境にアップロードして、証明書のTLSインスペクションルールでの使用を可能にするために署名された証明書を選択します。
注:署名された証明書には以下が含まれている必要があります:
次のRSAアルゴリズムのいずれかによって署名されたもの:
sha256WithRSAEncryption
sha512WithRSAEncryption
最小2048の鍵サイズで署名されたもの
以下の属性を含める必要があります:
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:TRUE
keyUsage = keyCertSign,cRLSign
以下のコマンドを使用して属性を確認できます:
openssl x509 -in signed_cert.crt -text -noout注:現時点で証明書の取り消しはサポートされていません。
モニタリングと監査
有効期限切れの証明書にはイベントは生成されませんが、証明書の生成、アップロード、または削除時に監査ログ エントリが作成されます。 アカウント > 監査証跡 > 検索フィールドで"tlsアカウント"を使って検索し、生成された証明書および削除された証明書の監査証跡を表示します:
|
動作中の見え方
カスタム証明書が機能しているとき、ブラウザは返された証明書が顧客がCato管理アプリケーションの証明書管理にアップロードしたカスタム証明書と同じであることを示します。 その後、Cato管理アプリケーションのアクティブな証明書との返された証明書の共通名と証明書のフィンガープリントを比較できます。
|
リソース
証明書を扱う際に役立ついくつかの便利なOpenSSLコマンドはこちらです:
OpenSSLを使用して秘密鍵の長さを確認する:
openssl rsa -in myCA.key -text -noout
CAと秘密鍵の検証:
openssl x509 -noout -modulus -in cert.crt | openssl md5openssl rsa -noout -modulus -in privkey.txt | openssl md5
使用箇所:
cert.crt はあなたの証明書です
privkey.txt はあなたの秘密鍵です
両方のコマンドの出力を比較します。 それらが同一である場合、秘密鍵は証明書と一致しています。
OpenSSLを使用した証明書の署名:
openssl x509 -req -sha256 -CA myCA.pem -CAkey myCA.key -in test\ request.csr -out signed_cert.crt -days 365 -CAcreateserial -extfile signed_cert_attributes.conf
使用箇所:
sha256 は署名アルゴリズムです。 Macではデフォルトはsha-1 です。 sha512 も使用可能です。
myCA.pem はあなたのCAです
myCA.key はあなたの秘密鍵です
request.csr は cc2から取得したcsrファイルです
signed_cert.crt はあなたの新しい署名済み証明書です
signed_cert_attributes.conf ファイルは次のサンプルコンテンツを含んでいます:
basicConstraints=CA:TRUEauthorityKeyIdentifier=keyid,issuerkeyUsage = keyCertSign,cRLSign

