ノート:

OCI Network FirewallのカスタムPEM証明書からの完全互換JSONテンプレートの作成

イントロダクション

堅牢なネットワーク・セキュリティ・ソリューションであるOracle Cloud Infrastructure Network Firewall (OCI Network Firewall)は、復号化プロファイルを含む高度なセキュリティ機能を提供します。これらのプロファイルを使用すると、ファイアウォールでSSL/TLSトラフィックを復号化および検査してセキュリティーを強化できます。

このチュートリアルでは、Privacy Enhanced Mail (PEM)証明書に基づいて完全に互換性のあるJSONテンプレートを生成するプロセスを簡略化し、不要なマップされたシークレット解析エラー(マップされたシークレット「マップされたシークレット」の失敗)を取得せずに、OCI Network Firewall内で復号化プロファイルを効果的に構成できるようにします。秘密鍵を取得できません)。

復号化ルールを効果的に使用するには、復号化プロファイルで使用するためにマップされたシークレットを確立することが不可欠です。これらのマップされたシークレットは、最初にOracle Cloud Infrastructure Vault内で作成され、その後、SSLインバウンド検査またはSSL転送プロキシ・モードにリンクされます。

OCI Network Firewallとは

Oracle Cloud Infrastructure Network Firewallは、Palo Alto Networksの次世代ファイアウォール・テクノロジ(NGFW)を使用して構築された最先端のマネージド・ファイアウォール・サービスです。OCIワークロードを保護するための機械学習を活用したファイアウォール機能を提供し、OCIで簡単に利用できます。OCIネイティブのfirewall-as-a-service製品として、OCI Network Firewallを使用すると、追加のセキュリティ・インフラストラクチャを構成および管理することなく、ファイアウォール機能を利用し始めることができます。OCI Network Firewallインスタンスは、組込みの高可用性により非常にスケーラブルで、選択した仮想クラウド・ネットワーク(VCN)およびサブネットに作成できます

ネットワーク・ファイアウォール・サービスは、受信およびサブネット間/VCN間通信の両方に対処して、クラウド環境に入るデータのフローに関する深いインサイトを提供します。本質的には、南北ネットワーク・トラフィックと東西ネットワーク・トラフィックを可視化します。

このチュートリアルに従うことで、CA証明書(中間証明書を含む)と復号化に必要な公開証明書とプライベート証明書のペアに基づいてJSONテンプレートを作成できます。

目的

前提条件

タスク1: 証明書認証を設定するためのJSONテンプレートの構成

独自の証明書から整形式のJSONファイルを作成するために、Linuxスクリプトを作成しました。詳細は、「証明書認証の設定」を参照してください。

これは、JSONファイルの外観です。

{
 "caCertOrderedList" : [
   "ROOT_CERT01_PEM_CONTENT",
   "INTERMEDIATE_CERT01_PEM_CONTENT",
   "INTERMEDIATE_CERT02_PEM_CONTENT",
 ],
 "certKeyPair": {
   "cert" : "LEAF_CERT_01_PEM_CONTENT",
   "key":   "PRIVATE_KEY_01_PEM_CONTENT"
 }
}

次のように、復号化モードに応じて、必須証明書からJSONファイルを作成する方法を学習します。

  1. 証明書を含む前述のJSONファイルを作成します。

    • Linux VMへのrootアクセス権があることを確認します。Oracle Linux 7以上をお薦めします。

    • OpenSSLをダウンロードしてインストールします。

    • Perlをダウンロードしてインストールします。

  2. 次のコードをコピーします。

    cat > certificates.json << EOF
    {
    "caCertOrderedList" : [
      "$(perl -pe 's/\n/\\n/' ca.cert.pem)"
      $(for ((i=1; i<=10; i++)); do
        intermediate_file="ca.intermediate${i}.pem"
        if [ -f "$intermediate_file" ]; then
            echo -n ", \"$(perl -pe 's/\n/\\n/' "$intermediate_file")\""
        fi
      done)
    ],
    "certKeyPair": {
      "cert" : "$(perl -pe 's/\n/\\n/' cert.pem)",
      "key":   "$(perl -pe 's/\n/\\n/' key.pem)"
    }
    }
    EOF
    
  3. 拡張子がshのLinux VMファイルに貼り付けます。

    vi create_json.sh
    
  4. ESCキーを押し、コロン:と入力してwqと入力します。Enterキーを押してファイルを書き、エディタを終了します。

  5. ファイルを作成したら、スクリプトを実行可能にする必要があります。

    chmod +x create_json.sh
    
  6. スクリプトの準備ができたので、最終的なJSONファイルを作成するために必要な証明書を用意する必要があります。スクリプトには、次のPEMファイル名が必要です。

    • CA.cert.pem: これは、内部Webサーバーの証明書にSSLインバウンド・モードで署名するために使用されたROOT CA証明書です。また、転送プロキシ・モードで使用されるルートEnterprise CAも可能です。

    • CA.intermediateX.pem: 使用されているCAに中間/連鎖証明書がある場合は、CA.intermediate1.pemCA.intermediate2.pemなどとして追加します(最大10)。これにより、クライアントがTrusted CAストアにインストールされていないことで、認証の問題が発生しないようになります。

    • cert.pem: SSLインバウンド・モードで保護するサーバーの証明書(パブリック)。または、転送プロキシ・モードのEnterprise CA証明書にすることもできます。

    • key.pem: SSLインバウンド・モードで保護するサーバーの証明書秘密キーです。または、転送プロキシ・モードのエンタープライズCA証明書の秘密キーにすることもできます。

  7. スクリプトを実行します。

    ./create_json.sh
    

    これにより、certificates.jsonという名前のファイルが生成され、OCIネットワーク・ファイアウォール・ポリシーで使用されるボールト/シークレットに簡単にコピー・アンド・ペーストできます。

確認

その他の学習リソース

docs.oracle.com/learnの他のラボをご覧いただくか、Oracle Learning YouTubeチャネルで無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスしてOracle Learning Explorerになります。

製品ドキュメントは、Oracle Help Centerを参照してください。