6.3. リダクションに YAML ファイルの使用

リダクションに YAML ファイルを使用する場合は、2 つのファイルでリダクションのアクションが制御されます。

  • file-redaction.yaml
  • file-content-redaction.yaml

リダクションするコンテンツに合わせて、1 つまたは両方のファイルを使用できます。Python SoS プロセスが実行すると、アーカイブファイルにキャプチャされる前に、指定されたコンテンツのリダクションが行われます。

注記

Red Hat Enterprise Linux 6.10、7.9、8.3 以降を実行している場合は、このリダクション方法を使用します。

YAML ファイルの仕組み

/etc/insights-client/file-redaction.yaml には、リダクションを行うコマンドとファイルの一覧が表示されます。プロセスが実行すると、リストされたコマンドとファイル出力のリダクションが行われます。

/etc/insights-client/file-content-redaction.yaml は、パターンのリダクションとキーワードの置換を定義します。パターンリダクションの場合、プロセスは、YAML ファイルで指定されたものと一致するパターンまたは正規表現をリダクションします。キーワード置換の場合、プロセスは指定されたキーワードを汎用識別子に置き換えます。

6.3.1. ファイル編集のための YAML コマンドの設定

/etc/insights-client/file-redaction.yaml ファイルには、リダクションを行うコマンドとシステムファイルが一覧表示されます。Python SoS プロセスが実行するとき、リストされたコマンドまたはファイルの出力は、アップロードされたアーカイブファイルに含まれません。

前提条件

  • YAML 構文の基本を理解している。YAML の説明は、この手順の範囲外です。
  • システムへのルートレベルのアクセスがある。

手順

  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

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

/etc/insights-client/file-content-redaction.yaml ファイルは、パターンリダクションとキーワード置換の 2 つの方法を使用してファイルをリダクションします。パターンリダクションは、パターンマッチまたは正規表現マッチのいずれかを使用します。キーワード置換では、Python SoS プロセスがキーワードを一般的な識別子に置き換えます。

前提条件

  • YAML 構文の基本を理解している。YAML の説明は、この手順の範囲外です。
  • システムへのルートレベルのアクセスがある。

手順

  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
    #  Use "regex:" to wrap patterns with regular expressions"
    # 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:
    - "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