TOP情報セキュリティ> LIDSの導入方法
LIDS
なぜなにLIDS〜シンプル・セキュアOS〜

歴史と機能と設定と

著者:日本SELinuxユーザ会 LIDS支部  面 和毅   2007/6/26
前のページ  1  2  3  次のページ
LIDSの導入方法

   LIDSはLIDS-1系列/LIDS-2系列とも以下のURLからソースファイルをダウンロードできます。

   以下では、最新のLIDS-2系列に話を絞って解説します。

   LIDSは次のパッケージから構成されています。

  • lids-X-Y.patch(X:LIDSバージョン、Y:カーネルバージョン)
  • lidstools-Z(Z:lidstoolsバージョン)

表6:LIDSのパッケージ

   「lids-X-Y.patch」はカーネルソースに適応するパッチです。lidstoolsには、LIDSのACLを操作したり状態を参照したりするため、以下の2つのコマンドが用意されています。

  • lidsconf:ACLなどを設定/閲覧したり、パスワードを設定するコマンド
  • lidsadm:LIDSの機能のON/OFFを行うツール

表7:lidtoolsに含まれるコマンド

   LIDSではこの2つのコマンドのみを使用して設定を行います。

   基本的に、LIDSのオフィシャルページで提供されている物は、すべて「www.kernel.org」からダウンロードできる素の(vanilla)カーネルが対象となっています。このためLIDSをインストールするには、素のカーネルを取得してLIDSのパッチをあて、カーネルを再構築し、その再構築したカーネルで起動するという手順が必要です。

   しかし、この方法では素のカーネルしか使用できず、Fedora CoreやCentOSなどのディストリビューション独自のパッチがあてられたカーネルは使用できません。

   このため、LIDS-JPサイトではFedora CoreやCentOSなど、代表的なディストリビューション用のカーネルにLIDSのパッチを適用して再構築したものとlidstoolsのパッケージをそれぞれ提供しています。

LIDS-JPサイト
http://www.lids.org

   使用しているディストリビューション用のパッケージを入手し、rpmコマンドなどでインストールすることでLIDSを利用できるようになります。


LIDSの設定方法

   特徴の所でも述べましたが、LIDSの設定方法は極めて直観的です。また、覚えるコマンド数も少なくて済みます。

   例をあげて説明しましょう。LIDSの設定には大きく分けて2つの場合があります。1つ目は「ファイルやディレクトリに対してアクセス権を設定する場合」そしてもう1つは「プロセスにケーパビリティを設定する場合」です。

   どちらの場合でも、lidsconfコマンドを用いて以下のような形で設定します。

lidsconf -A [-s アクセス元] -o ファイル/ケーパビリティ -j 権限


ファイルやディレクトリに対してのアクセス権を設定する場合

   LIDSではファイルやディレクトリに対して、厳しい方から以下の4種類のアクセス権を与えることができます。

  • DENY(アクセス拒否):アクセスを拒否したい時に使用
  • READONLY(読み込みのみ):設定ファイルなど改変出来ないようにする時に使用
  • APPEND(追記):ログなどのように追記のみがされて行くファイルに使用
  • WRITE(書き込み可能):すべての行為が可能

表8:設定できるアクセス権

   この表で下に書かれた権限は、つねにその上に書かれた権限を差分セットとして含んでいます。例えば「APPEND」権限をファイルに対して与えた場合、そのファイルに対しては読み込み(READ)を行うことができます。

   このようにして与えた権限は図1のように、通常のLinuxが行うアクセス権の判定(rwxを用いた判定)の後に処理されます。

アクセス権の判定が処理される流れ
図1:アクセス権の判定が処理される流れ

   また、LIDSではユーザを識別しないため、ここで設定したアクセス権はシステム上のすべてのアカウントに対して適用されます。


アクセス権設定の流れ

   表8で示した4種類のアクセス権を使い、LIDSのアクセス権を設定する方法をみていきます。

   例えば/var以下をすべてREADONLYにしたい場合には、以下のようにlidsconfコマンドを入力します。

lidsconf -A -o /var -j READONLY

   プログラムを指定しない場合には、すべてのプログラムから/var以下がREADONLYに設定されます。また、ディレクトリを指定した場合には、そのディレクトリ以下に再帰的に権限が継承されていきますので、サブディレクトリの/var/runなどもREADONLYになります。

   また、/var/run以下に/usr/sbin/httpdがpidファイルを作成する必要がある場合には、以下のようにコマンドを入力します。

lidsconf -A -s /usr/sbin/httpd -o /var/run -j WRITE

   このように設定すると、httpdプログラムのみが/var/run以下に書き込みを行えるようになります。

前のページ  1  2  3  次のページ


日本SELinuxユーザ会 LIDS支部 面 和毅
著者プロフィール
日本SELinuxユーザ会 LIDS支部    面 和毅
1997年よりサーバ構築およびセキュリティ全般をあつかう仕事に従事し、Linuxを触りはじめる。現在LIDSの布教活動に力を入れており、SELinuxユーザ会内でLIDS支部を立ち上げている。活動として、最新バージョンのLIDSの開発と、LIDSを用いたシステム構築の紹介を行っている。


INDEX
歴史と機能と設定と
  LIDSの歴史
LIDSの導入方法
  ケーパビリティを設定する場合