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の設定が不適切という可能性もありえます。その場合はこちら […]

comment

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

関連記事

no image

Dockerfileでのコンテナ作成

dockerは通常はimageを取得し、コンテナを起動した後、自分独自にライブラリなどをインストールし、出来たものをcommitしますが、Dockerfileをつかえばこの一連の操作をファイルに記録し …

no image

カレントディレクトリ以下のすべてのCR+LFをLFに

windows環境からファイルをアップしていると文字コードがバラバラだったりすることが多々あります。 まあ何がめんどくさいかというと差分がチェックできない。これが最悪です。 gitのdiffコマンドの …

no image

ロードバランサーについて

ロードバランサーについてのメモなどを。 Contents1 ALBとELBの違いなど2 ELBの用語2.1 リスナー2.2 リスナールール2.3 アクション2.4 ターゲットグループ2.5 ターゲット …

no image

SSH鍵認証に関して

SSHの鍵認証についてやり方自体は流れ作業でできていましたが、根本的なところが理解していないので復習。 まずは通常の流れを。 1 クライアント(自分のPC)で公開鍵・秘密鍵を作成。[crayon-64 …

no image

ログ抽出コマンド特集 その1 cat+grep+sort

先日、メモリ使用率の調査に関して記事をかいたのですが、今度はそのログの収集や抽出をおこなってみようかと思います。 やりたいこと yyyy/MM/dd-HH:mm:ss  メモリ使用率(少数2桁まで)  …

アーカイブ