目覚めよ! SELinux
SELinux Policy EditorでSELinuxを簡単に
中村 雄一
日立ソフトウェアエンジニアリング株式会社
技術開発本部 研究部 技師
2006/12/8
Security&Trustフォーラムでも連載中の「SELinuxの最新動向」などでSELinuxの生い立ちや意義は理解できていても、実際の設定でつまずいて結局利用していないという人も多いのではないだろうか。
本記事ではセキュアOSの普及に情熱を注いでいる中村氏の「多くの人にSELinuxを使ってもらいたい」という気持ちから作成されたツール、SELinux Policy Editorの機能を説明する(編集部)
あなたのLinuxの中にもSELinuxは眠っている
最近のLinuxディストリビューションには、セキュアOS「SELinux」が標準搭載されています。SELinuxは、高度なセキュリティ機能を提供する一方、難しいというイメージが先行し、有効に活用されていません。読者の皆さまの中にも、SELinuxの設定に挫折して、SELinuxを無効にしてきた方も多いのではないでしょうか。
とはいえ、SELinuxもやり方次第では簡単に使えるのです。今回は、SELinuxを簡単にするツール、「SELinux Policy Editor」(通称SEEdit)を紹介します。
SEEditとは
SEEditとは、SELinuxを簡単に使えるようにすることを目指して開発が行われている、SELinuxの設定ツールです。SEEditは2003年に日立ソフトウェアエンジニアリングからオープンソース・ソフトウェア(GPLライセンス)で公開されたプロトタイプが基になっています。現在はSourceforge.netのプロジェクトにて開発が進んでおり、2007年2月現在の最新版はCent OS 4とFedora Core 6で動作するバージョン2.1.0となります。
SEEditでは、SPDL(Simplified Policy Description Language)と呼ばれる単純な設定書式を使って簡単に設定を行うことができるようになっています。それに加え、ポリシー生成ツールなどの補助ツール、X Window SystemベースのGUIも用意されています。
まずはSEEditのインストール
早速SEEditをインストールしてみましょう。インストールはrpmパッケージを使って簡単に行うことができます。本記事では、Fedora Core 6を前提に話を進めます。
SEEditは、Fedora Core 6のExtrasに取り込まれていますので、以下のコマンドだけでインストールできます。
# yum install seedit-gui |
これにより、seedit、seedit-policy、seedit-guiパッケージがインストールされます。
なお、CentOSの場合は、SEEditダウンロードページより、seedit-converter、seedit-policy、seedit-guiの3つのパッケージをダウンロードし、
# rpm -ivh seedit*.rpm |
にてインスト-ルします。インストール直後には、以下のコマンドで初期化を行う必要があります。
# /usr/sbin/seedit-init |
その後、再起動を行います。再起動すると、SELinuxのラベルの初期化画面が出てきて、起動が一時停止します。数分待つと自動的に再起動します。さらに、もう一度自動的に再起動が行われます。ログインできるようになったら、インストールは完了です。
SEEditはGUIで直感的に理解可能
SEEditをインストールすると、SELinuxに関するすべての操作をGUIから行えるようになります。コマンドラインからの操作も可能ですが、本記事ではより簡単なGUIベースの使い方を紹介します。端末から「seedit-gui」と打ち込むか、「システム」→「管理」→「SELinux Policy Editor」を選択します。
図1 SEEditのコントロールパネル |
図1のような画面が立ち上がります(Cent OSの場合は、アイコンの代わりにボタンが表示されます)。このアイコンをダブルクリックすることで、SELinuxを管理するためのツールが立ち上がります。各アイコンを選択することで何ができるのかを、表1に示しました。
項目 |
内容 |
ステータス | SELinuxのモードの確認・切り替え 動作中のプロセスのドメイン確認 |
ドメインを管理 | 新規ドメインの作成、削除 |
ポリシーを生成 | 足りない設定をログから自動生成 |
ポリシーを編集 | テキストエディタで直接ポリシーを編集 |
ポリシーのロード・ラベル付け | 設定の反映を手作業で行う |
表1 コントロールパネルから操作できる項目 |
この中でも、特に便利なのが「ステータス」および「ポリシーを生成」です。「ステータス」を選択すると、図2のような画面が表示され、動作モードの設定およびプロセスの動作状況を確認できます。
図2 SELinuxのステータスを確認できる |
この画面から分かるように、インストール直後は、Permissiveモードになっています。Permissiveモードは動作確認用のモードで、SELinuxによるアクセスが拒否されていても、ログを出力するだけで実際はアクセスを許可しています。従って、実運用時には、Enforcingモードに切り替える必要があります。このために、「現在のモード」、および「ブート時のモード」で「Enforcingモード」を選択し、「適用」ボタンを押します。
「プロセス」タブからは、プロセスにどんなドメインが割り当てられているかを確認できます(図3)。ドメインに「Unconfined」と表示されているものが、SELinuxのアクセス制御を受けないプロセスです。cupsdなどが、SELinuxのアクセス制御を受けないことが分かります。デフォルト設定では、利便性を重視し、SELinuxのアクセス制御を受けないプロセスの存在を許しているからです。安全性を高めるため、このようなプロセスについては、サービスを停止、接続先の限定、または新たなドメインを設定する必要があります。一方、Apache Webサーバ(httpd)には、「httpd_t」というドメインが割り当てられていることが分かります。
図3 プロセスがどのドメインに割り当てられているかを確認できる |
1/3 |
Index | |
SELinux Policy EditorでSELinuxを簡単に | |
Page1 あなたのLinuxの中にもSELinuxは眠っている SEEditとは まずはSEEditのインストール SEEditはGUIで直感的に理解可能 |
|
Page2 SELinuxを簡単に操れるSEEditの威力 |
|
Page3 裏方に徹するSEEditの働き ドメインの新規作成も簡単 あなたのフィードバックが明日のSEEditを作ります |
関連記事 | |
連載:SELinuxの最新動向 | |
連載:セキュアOS「LIDS」入門 | |
ITmedia エンタープライズ:SELinuxの現状:使いやすさの改善が進むSELinux |
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)対策の観点から考える。
|
|