/data
新しいLinux RHEL 7.7サーバーに5TBのデータをインストールしました。
私はselinuxを試行として使用しており、/data
Sambaを共有しましたが、ほとんどうまくいきます。しかし、いくつかのフォルダに深く入ると、/data/
アクセスは拒否されます。その特定のサブフォルダで操作を実行すると、chcon -t samba_share_t
Sambaはそのサブフォルダに移動します。もう少し深く入ってみると同じ問題です。
/data/
私のフォルダの下にあるすべてのアイテムを正しく作成し、samba_share_t
Sambaでのみ機能するようにするにはどうすればよいですか?
selinuxに疲れました。
ベストアンサー1
Sambaでのみ使用している場合は、/data
コンテキストマウントオプションを使用してファイルコンテキストをすべてのファイルsamba_share_t
に設定できます/data
。 context="system_u:object_r:samba_share_t:s0"
fstabから。コンテキストオプションは、マウント時に既存のファイルラベルを上書きしますが、ディスクの内容は変更しません。コンテキストマウント時にファイルラベルを変更することはできません。すべてのファイルは同じラベルを持ちます。
インストールオプションがオプションでない場合は、ファイルコンテキストを設定する一般的な方法は、.semanage fcontext
を使用してsemanage fcontext -a -t samba_share_t '/data(/.*)?'
データベースにコンテキストを追加し、を使用して新しいファイルコンテキストを(再帰的に)適用することですrestorecon -r /data
。
(Sambaに加えて)データにアクセスする他のユーザー/サーバーがある場合は、いくつかのオプションがあります。
有効に
samba_export_all_ro
するsamba_export_all_rw
ブール値非常に広範な読み取り専用アクセスまたは読み取り/書き込みアクセスが可能です(Sambaが最初にファイルを読み取ることができると仮定すると、SELinuxルールは標準の権限確認後に適用されます)。 2 つのブール値のいずれかを有効にすると、セキュリティ ポリシーがより許容的に適用されます。上記のようにマウントオプションを使用し、他のプロセスが
samba_share_t
。その他実行中のプロセス許可モード(プロセス/サービスを再起動する必要があります)ログエントリを生成します。その後、使用audit2allow
必要なポリシーを策定します。ポリシーを挿入して他のポリシーをリセットしてください。実装するモデル。 AVCエラーがさらに発生した場合は、このプロセスを繰り返してカスタムポリシーを関連付けることができます。これは他の方法でも適用できます(Sambaは異なるコンテキストを持つファイルにアクセスすることを許可しますが、
/data
間違ったコンテキストを持つファイルと同じ問題に直面する可能性があります)。新しいファイルコンテキストと追加ドメインに必要なアクセス権を定義するカスタムポリシーを作成します。