CentOSでSELinuxを有効化無効化する方法

CentOSでSELinuxを有効化無効化する方法

アンドロイドアプリでカメラで撮影と同時に画像をサーバにアップロードしたかったのですが、うまくできなかったので一旦SE Linuxを無効にしました。

紆余曲折あり、サーバにアップロードできたので今度はSE Linuxが有効の状態で画像をサーバにアップロードできるかを試したいのでSE Linuxについてまとめてみました。

SELinuxの有効無効の確認

getenforceで現状のSE Linuxの状態を確認します。

Disabledと表示されたら、無効になっています。sestatusコマンドでも確認することができます。

では恒久的に有効にしてみます。恒久的に有効にするには/etc/selinux/configに設定を記述する必要があります。

enforcingにすることにより有効化になります。ただしリブートが必要です。

ちなみに無効化するにはdisabledとします。

これもリブートが必要です。

これでシステムを再起動します。

permissiveにすることもできます。

参考サイト

permissiveモード

開発時などは無効化せずにpermissiveモードにしつつ、運用時にenforceにすればよいと思います。

permissiveモードではログを出力してくれるので、ログを見ながら開発すればよいと思います。デバッグモードみたいな感じでしょうか。

ログは以下にあります。ここをtailしながら見ておけばよいと思います。

以下のコマンドでSELinuxで拒否されたログを見ることもできます。

今日のログだけを見る場合は-ts todayを付けます。

setools-console

setools-consoleをインストールしましょう。

これでsesearchコマンドなどが使えるようになります。

使い方は以下のような感じです。

タイプを変更する

タイプを変更するには、chconコマンドを使います。/var/www/htmlのように既存ディレクトリの場合はrestoreconコマンドで変更することができます。

restoreconコマンドを実行します。

これでタイプがhttpd_sys_content_tに変更されます。

ファイアウォールを無効化する

ファイアウォールも有効にしたり無効にしたりしてみます。

ファイアウォールを有効にします。

これで有効になります。

これで無効になります。

ポートを開放する

ポートを開放するには以下のようにします。以下は8080を開放する例です。

--permanentをつけることによって恒久的に開放します。

スポンサーリンク
  • このエントリーをはてなブックマークに追加
スポンサーリンク

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA