Fedora CoreでのSELinuxの機能や使い方を,これまでSELinuxを使ったことがない人に向けて分かりやすく解説する。最終回は,2007年初頭の本原稿執筆時点で開発進行中の機能を紹介する。
SELinuxは現在も活発に開発が進められている。今回は,連載の締め括りとして,現在開発中の最新機能の概要を表1に沿って紹介していく。
![]() |
表1●開発進行中のSElinuxの機能 [画像のクリックで拡大表示] |
Fedora Coreに取り込まれた機能
連載第2回で紹介したように,SELinuxの開発は,Fedora Coreと密接に関係して行われている。米Red Hat社がSELinuxの開発に強く寄与しているからだ。そのため,開発中のSELinuxの新機能が完成に近づくと,Fedora Coreに取り込まれてテストされることが多い。
最新の「Fedora Core 6」にも,新機能が取り込まれている。より簡単にSELinuxを設定したり使えたりできるように「setroubleshoot」や「system-config-selinux」というツールが取り込まれているほか,ホスト同士の通信の安全性を高める機能「secmark」(別掲記事「iptablesを利用する『secmark』」を参照)も取り込まれている。
|
問題解決ツールのsetroubleshoot
通常,SELinuxが原因でアプリケーションが動作しない場合には,手作業でログを解析したり,設定を変更したりして問題を解決する必要がある。setroubleshoot*1は,SELinuxが原因でアプリケーションが動作しないトラブルの対応方法*2を表示するツールである。
通常,SELinuxが原因でアプリケーションが動作しない場合,SELinuxのアクセス拒否ログが出力される。setroubleshootは,このログを解析し,どうすれば問題を解決できるかを自動表示する。
動作例を見てみよう。SELinuxには,mvコマンドでWebページのファイルをアップロードすると,Apache HTTP Serverでそのファイルを公開できない(Webサーバーからのアクセスが拒否される)という問題がある。解決するには,restoreconコマンドを実行する必要がある。
setroubleshootが組み込まれたシステムでは,アクセス拒否によりWebページが公開できなかった時点で,デスクトップに写真1のような星型のアイコンが表示される。このアイコンをクリックすると,写真2のように,トラブルの概要と解決策が表示される。この例では,「Allowing Access」に「restorecon -R /var/www/html」コマンドで解決できると記されている。
![]() |
写真1●星型のアイコン |
![]() |
写真2●トラブルの概要と解決策の表示例 [画像のクリックで拡大表示] |
なお,setroubleshootは,デフォルトではインストールされない。「yum install setroubleshoot」を実行して,別途インストールする必要がある*3。
GUIのsystem-config-selinux
system-config-selinuxは,SELinuxの管理をGUIで操作できるツールだ。デフォルト(初期設定)ではインストールされないので「yum install policycoreutils-gui」を実行して別途インストールする必要がある。
「システムv→「管理」→「SELinux Management」を選択して起動できる(写真3)。この画面より,SELinuxのモードの切り替え,booleanパラメータの切り替え,タイプ付与設定,MCSに関する設定などが行える。
![]() |
写真3●system-config-selinuxの画面例 [画像のクリックで拡大表示] |