例外ポリシー構文
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
このディレクティブは、指定されたプログラムが実行された場合に指定された名前空間で動作させるために使用します。
可能な組み合わせ:
- reset_domain "program" from any
- reset_domain "program" from "last_pathname_of_domain"
- reset_domain "program" from "domain"
- reset_domain any from any
- reset_domain any from "last_pathname_of_domain"
- reset_domain any from "domain"
以下の例では /usr/sbin/sshd
が実行されると </usr/sbin/sshd> ドメインに遷移するように指定しています:
reset_domain /usr/sbin/sshd from any
no_reset_domain
このディレクティブは reset_domain ディレクティブの効果を打ち消すために使用します。
可能な組み合わせ:
- no_reset_domain "program" from any
- no_reset_domain "program" from "last_pathname_of_domain"
- no_reset_domain "program" from "domain"
- no_reset_domain any from any
- no_reset_domain any from "last_pathname_of_domain"
- no_reset_domain any from "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
このディレクティブは、指定されたプログラムが実行された場合に、現在の名前空間のルートの子ドメインで動作させるために使用します。
可能な組み合わせ:
- initialize_domain "program" from any
- initialize_domain "program" from "last_pathname_of_domain"
- initialize_domain "program" from "domain"
- initialize_domain any from any
- initialize_domain any from "last_pathname_of_domain"
- initialize_domain any from "domain"
以下の例では <kernel> 名前空間のドメインから /usr/sbin/sshd
が実行されると <kernel> /usr/sbin/sshd ドメインに遷移するように指定しています:
initialize_domain /usr/sbin/sshd from any
no_initialize_domain
このディレクティブは initialize_domain ディレクティブの効果を打ち消すために使用します。
可能な組み合わせ:
- no_initialize_domain "program" from any
- no_initialize_domain "program" from "last_pathname_of_domain"
- no_initialize_domain "program" from "domain"
- no_initialize_domain any from any
- no_initialize_domain any from "last_pathname_of_domain"
- no_initialize_domain any from "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
このディレクティブは、指定されたプログラムが実行された場合にドメイン遷移を行わせないようにするために使用します。
可能な組み合わせ:
- keep_domain "program" from any
- keep_domain "program" from "last_pathname_of_domain"
- keep_domain "program" from "domain"
- keep_domain any from any
- keep_domain any from "last_pathname_of_domain"
- keep_domain any from "domain"
以下の例では <kernel> /usr/sbin/sshd /bin/bash ドメインからプログラムが実行されてもドメイン遷移を行わないように指定しています:
keep_domain any from <kernel> /usr/sbin/sshd /bin/bash
no_keep_domain
このディレクティブは keep_domain ディレクティブの効果を打ち消すために使用します。
可能な組み合わせ:
- no_keep_domain "program" from any
- no_keep_domain "program" from "last_pathname_of_domain"
- no_keep_domain "program" from "domain"
- no_keep_domain any from any
- no_keep_domain any from "last_pathname_of_domain"
- no_keep_domain any from "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