第2回 ファイルACLを用いたアクセス制御

面 和毅
サイオステクノロジー株式会社
インフラストラクチャービジネスユニット
Linuxテクノロジー部
OSSテクノロジーグループ
シニアマネージャ
2005/12/7

 LIDSの特徴、それは直感的な設定

 それでは、図2や図3のような設定を行う方法を簡単に説明しましょう。前回挙げたLIDSの特徴の中でも、最も特徴的なものとして「分かりやすい」という点があります。LIDSでは設定や運用を行う際に、

  • lidsconf(アクセス権の設定を行うコマンド)
  • lidsadm(状態の変更やパラメータの確認を行うコマンド)

という2つのコマンドしか使用しないため、覚えることが非常に少ないのです。

 また、lidsconfによる設定方法も非常に直感的になっています。lidsconfコマンドの書式は基本的に、

lidsconf -A -s [サブジェクト] -o [オブジェクト] -j [アクセス権]

のような形になっています。[サブジェクト]とはファイルやディレクトリに対してアクセスしようとしているプログラム、[オブジェクト]とはアクセス権を与えるファイルやディレクトリのことです。[アクセス権]には前項の4種類のアクセス権が入ります。ファイルやディレクトリに対してデフォルトのアクセス権を設定する際には、[サブジェクト]を省略します。

 例えば、図2のようなアクセス権を設定する際には、

lidsconf -A -o /var -j READONLY
lidsconf -A -o /var/log/messages -j APPEND
lidsconf -A -o /var/www -j DENY

となります。また、図3のようにプログラムごとにアクセス権を設定する場合には、

lidsconf -A -s /usr/sbin/httpd -o /var/www -j READONLY

のようにアクセス権を設定したいプログラムを[サブジェクト]として指定します。

 このように、LIDSではアクセス権の設定が非常に直感的にできます。また、この書式はiptablesによく似ているため、LIDSを初めて使うユーザーでも設定方法を簡単に覚えることができます。

 ACL(Access Control List)

 このようにLIDSでは、まず基本的なディレクトリやファイルに対するデフォルトのアクセス権を決定し、さらに個別のプログラムごとに必要なディレクトリやファイルのアクセス権を与えていくという方法を取ります。

 アクセス権を次々と決めていくと、ディレクトリとプログラムに対するアクセス権を記載したリストが出来上がっていきます(表1)。LIDSではこのリストを「ACL:Access Control List(アクセス制御リスト)」と呼びます。

プログラム ディレクトリ アクセス権
  / READONLY
  /boot DENY
  /var/log APPEND
  /var/www DENY
httpd /var/www READONLY
表1 ACL

 ACLの中でもファイル/ディレクトリへのデフォルトのアクセス権が規定されているものを特に「デフォルトACL」と呼びます。

 ファイルに対するアクセス制御のフロー

 LIDSでのアクセス制御のフローは図4のようになります。

図4 アクセス制御フロー

 プログラムからファイルに対してアクセスが発生した際には、

  1. デフォルトACLを調べて、OKならばアクセスを許可する
  2. 次にそのプログラムに関するACLを調べて、OKならばアクセスを許可する
  3. いずれにも当てはまらない場合にはアクセスを拒否する

という流れになります。つまりこのフローは、ファイルやディレクトリに対して「デフォルトではなるべくアクセス権を少なくして、必要なプログラムを特定してアクセスを許可していこう」という考え方に基づいて作られています。

 従って、次のようなACLを記載しても希望どおりの動きにはなりません。

a. あるディレクトリに対しては、書き込みまですべて許可する
b. ある特定のプログラムに対しては、そのディレクトリに対してのアクセスを禁止する

 このようなACLが設定されている場合には、フロー中の1の部分でアクセスが許可されてしまいますので、bのACLは効かないことになります。希望どおりの動作を行うには、ディレクトリに対してアクセスを禁止して、必要なプログラムに対して書き込みの許可を与えていくか、この連載でいずれ説明するSandbox機能を上手に利用することになります。

2/3

Index
ファイルACLを用いたアクセス制御
  Page1
LIDSのコンセプトと特徴
LIDSのアクセス制御方法
Page2
LIDSの特徴、それは直感的な設定
ACL(Access Control List)
ファイルに対するアクセス制御のフロー
  Page3
LIDSの内部構造に迫る
LIDS-1系列でのファイルアクセス制御
LIDS-2系列でのファイルアクセス制御


Security&Trust記事一覧


Security&Trust フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Security & Trust 記事ランキング

本日 月間