skillup

技術ブログ

サーバー・ネットワーク

SELinuxによるファイル制限+MySQLアクセスエラー

投稿日:

新サーバーにApacheをいれて特定のファイルにアクセスしようとしたところ、

以下のようなエラーがでてしまいました。

ただPermissionは適切に設定しているんですよね・・・

調べてみるとSELinuxが稼働しており、ファイルにアクセスできないとのこと。

聞いたことはあったけどよくは知らなかったな・・・ということでこれを機に調べてみることにしました。

SELinuxとは

CentOSではSeLinuxというセキュリティを向上させるための拡張機能です。

一般的にLinuxではパーミッションによるアクセス権はユーザーやグループごとに、ファイルやディレクトリの書き込み、読み込みを制御しますが、SELinuxを使うことによりプロセスやユーザーごとにファイルなどのきめ細かいアクセス制限が可能になります。

一時的にSELinuxを無効にするには

と入力すればOKです。ただしこの設定はOSを再起動したりすると設定ファイルに書かれている状態に戻ってしまいます。

OSを再起動してもSELinuxを無効にしたりするためには

MySQLの接続エラー

ファイルだけでなく、DBのアクセスなどができなくなることもあるようです。※サーバー側ではなくクライアント側です。

パスワード、ユーザー名が間違っていないのにPermission denied・・というエラーがでて迷いましたが、SELinuxが原因でした。

SELinuxをオフにしてもよいですが、特定の機能だけをONにすることもできます。

参考文献

http://qiita.com/mattsun/items/470581ff34f87c7eb21d

http://qiita.com/ak-ymst/items/54537fe2d20620d079e3

-サーバー・ネットワーク
-

執筆者:


  1. […] 単純なPermisson以外にもSELinuxの設定が不適切という可能性もありえます。その場合はこちら […]

comment

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

関連記事

no image

mod_aliasに関して

同一ドメインでパスによってルートディレクトを分けたい時。 この場合、apacheの設定ファイルをいじることになります。 一般的にはhttpd.confではなく*.confと言った設定ファイルを使い、エ …

no image

大規模Webサービス技術入門 イントロ

一応WEBサービスを日々改修していますが、データが日々ふえ、大規模なサービスの対処法などを勉強する必要があるため、「大規模サービス技術入門」を少しずつ読んでいこうと思います。 ポイント データはディス …

no image

大規模Webサービス技術入門 DBの分散

前回に引き続き、大規模サービスを運用するときに必要になるMySQLの知識についてのまとめ Contents1 テーブル・SQL設計2 レプリケーション機能3 パーティショニング テーブル・SQL設計 …

no image

SMTP-AUTHのメール送信

メールに関して以前にもこんなこと書きましたが、今更ながらトラブルが起きたのでしっかり理解しておかないと・・・ 基礎が弱いと困るのう・・・ ロリポップなどのサーバーでmb_send_mailを打てばよく …

no image

シェル基礎2

シェルコマンド使い始めて数年たちますが、いまだに知らないことはおおいですし、早く知っとけばよかった的なこともたくさんあります。 そんな小ネタ集を alias よく使うコマンドを別名で登録することができ …