tomoyotitle.png

例外ポリシー構文

acl_group

このディレクティブは、アクセス許可のグループを指定します。このディレクティブで指定されたアクセス許可は、ドメインポリシーから use_group ディレクティブを指定することで参照されます。このディレクティブは、グループ番号に続けて、ドメインポリシー構文で説明されているアクセス許可を指定します。

以下の例では use_group 0 という指定が行われているドメインに対して /dev/null の参照を許可しています:

acl_group 0 file read /dev/null

aggregator

このディレクティブは、複数のプログラムを同一視するために使用します。このディレクティブは、よく似た振る舞いをする一連のプログラムを集約するためのものです。

以下の例では /usr/bin/tac/usr/bin/cat として扱うように指定しています:

aggregator /usr/bin/tac /usr/bin/cat

reset_domain

このディレクティブは、指定されたプログラムが実行された場合に指定された名前空間で動作させるために使用します。

可能な組み合わせ:

以下の例では /usr/sbin/sshd が実行されると </usr/sbin/sshd> ドメインに遷移するように指定しています:

reset_domain /usr/sbin/sshd from any

no_reset_domain

このディレクティブは reset_domain ディレクティブの効果を打ち消すために使用します。

可能な組み合わせ:

以下の例ではドメイン名が /bin/mail で終わるドメインから /usr/sbin/sendmail.sendmail が実行された場合には </usr/sbin/sendmail.sendmail> ドメインへと遷移しないようにしています:

reset_domain /usr/sbin/sendmail.sendmail from any
no_reset_domain /usr/sbin/sendmail.sendmail from /bin/mail

initialize_domain

このディレクティブは、指定されたプログラムが実行された場合に、現在の名前空間のルートの子ドメインで動作させるために使用します。

可能な組み合わせ:

以下の例では <kernel> 名前空間のドメインから /usr/sbin/sshd が実行されると <kernel> /usr/sbin/sshd ドメインに遷移するように指定しています:

initialize_domain /usr/sbin/sshd from any

no_initialize_domain

このディレクティブは initialize_domain ディレクティブの効果を打ち消すために使用します。

可能な組み合わせ:

以下の例ではドメイン名が /bin/mail で終わるドメインから /usr/sbin/sendmail.sendmail が実行された場合には <kernel> /usr/sbin/sendmail.sendmail ドメインへと遷移しないようにしています:

initialize_domain /usr/sbin/sendmail.sendmail from any
no_initialize_domain /usr/sbin/sendmail.sendmail from /bin/mail

keep_domain

このディレクティブは、指定されたプログラムが実行された場合にドメイン遷移を行わせないようにするために使用します。

可能な組み合わせ:

以下の例では <kernel> /usr/sbin/sshd /bin/bash ドメインからプログラムが実行されてもドメイン遷移を行わないように指定しています:

keep_domain any from <kernel> /usr/sbin/sshd /bin/bash

no_keep_domain

このディレクティブは keep_domain ディレクティブの効果を打ち消すために使用します。

可能な組み合わせ:

以下の例では /bin/cat が <kernel> /usr/sbin/sshd /bin/bash ドメインから実行された場合にはドメイン遷移を行うように指定しています:

keep_domain any from <kernel> /usr/sbin/sshd /bin/bash
no_keep_domain /bin/cat from <kernel> /usr/sbin/sshd /bin/bash

address_group

このディレクティブは、IPアドレスのグループを定義します。

例えば、例外ポリシーで以下のように定義しておくことにより:

address_group LOCAL-ADDRESS 10.0.0.0-10.255.255.255
address_group LOCAL-ADDRESS 172.16.0.0-172.31.255.255
address_group LOCAL-ADDRESS 192.168.0.0-192.168.255.255

ドメインポリシーで以下のように参照することができます:

network inet stream accept @LOCAL-ADDRESS 1024-65535

number_group

このディレクティブは、数値のグループを定義します。

例えば、例外ポリシーで以下のように定義しておくことにより:

number_group CREATE-MODES 0644
number_group CREATE-MODES 0664

ドメインポリシーで以下のように参照することができます:

file create /tmp/file @CREATE-MODES

path_group

このディレクティブは、パス名のグループを定義します。

例えば、例外ポリシーで以下のように定義しておくことにより:

path_group HOME-DIR-FILE /home/\*/\*
path_group HOME-DIR-FILE /home/\*/\{\*\}/\*

ドメインポリシーで以下のように参照することができます:

file read @HOME-DIR-FILE