第4章 Red Hat Insights クライアントデータリダクション

Red Hat Insights クライアントは、データリダクションオプションを提供します。RHEL のバージョンによっては、データリダクションを制御する 方法が 2 つあります。

表4.1 データリダクションアクションおよび RHEL バージョン

RHEL のバージョンリダクション方法

RHEL 6.9、7.8、8.2、およびそれ以前

設定ファイル

remove.conf

RHEL 6.10、7.9、8.3 以降

YAM ファイル

file-redaction.yaml

file-content-redaction.yaml

remove.conf 設定ファイルまたは YAML ファイルを作成する必要があります。デフォルトではインストールされていません。

4.1. Red Hat Insights クライアントリダクションの設定

Red Hat Insights クライアントは、データリダクションオプションを提供します。RHEL のバージョンによっては、データリダクションを制御する 方法が 2 つあります。

4.2. リダクションおよび remove.conf ファイルの使用

設定ファイルを使用する場合、redaction は /etc/insights-client/remove.conf の内容によって制御されます。オプションとして、別の redaction 設定ファイルを使用するように Insights クライアントを設定できます。

リダクション設定ファイルのエントリーに基づいて、以下のいずれかを指定できます。

  • データの収集から特定のファイルとそのコンテンツを削除する
  • データ収集から選択したコマンド出力を削除
  • パターンと一致する情報の削除
  • 特定の文字列をデフォルトの keyword 文字列に置き換え

消去でリダクションを設定する場合、リダクションされた情報はアーカイブファイルに記録されることはありません。リダクションは、アーカイブファイルでデータをキャプチャーする前に、データを事前処理して実行します。

文字列置換によるリダクションの場合、アーカイブファイルは、Red Hat Insights に送信される前に Python SoS プロセスが処理します。

備考
正規表現の一致は remove.conf ファイルではサポートされていません。

コマンドラインオプションを使用して、アーカイブファイルの出力を制御できます。たとえば、アーカイブファイルを生成できますが、Red Hat Insights に送信できません。アーカイブが送信される前に、再アクションの結果を検査して検証できます。

備考
ファイルおよびコマンドの出力を訂正すると、それらの情報は Insights ルールと比較できません。これらの省略により、Insights はシステムに適用される問題を特定できない可能性があります。

4.3. remove.conf を使用した Red Hat Insights クライアントリダクションの設定

/etc/insights-client/remove.conf ファイルはリダクションを制御します。Insights クライアントリダクションを使用する前に、このファイルを作成する必要があります。

手順

  1. エディターを使用して、/etc/insights-client/remove.conf ファイルテンプレートを作成します。

    [remove]
    files=/etc/cluster/cluster.conf,/etc/hosts
    commands=/bin/dmesg,/bin/hostname
    patterns=password,username
    keywords=super$ecret,ultra$ecret+
  2. オプションで、redaction のアーカイブに適用しない行を削除します。
  3. remove.conf ファイルのパーミッションが root 所有者のみに設定されていることを確認します。

    [root@insights]# ll remove.conf
    -rw-------. 1 root root 145 Sep 25 17:39 remove.conf
  4. 利用可能な各リダクションオプションを適用する方法については、その他のリソースを参照してください。

4.3.1. 特定のファイルの内容の重複排除

remove.conf ファイルを使用して、赤のある特定のファイルを選択できます。選択したファイルとその内容はアーカイブファイルに含まれません。

前提条件

手順

  1. エディターを使用して /etc/insights-client/remove.conf ファイルを開きます。

    [remove]
    files=/etc/cluster/cluster.conf,/etc/hosts
    commands=/bin/dmesg,/bin/hostname
    patterns=password,username
    keywords=super$ecret,ultra$ecret+
  2. files= の行で、サブスクライブするファイルをアーカイブファイルから追加または削除します。

    注記

    各ファイル名はコンマで区切られています。スペースは使用しないでください。

  3. Insights クライアントアーカイブからファイルを行わないようにするには、files= の行を削除します。
  4. ファイルを保存してから閉じます。

4.3.2. 特定のコマンドの取り消し

remove.conf ファイルを使用して編集した特定のコマンドを選択できます。これらのコマンドの出力はアーカイブファイルに含まれません。

前提条件

手順

  1. エディターを使用して /etc/insights-client/remove.conf ファイルを開きます。

    [remove]
    files=/etc/cluster/cluster.conf,/etc/hosts
    commands=/bin/dmesg,/bin/hostname
    patterns=password,username
    keywords=super$ecret,ultra$ecret+
  2. commands= の行で、サブスクライブするコマンドをアーカイブファイルから追加または削除します。

    注記

    各コマンド名はコンマで区切られています。スペースは使用しないでください。

  3. Insights クライアントアーカイブからコマンドを行わないようにするには、command= の行を削除します。
  4. ファイルを保存してから閉じます。

