skillup

技術ブログ

サーバー・ネットワーク

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

投稿日:2017年5月18日 更新日:

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

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

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

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

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

SELinuxとは

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

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

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

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

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

MySQLの接続エラー

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

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

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

参考文献

CentOS7 SELinuxの無効化手順

Apache経由でのMysql接続時に「[2002]Permission denied」というエラーが起きてしまう場合の対処法

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

執筆者:


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

サーバー設定ファイルについて apache – skillup へ返信する コメントをキャンセル

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

関連記事

no image

サーバーレスやPassについての所感など

firebaseについてここ数日ちょこちょこ触りました。一昔前はwebアプリというと、ほとんどがCentOSにapacheとMySQLを入れて・・・というパターンが大部分でしたが、2020年6月現在、 …

no image

シェル基礎2

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

no image

scpコマンドを使ったサーバー間のファイルのやり取り

あるサーバーのファイルを別サーバーにコピーするとき、大昔はFTPを使っていましたが、現在FTPサーバー自体を立てることがあまりないため、SSHを使ったSCPコマンドでのファイル点を使いました。 Con …

no image

Azureの復習

今年からAzureの案件にはいっていろいろとインフラ周りを整理しておりますので、復習も兼ねて少しまとめておこうかと思います。 とりあえず出てくる重要な概念やサービスを五月雨に・・・ Contents1 …

no image

MariaDBインストール

CentOS7からはyumでmysqlをインストールするとMariaDBがディフォルトになるようです。 せっかくなので、これを機にMariaDBを使ってみました。といってもMySQLとほとんど一緒でし …

アーカイブ