
第8回 設定ファイルを更新するlidsconfコマンド
面 和毅サイオステクノロジー株式会社
インフラストラクチャービジネスユニット
Linuxテクノロジー部
OSSテクノロジーグループ
シニアマネージャ
2006/7/5
前回「LIDSのACLをチューニングする」では、LFS(LIDS Free Session)の説明とLIDSのコマンドの1つである「lidsadm」の使用方法を説明しました。
今回は、LIDSのもう1つのコマンドである「lidsconf」の使用方法と、/etc/lidsディレクトリ内に格納されているLIDSの設定ファイルを見ていきます。
lidsconfコマンドの役割
lidsconfコマンドは、/etc/lidsディレクトリ以下のファイルを更新するコマンドです。LIDSでのACL(Access Control List:アクセス制御リスト)を設定する際や、前回説明したLFSのパスワードを設定する際に使用します。また、LIDS-1系列では第6回「TDEポリシーとアプリケーションのサンドボックス化」で紹介したTDEを用いる際にも使用します。
lidsconfのオプションを表1に示します。以下では、その中でも特によく使うオプションを説明しています([]で示しているオプションは、省略可能なオプションとなります)。
|
|||||||||||||||||||||||||||||||||
表1 lidsconfオプション |
LIDSに限らずOSのセキュリティで使われている用語ですが、アクセスしようとするプログラムを「Subject」と呼び、アクセス対象となるファイルやケーパビリティを「Object」と呼びます。Subjectとは、英和辞典で引くと「主語」という意味で、「〜が」を表します。Objectは、「目的語」の意味で、「〜に対して」を表します。
LIDSでは、ファイルやディレクトリに対してアクセス制御を掛けていく際には、
「Subject」が「Object」に対してどのような「アクセス権」を持っているか |
という記述方式でACLを書いていきます。
1.lidsconf -A [ステート][-s Subject] -o Object [-i inherit level] -j ACTION
このコマンドにより、ACLを付け足します。
[ステート]部分には、第4回「VMwareでLIDSに触れてみよう」で説明したステート(BOOT/POSTBOOT/SHUTDOWNの3種類)を入力します。この部分を省略した場合には、すべてのステートで共通に用いられるACL(Global ACL)となります。ステートを指定した場合には、そのステートのみで用いられるACLになります。
[-s Subject]部分には、アクセス制御されるプログラムをフルパスで記述します。この部分を省略した場合には、プログラムはANY(何でも)となります。つまり、Objectに対してどのようなプログラムでも、ACTIONで指定されたアクセス権を持つという、デフォルトのアクセス権を与えることになります。また、Objectでケーパビリティを指定する場合には、このSubject部分を省略できません。
ACTION部分には、
- ファイルに対するアクセス制御(DENY/READONLY/APPEND/WRITE)
- Objectがケーパビリティの場合には、GRANT(与えるという意味)
が入ることになります。
2.lidsconf -D [ステート][-s Subject] -o Object
このコマンドにより、「-A」オプションで設定したシステムのACLを削除します。
3.lidsconf -U
このコマンドにより、SubjectやObjectで指定したファイルのi-nodeを更新します。
LIDSでは、SubjectやObjectを特定するために、i-node情報を使っており、ACLも内部処理ではすべてi-node情報を用いて判定を行っていますし、/etc/lids以下の設定ファイルはすべてi-node情報を用いて記述されています。
yumやaptなどによるパッケージのアップデートや、ファイルのバックアップ/リストアなどを行った際にi-node情報が変わってしまった場合には、LIDSのACLが正常に動作しなくなってしまう可能性があります。そこで、このオプションにより/etc/lids以下の設定ファイルのi-node情報を更新します。
4.lidsconf -C
このコマンドにより、1および2のオプションを用いて定義したACLを、システムで読める形にコンパイルします。lids-1.2.2時点のLIDS-1系列では、コンパイルしなくてもACLを読むことができますが、念のためにACLを設定した後にはこのオプションでコンパイルを行う癖をつけておいた方がよいでしょう。
5.lidsconf -L [ステート]
このコマンドにより、システムの/etc/lidsディレクトリ以下に存在する設定ファイルの中でACLに関する内容を、人間が読みやすい形式で出力します。
ここで誤解のないように説明しておきますが、lidsconfコマンドはあくまでも「/etc/lidsディレクトリ以下のファイルを参照/更新する」というコマンドです。LIDSではシステムブート時にACLが設定ファイルから読み出され、メモリ上に展開されるので、システム上で実際に有効になっているACLと、「lidsconf -L [ステート]」で表示されるACLとでは異なっている可能性があります。
それ故、仮に/etc/lidsディレクトリがあらかじめアクセス拒否(DENY)に設定されたシステムをブートして、
$ lidsconf -D -o /etc/lids -j DENY $ lidsconf -A -o /etc/lids -j READONLY $ lidsconf -C |
と入力したとしても、システム上では相変わらず/etc/lidsディレクトリがDENYの状態のままです。
この設定を反映するには、システムを再起動して再度/etc/lidsディレクトリ以下の設定ファイルをメモリ上に展開させるか、前回説明したlidsadmコマンドにより、
$ lidsadm -S -- +RELOAD_CONF |
として、メモリ上に展開された/etc/lidsディレクトリの中身を最新のものに更新するか、2通りの方法のうちのどちらかを行う必要があります。
また、/etc/lidsディレクトリがACLによりDENYやREADONLYで保護されている場合には、lidsconfオプションにより/etc/lidsディレクトリ以下を変更する操作を行うことはできません。そのため通常は、lidsconfコマンドは、LIDSを無効にした状態やLFSからのみ使用することができます。
1/3
|
![]() |
Index | |
設定ファイルを更新するlidsconfコマンド | |
![]() |
Page1 lidsconfコマンドの役割 |
Page2 Apacheでの設定例 Sandbox用のオプション |
|
Page3 /etc/lids以下のLIDSを設定するファイル |
![]() |
Security&Trust記事一覧 |
- Windows起動前後にデバイスを守る工夫、ルートキットを防ぐ (2017/7/24)
Windows 10が備える多彩なセキュリティ対策機能を丸ごと理解するには、5つのスタックに分けて順に押さえていくことが早道だ。連載第1回は、Windows起動前の「デバイスの保護」とHyper-Vを用いたセキュリティ構成について紹介する。 - WannaCryがホンダやマクドにも。中学3年生が作ったランサムウェアの正体も話題に (2017/7/11)
2017年6月のセキュリティクラスタでは、「WannaCry」の残り火にやられたホンダや亜種に感染したマクドナルドに注目が集まった他、ランサムウェアを作成して配布した中学3年生、ランサムウェアに降伏してしまった韓国のホスティング企業など、5月に引き続きランサムウェアの話題が席巻していました。 - Recruit-CSIRTがマルウェアの「培養」用に内製した動的解析環境、その目的と工夫とは (2017/7/10)
代表的なマルウェア解析方法を紹介し、自社のみに影響があるマルウェアを「培養」するために構築した動的解析環境について解説する - 侵入されることを前提に考える――内部対策はログ管理から (2017/7/5)
人員リソースや予算の限られた中堅・中小企業にとって、大企業で導入されがちな、過剰に高機能で管理負荷の高いセキュリティ対策を施すのは現実的ではない。本連載では、中堅・中小企業が目指すべきセキュリティ対策の“現実解“を、特に標的型攻撃(APT:Advanced Persistent Threat)対策の観点から考える。
![]() |
|
|
|
![]() |