4.3.3. 文字列パターンの編集

remove.conf ファイルを使用して編集した特定の文字列パターンを選択できます。指定する文字列パターンは、行全体を削除することでアーカイブファイルから編集されます。たとえば、文字列パターンが name の場合、そのパターンは hostnamefilenameusernameに一致し、これらを編集します。

注記

正規表現およびワイルドカード一致 (egrep) はサポートされません。

前提条件

手順

  1. エディターを使用して /etc/insights-client/remove.conf ファイルを開きます。

    [remove]
    files=/etc/cluster/cluster.conf,/etc/hosts
    commands=/bin/dmesg,/bin/hostname
    patterns=password,username
    keywords=super$ecret,ultra$ecret+
  2. patterns= の行で、アーカイブファイルからやり直す文字列パターンを追加します。

    注記

    各パターンは、コンマで区切ります。スペースは使用しないでください。

  3. Insights クライアントアーカイブからパターンをなくすには、patterns= の行を削除します。
  4. ファイルを保存してから閉じます。

4.3.4. キーワードの重複

remove.conf ファイルを使用することで編集した特定のキーワードを選択できます。指定したキーワードは、アーカイブファイルで keyword0keyword1keyword2 に置き換えられます。

前提条件

手順

  1. エディターを使用して /etc/insights-client/remove.conf ファイルを開きます。

    [remove]
    files=/etc/cluster/cluster.conf,/etc/hosts
    commands=/bin/dmesg,/bin/hostname
    patterns=password,username
    keywords=super$ecret,ultra$ecret+
  2. keywords= の行で、アーカイブファイルから希望のキーワードを追加します。

    注記

    各キーワードはコンマで区切ります。スペースは使用しないでください。

  3. Insights クライアントアーカイブからのキーワードをなくすには、keyword= の行を削除します。
  4. ファイルを保存してから閉じます。

4.3.5. remove.conf ファイルの検証

remove.conf ファイルを検証して、リダクションに使用する前に構文が正しいことを確認できます。

前提条件

手順

  1. insights-client オプションを指定して --validate コマンドを入力します。

    [root@insights]# insights-client --validate
  2. コマンドに表示されるエラーをすべて修正します。

4.4. リダクションおよび YAML ファイルの使用

リダクションに YAML ファイルを使用する場合は、2 つのファイルがリダクション操作を制御します。編集するコンテンツに応じて、1 つまたは両方のファイルを使用できます。指定された内容は、アーカイブファイルでキャプチャーされる前に再取得されます。

表4.2 リダクションおよび YAML ファイル

YAML ファイル説明

/etc/insights-client/file-redaction.yaml

このファイルには、再適用するコマンドおよびファイルの一覧が表示されます。一覧表示されているコマンドまたはファイルの出力が読み込まれます。

/etc/insights-client/file-content-redaction.yaml

このファイルでは、パターンのリダクションおよびキーワード置換を定義します。パターンのリダクションは、パターン一致または正規表現の一致で行われます。キーワード置換は、キーワードを汎用識別子に置き換える Python SoS プロセスによって行われます。

4.5. YAML ファイルを使用した Red Hat Insights クライアントのリダクションの設定

2 つの YAML ファイルは Insights クライアントリダクションを制御します。RHEL 6.10、7.9、8.3 以降でリダクションを使用する前に、各 YAML ファイルを作成する必要があります。

4.5.1. YAML コマンドおよびファイルリダクションの設定

/etc/insights-client/file-redaction.yaml ファイルは YAML ファイルです。再適用するコマンドおよびシステムファイルを一覧表示します。一覧表示されたコマンドまたはファイルの出力は、アップロードしたアーカイブファイルには含まれません。

キーワード置換またはパターン一致に基づいて再調整する場合は、「YAML パターンおよびキーワードリダクションの設定」を参照してください。

前提条件

  • YAML 構文の基本を理解している必要があります。YAML の説明は、この手順の範囲外です。
  • /etc/insights-client/ にファイルを作成するには、root パーミッションまたは同等のパーミッションが必要です。

手順

  1. エディターを使用して、/etc/insights-client/file-redaction.yaml ファイルを作成します。

    # file-redaction.yaml
    ---
    # Exclude the entire output of commands
    #   Specify the full command path or the symbolic name in .cache.json
    
     commands:
    - /bin/rpm -qa
    - /bin/ls
    - ethtool_i
    
    # Exclude the entire output of files
    #  Specify the full filename path or the symbolic name in .cache.json
    
    files:
    - /etc/audit/auditd.conf
    - cluster_conf

  2. file-redaction.yaml ファイルのパーミッションが root 所有者のみに設定されていることを確認します。

    [root@insights]# ll file-redaction.yaml
    -rw-------. 1 root root 145 Sep 25 17:39 file-redaction.yaml

