6.10. MLS ユーザーによる下位レベルのファイルの編集を許可する


デフォルトでは、MLS ユーザーは、クリアランス範囲の下限値を下回る機密レベルのファイルに書き込むことはできません。シナリオで、ユーザーによる下位レベルのファイルの編集を許可する必要がある場合は、ローカル SELinux モジュールを作成することで実行できます。ただし、ファイルへの書き込みにより、機密レベルがユーザーの現在の範囲の下限まで上昇します増加します。

前提条件

  • SELinux ポリシーが mls に設定されている。
  • SELinux モードが Enforcing に設定されている。
  • policycoreutils-python-utils パッケージがインストールされている。
  • 検証用の setools-console パッケージおよび audit パッケージ。

手順

  1. オプション: トラブルシューティングを実施しやすくするために、Permissive モードに切り替えます。

    # setenforce 0
  2. ~/local_mlsfilewrite.cil などのテキストエディターで新しい .cil ファイルを開き、以下のカスタムルールを挿入します。

    (typeattributeset mlsfilewrite (_staff_t_))

    staff_t は、別の SELinux タイプに置き換えることができます。ここで SELinux タイプを指定することで、下位レベルのファイルを編集できる SELinux ロールを制御できます。

    ローカルモジュールをより適切に整理するには、ローカル SELinux ポリシーモジュール名で接頭辞 local_ を使用します。

  3. ポリシーモジュールをインストールします。

    # semodule -i ~/local_mlsfilewrite.cil
    注記

    ローカルポリシーモジュールを削除するには、semodule -r ~/local_mlsfilewrite を使用します。モジュール名を参照する場合は、接頭辞 .cil なしで参照する必要がある点に注意してください。

  4. オプション: 以前に permissive モードに戻した場合は、enforcing モードに戻ります。

    # setenforce 1

検証

  1. インストールされている SELinux モジュールのリストでローカルモジュールを検索します。

    # semodule -lfull | grep "local_mls"
    400 local_mlsfilewrite  cil

    ローカルモジュールの優先度は 400 であるため、semodule -lfull | grep -v ^100 コマンドを使用してリスト表示することもできます。

  2. カスタムルールで定義されているタイプ (staff_t など) に割り当てられたユーザーとしてログインします。
  3. 機密レベルが低いファイルに書き込みを試みます。これにより、ファイルの区分レベルがユーザーのクリアランスレベルまで上昇します。

    重要

    検証に使用するファイルには、設定が間違っており、ユーザーが実際に認証なしにファイルにアクセスできてしまう場合に備え、機密情報を含めないようにしてください。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.