Fedora Users Forum

Fedoraユーザのためのサポートフォーラム
現在時刻 - 2017年3月26日(日) 12:20

All times are UTC + 9 hours





新しいトピックを投稿する トピックへ返信する  [ 4 件の記事 ] 
作成者 メッセージ
 記事の件名: SELinuxの概要と設定
投稿記事Posted: 2011年7月05日(火) 02:36 
オフライン
アバター
プライベートメッセージ送信  メール  WWW  プロフィール

登録日時: 2008年9月08日(月) 21:17
記事: 428
環境:Fedora15(64bit)

SELinuxを理解するためのドキュメントです。
具体的な設定方法に関しては、随時、追加記事として加えていく予定です。

● SELinuxとは何ですか?
SE(Security Enhanced)Linuxは、Linuxカーネルのセキュリティ機能であり、従来のファイル制御と比較すると、よりきめ細かいアクセス制御を提供します。Fedoraではデフォルトで有効となっています。集約されたポリシーは、どのソフトウェアがどのリソースにアクセスできるかを決定します。例えば、ネットワーク・サービスを特定のポートでしか使えないようにすることが可能で、Apacheウェブサーバをデフォルトでポート80だけに接続するように制限することができます。

● SELinuxはファイア・ウォールですか?
よく混同されますが、SELinuxはファイア・ウォールではありません。ファイア・ウォールは、コンピュータとネットワークの間のトラフィックの流れを制御します。一方、SELinuxではコンピュータ内部のプログラムのアクセスを制御します。したがって、プログラム間の内部ファイアウォールであるといえます。複数のレイヤーが使われていている場合、SELinuxがFedoraで使用されるファイアウォールや他のセキュリティ機能を受け入れたときに、セキュリティはうまく働きます。

● SELinuxはデスクトップに役立ちますか?
はい。FedoraにおけるSELinuxのポリシーは、はじめはサービスに直面しているネットワークに焦点を当てていましたが、現在リリースされているFedoraでは、FirefoxやHALやD-Busなどを含む多くのデスクトップ・ソフトウェアが、SELinuxのポリシーを用いて保護されています。

● SELinuxの不具合を調べるには
SELinuxからメッセージを分析して、それが何を意味するかに関して包括的なヘルプを提供するユーティリティとして、があります。SETroubleShootはデフォルトでFedoraに含まれています。SETroubleShootの起動時にエラーが生じて起動できない場合は、report-gtkをインストールする必要があるかも知れません。

● SELinuxを無効にするには
SELinuxのポリシーには、特定のサービスに対してSELinuxを無効にするために使用できる論理演算子(boolean)があり、SELinuxを完全に無効にすることができます。SELinuxを完全に無効にしたいなら、/etc/selinux/configのSElinuxの論理演算子(boolean)を"disabled"に設定してください。あるいは、system-config-selinux(policycoreutils-guiパッケージの一部)を使用できます(注意:F15では依存関係に不具合があり、導入できないようです)。
permissiveに設定する場合は、全体のシステムを再ラベルする際に不具合が生じることがあるので、システム全体にそれを適用しないことが強く勧められます。また、インストール中に、インストールブートプロンプトでselinux=0を指定してSELinuxを無効にすることもできます。自動化インストールに関するkickstartのドキュメントを参照してください。

● enforcingモード
SELinuxを有効にしたときの通常の動作モード。このモードでは,プロセスはポリシー・ファイルに設定された範囲内の権限で動作します。プロセスがポリシーには設定されていないアクセスを試みたときには,そのアクセスは拒否され、同時にアクセスが拒否された事実がログに記録されます。つまり,ポリシー・ファイルの設定が,全プロセスに強制されている状態です。

● permissiveモード
一方,permissiveモードでは,プロセスがポリシーには設定されていないアクセスを試みたときには,アクセス拒否の事実はログに記録されるものの,実際にはアクセスは許可されます。つまり,機能的にはSELinuxは無効ですが,ログだけはSELinuxが有効なときと同じように記録されます。そのため,SELinuxが原因でトラブルが発生したときの解明に役立ちます。

● 「targeted」と「strict」
SELinuxには,大きく分けて「targeted」ポリシーと「strict」ポリシーという2種類のポリシーが用意されています。targetedポリシーは,デフォルトでインストールされている,設定が緩やかなポリシーです。「セキュリティレベルの設定」ツールに名前が出ていないアプリーケーションについては,SELinuxのアクセス制御が働かないようにポリシー・ファイルが設定されています。簡単に各種アプリケーションを使えるようにするために,あえてポリシー・ファイルの設定が緩くしてあります。ログイン・ユーザーが行う操作についても,SELinuxによるアクセス制御が働かないようになっています。より一層のセキュリティを望むユーザーは,さらに強力なポリシー・ファイル(このポリシーを「strict」ポリシーと呼ぶ)を使う必要があります。