4.5.2. YAML パターンおよびキーワードリダクションの設定

この /etc/insights-client/file-content-redaction.yaml ファイルは、パターンリダクションおよびキーワード置換に基づいてリダクションを定義する YAML ファイルです。パターンのリダクションは、パターン一致または正規表現の一致で行われます。キーワード置換は、キーワードを汎用識別子に置き換える Python SoS プロセスによって行われます。

コマンド出力または特定のファイルに基づいて再調整する場合は、「YAML コマンドおよびファイルリダクションの設定」を参照してください。

前提条件

  • YAML 構文の基本を理解している必要があります。YAML の説明は、この手順の範囲外です。
  • /etc/insights-client/ にファイルを作成するには、root パーミッションまたは同等のパーミッションが必要です。

手順

  1. エディターを使用して、/etc/insights-client/file-content-redaction.yaml ファイルを作成します。

    # file-content-redaction.yaml
    ---
    # Pattern redaction per matching line
    #  Lines that match a pattern are excluded from files and command output.
    #  Patterns are processed in the order that they are listed.
    # Example
    
    patterns:
     - "a_string_1"
     - "a_string_2"
    
    # Regular expression pattern redaction per line
    #  Patterns with regular expressions (regex) are wrapped with "regex:"
    # Example
    
    patterns:
     regex:
     - "abc.*def"
     - "localhost[[:digit:]]"
    
    
    # Keyword replacement redaction
    #  Replace keywords in files and command output with generic identifiers
    #  Keyword does not support regex
    # Example
    
    keywords:keywords:
    - "1.1.1.1"
    - "My Name"
    - "a_name"

  2. file-content-redaction.yaml ファイルのパーミッションが root 所有者のみに設定されていることを確認します。

    [root@insights]# ll file-content-redaction.yaml
    -rw-------. 1 root root 145 Sep 25 17:39 file-content-redaction.yaml

4.6. Insights クライアントアーカイブの検証

アーカイブファイルの内容を確認できます。アーカイブファイルを検査して、Red Hat Insights に送信されるデータを確認できます。

4.6.1. アップロード前のアーカイブの検証

Red Hat Insights に送信される前にアーカイブを検証するには、クライアントを実行し、アップロードせずにファイルを保存します。これにより、クライアントが Insights に送信する情報を表示し、難読化またはリダクション設定を確認することができます。

アーカイブは /var/tmp/ ディレクトリーに保存されます。insights-client ファイルが完了するとファイル名が表示されます。

前提条件

手順

  1. --no-upload オプションを指定して insights-client コマンドを入力します。

    [root@insights]# insights-client --no-upload

    リダクションまたは難読化が適用されると、情報メッセージが表示されます。

    WARNING: Excluding data from files
    Starting to collect Insights data for ITC-4
    WARNING: Skipping patterns found in remove.conf
    WARNING: Skipping command /bin/dmesg
    WARNING: Skipping command /bin/hostname
    WARNING: Skipping file /etc/cluster/cluster.conf
    WARNING: Skipping file /etc/hosts
    Archive saved at /var/tmp/qsINM9/insights-ITC-4-20190925180232.tar.gz
  2. Archive saved at メッセージに示されるように、一時ストレージディレクトリーに移動します。

    [root@insights]# cd /var/tmp/qsINM9/
  3. 圧縮ファイル tar.gz を展開します。

    [root@insights]# tar -xzf insights-ITC-4-20190925180232.tar.gz

    この結果、ファイルを格納する新規ディレクトリーが作成されます。

4.6.2. アップロード後の Insights クライアントアーカイブの検証

クライアントを実行してファイルを保存すると、Red Hat Insights に送信した後の検査用にアーカイブを保存できます。これにより、クライアントが Insights に送信する情報を検証し、難読化またはリダクション設定を確認することができます。

前提条件

手順

  1. --keep-archive オプションを指定して insights-client コマンドを入力します。

    [root@insights]# insights-client --keep-archive

    このコマンドは、情報メッセージを表示します。

    Starting to collect Insights data for ITC-4
    Uploading Insights data.
    Successfully uploaded report from ITC-4 to account 6229994.
    Insights archive retained in /var/tmp/ozM8bY/insights-ITC-4-20190925181622.tar.gz
  2. Insights archive retained in メッセージに示されるように、一時ストレージディレクトリーに移動します。

    [root@insights]# cd /var/tmp/ozM8bY/
  3. 圧縮ファイル tar.gz を展開します。

    [root@insights]# tar -xzf insights-ITC-4-20190925181622.tar.gz

    この結果、ファイルを格納する新規ディレクトリーが作成されます。