今日の修正

  • seedit-unconfinedコマンドを作った
    • ドメインが用意されてても、allowpriv allしてるものがあるので、注意を促すため。
    • appaprmorのunconfinedのパクリ
      • seedit-unconfined -e :起動中のプロセスのドメイン+unconfinedなものはその旨表示
      • seedit-unconfined -n : TCP/UDPで接続待ちしてるプロセスのドメイン表示+unconfinedなものはその旨表示
例:
#seedit-unconfined -n 
/usr/sbin/smbd  Unconfined(initrc_t)
/sbin/portmap   Confined by portmap_t
/usr/sbin/sendmail.sendmail     Confined by sendmail_t

ネットワーク接続待ちしてるプロセス一覧表示。
この場合、smbdが守られてないことが分かる。

  • seedit-loadコマンド
    • seedit-loadで、設定を反映。
    • seedit-load -i で、全ファイルのラベル付け初期化
    • seedit-load -tで、コンパイラのテスト
  • booleanのサポート

簡易Simplified Policyのために。
targetedポリシ並に,
デーモン毎にSELinux無効/有効を簡単に切り替えられるようにしたい。

domain_prefix _disable_transのサポート。

program文でドメイン遷移を定義した場合には、

domain_prefix _disable_transというbooleanが定義される。

unconfinedなドメインからは遷移しないように調整可能。
(dx実行の時は遷移する)

例:
{
domain httpd_t;
program /usr/sbin/httpd;

boolean httpd_disable_transが定義される。
これをセットすると、Apacheドメインが割り当てられなくなる