トップへ
 
 記事の件名: Re: SELinuxの概要と設定
投稿記事Posted: 2011年7月08日(金) 23:52 
オフライン
アバター
プライベートメッセージ送信  メール  WWW  プロフィール

登録日時: 2008年9月08日(月) 21:17
記事: 428
●動作モードの変更
SELinuxには、「permissiveモード」、「enforcingモード」があり、これらのモードの変更は下記のコマンドで実行できます。

・現在のモードを確認するには
 # getenforce

・モードを変えるには
【permissiveへの変更】
 # setenforce permissive または 0

【enforcingへの変更】
 # setenforce enforcing または 1

この設定は/etc/selinux/configに書き込まれていますので、直接ここを参照したり、編集しても構いません。


トップへ
 
 記事の件名: Re: SELinuxの概要と設定
投稿記事Posted: 2011年7月09日(土) 00:20 
オフライン
アバター
プライベートメッセージ送信  メール  WWW  プロフィール

登録日時: 2008年9月08日(月) 21:17
記事: 428
● SELinux の基本コマンド

◆ls
 オプションに -Z をつければ、ポリシー・タイプを表示することができます。
 # ls -Z

◆chcon
 ファイルやディレクトリのタイプを一時的に変更します。

 # chcon -t samba_share_t /var/smb -R
 -u でユーザ、-r でロールを変更できる。

この例では、/var/smb ディレクトリ以下のディレクトリとファイルすべてのポリシー・タイプを samba_share_t に変更しています。

◆restorecon
 ポリシー・タイプの不整合を修正します。

 # /sbin/restorecon -RF /var/smb
 -Rは再帰的に適用、-Fは強制的に適用します。
 (強制でないと変わらないときがある)

◆setsebool
 各booleanパラメータを変更します。

 # setsebool -P allow_smbd_anon_write 1
 -Pオプションは、システムを再起動しても設定を反映するようにする。

◆semanage
 ファイルに関するタイプのほか、ポートに対するタイプも変更可能なコマンドです。chcon では file_contexts ファイル内の内容は変更できないので、yum update などでポリシーをアップデートした場合は変更内容が消えてしまいます。semanage では file_contexts ファイルの内容を書き換えるのでそのような問題は起きません。

 # semanage fcontext -a -t samba_share_t "/var/smb/(/.*)?"

・設定内容を反映させるには restorecon コマンドを使います。
 # restorecon -RF /var/smb

・設定内容を削除するには -a の代わりに -d を使用します。
 # semanage fcontext -d -t samba_share_t "/var/smb/(/.*)?"
 # restorecon -RF /var/smb


・ポートに対するタイプを見るには
 # semanage port -l

・Apache に TCP 8080 番ポートを使えるようにさせるには
 # semanage port -a -t http_port_t -p tcp 8080

ポートの場合は即座に設定が反映されます。


トップへ
 
 記事の件名: Re: SELinuxの概要と設定
投稿記事Posted: 2011年7月09日(土) 00:21 
オフライン
アバター
プライベートメッセージ送信  メール  WWW  プロフィール

登録日時: 2008年9月08日(月) 21:17
記事: 428
---------
● booleanパラメータの調整とトラブルの回避

ポリシーを変更せずにトラブルを解決したり,セキュリティ・レベルを調整したりするのに役立つのが,booleanパラメータです。booleanパラメータを切り替えて,不要なアクセス許可を与えないようにしていけば,セキュリティを高められます。逆に,必要なアクセス許可をbooleanパラメータの切り替えで設定可能な場合は,トラブル解決にも役立ちます。

・Apacheが他のアプリケーションに接続できない
【解決法】 httpd_can_network_connectをonにする

・Sambaのホームディレクトリを公開できない
【解決法】 samba_enable_home_dirsをonにする

・Javaアプリケーションが動かない

【解決法】 allow_execmodをonにする

・ログにexecmod、execstackのアクセス拒否が出力される

【解決法】 allow_execmod/allow_execstackをonにする

《具体的な設定例》
「Sambaでホーム・ディレクトリを公開できない」という問題を「samba_enable_home_dirs」のon/offを切り替えて対処してみましょう。

・samba_enable_home_dirsを次のようにonに切り替えます。

 # setsebool -P samba_enable_home_dirs 1

・onに切り替わったことを確認します。

 # getsebool samba_enable_home_dirs
 samba_enable_home_dirs -->on


トップへ
 
期間内表示:  ソート  
新しいトピックを投稿する トピックへ返信する  [ 4 件の記事 ] 

All times are UTC + 9 hours


オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[0人]


トピック投稿: 不可
返信投稿: 不可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  
cron

無料でマイフォーラムを作成する! · php-BB© · Internationalization Project · 不正利用を報告する · 使用条件/プライバシーポリシー
© Forums-Free.com 2009