特定のSELinux "fcontext"を使用してファイルシステム内のすべてのファイルを見つけて一覧表示する方法

特定のSELinux

SELinuxは、特定のファイルコンテキスト()でマークされたファイルシステム内のすべてのファイルをsetools見つけるために使用する必要があるコマンド(おそらく)に関する情報を見つけることができません。fcontext


今私はできます手動ファイルとそのファイルをfcontext一覧表示し、表示/etc/selinux/targeted/contexts/filesしたい特定のコンテンツを一覧表示しますgrepfcontext

[root@FedPadSSD files]# cat file_contexts |grep ifconfig_exec_t
/bin/ip --      system_u:object_r:ifconfig_exec_t:s0
/sbin/ip        --      system_u:object_r:ifconfig_exec_t:s0
/sbin/tc        --      system_u:object_r:ifconfig_exec_t:s0
/usr/bin/ip     --      system_u:object_r:ifconfig_exec_t:s0
/usr/sbin/ip    --      system_u:object_r:ifconfig_exec_t:s0
/usr/sbin/tc    --      system_u:object_r:ifconfig_exec_t:s0
/sbin/ethtool   --      system_u:object_r:ifconfig_exec_t:s0
/sbin/ifconfig  --      system_u:object_r:ifconfig_exec_t:s0
/sbin/iwconfig  --      system_u:object_r:ifconfig_exec_t:s0
/sbin/mii-tool  --      system_u:object_r:ifconfig_exec_t:s0
/usr/sbin/ethtool       --      system_u:object_r:ifconfig_exec_t:s0
/usr/sbin/ifconfig      --      system_u:object_r:ifconfig_exec_t:s0
/usr/sbin/iwconfig      --      system_u:object_r:ifconfig_exec_t:s0
/usr/sbin/mii-tool      --      system_u:object_r:ifconfig_exec_t:s0
/sbin/ipx_configure     --      system_u:object_r:ifconfig_exec_t:s0
/sbin/ipx_interface     --      system_u:object_r:ifconfig_exec_t:s0
/sbin/ipx_internal_net  --      system_u:object_r:ifconfig_exec_t:s0
/usr/sbin/ipx_configure --      system_u:object_r:ifconfig_exec_t:s0
/usr/sbin/ipx_interface --      system_u:object_r:ifconfig_exec_t:s0
/usr/sbin/ipx_internal_net      --      system_u:object_r:ifconfig_exec_t:s0

これを行う際の問題は、ほとんどの場合、何かが間違っている、欠けている、または不完全なように見えることです。手動SELinuxは「データベース」(より良い言葉がない)に関連しているからです。 setoolsしたがって、システム全体の構成ファイルを使用せずに、これを実行できるパッケージまたは関連パッケージにすでに存在するものがあるかどうか疑問に思います。

ベストアンサー1

semanage fcontext -l | grep whatever_exec_tおそらく、特定のコンテキストのタグルールを見つけるための最良の方法でしょう。

タグルールの代わりに現在のファイルコンテキストを取得するには、ls -ZSELinux対応のfindサポート-context <glob>テストと%Zフォーマット指定子を使用できます-printf。コンテキスト文字列全体が一致するため、<glob>ワイルドカードは型を一致させるためにのみ使用されます。私のCentos 7.3の例:

#find / -xdev -type f -context '*ifconfig_exec_t*' -printf '%-50Z%p\n'
system_u:object_r:ifconfig_exec_t:s0              /usr/sbin/ip
unconfined_u:object_r:ifconfig_exec_t:s0          /usr/sbin/ifconfig
system_u:object_r:ifconfig_exec_t:s0              /usr/sbin/ethtool
system_u:object_r:ifconfig_exec_t:s0              /usr/sbin/iw
unconfined_u:object_r:ifconfig_exec_t:s0          /usr/sbin/mii-tool
system_u:object_r:ifconfig_exec_t:s0              /usr/sbin/tc

おすすめ記事