第5回 トラブルシューティングはCentOS 5におまかせ
面 和毅
サイオステクノロジー株式会社
OSSテクノロジーセンター
開発支援グループ
グループマネージャー
2007/11/15
早速、トラブルシューティングしてみよう
- 空欄にIPアドレスを入力してCGIを実行すると、「Permission Denied」のエラー画面が出てきます。
図2 CGIにIPアドレスを入力すると「Forbidden」となり、何らかのエラーが発生していることが分かる
- SELinuxがエラーに関与しているかどうかを確認するために、SELinuxトラブルシューターを起動します。
図3 SELinuxトラブルシューターを起動
- 図4がSELinuxトラブルシューターの画面になります。Windowsのイベントビューアのような画面で、SELinuxのエラーログが「どのようなエラーが」「何回」「どのカテゴリーで」出たかなどが表示されます。「Allowing Access」の項に、このエラーを解消するためにはSELinuxでどう設定すればよいかのヒントが出ています。図4では、
“setsebool -P httpd_enable_cgi=1”と実行すれば、現在エラーになっているアクセスに対してアクセス権が得られると書いてあります。
図4 画面の説明を読み、対応を考える
- CentOS 5上で
# setsebool -P httpd_enable_cgi=1
を実行します。これにより、CentOS 5上のApacheでCGIの実行が許可されます。
[root@centos5 ~]# getsebool -a | grep cgi
httpd_enable_cgi --> off
[root@centos5 ~]# setsebool -P httpd_enable_cgi=1
[root@centos5 ~]# getsebool -a | grep cgi
httpd_enable_cgi --> on
[root@centos5 ~]#リスト3 トラブルシューターのヒントを基にコマンドを実行する
- あらためてIPアドレスを入力してCGIを再実行すると、こんどはtest.cgiの19行目でエラーが出てきます。この行は、CGI上でネットワークを取り扱っています。
図5 再度CGIを実行してみると、異なる部分でエラーが発生した
- 再びSELinuxトラブルシューターでエラーを確認すると、図6のように、再びSELinuxのアクセス制御で拒否された動作が出力されています。
図6 もう一度トラブルシューターでエラーを確認する
今回は、「Allowing Access」の項には「SELinuxによる保護をやめれば動くと思うが、お勧めしない」と出ています。また、「Additional Information」を参照すると、Targeted Objectがtcp_socketになっています。この「Additional Information」に書かれている情報により、httpd_sys_script_tドメインで実行されるCGIがtcp_socketを生成しようとした際にアクセスが拒否されていることが分かります。これは、Booleanの「httpd_can_network_connect」がoffになっているために生じるエラーになります。
- Booleanで「httpd_can_network_connect」をonにします。これにより、今度は最終的にCGIを実行することができます。
[root@centos5 ~]# getsebool httpd_can_network_connect
httpd_can_network_connect --> off
[root@centos5 ~]# setsebool -P httpd_can_network_connect on[root@centos5 ~]# getsebool httpd_can_network_connect
httpd_can_network_connect --> onリスト4 getseboolコマンドを使用して、httpd_can_network_connectのスイッチを「on」にする
図7 正常に動作した
このように、SELinuxトラブルシューターを使用することにより、SELinuxの設定によって動作しなかったプログラムを動作させることができるようになります。
2/3 |
Index | |
トラブルシューティングはCentOS 5におまかせ | |
Page1 CentOS 5でのSELinux――RHEL 5との違いは? GUIツール、SELinuxトラブルシューターを試してみる |
|
Page2 早速、トラブルシューティングしてみよう |
|
Page3 SELinux Managerを試してみる |
スイッチ・オン! 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)対策の観点から考える。
|
|