この記事は約3分で読めます。
本文は約1937文字です
ファイルの改ざんを防ぐためのパーミッション設定
不正アクセスによるファイルの改ざんは世界中で毎日行われています。
WordPressサイトは改ざん被害にあいやすいと言われています。Wordpressはファイル数が多く、複雑なためセキュリティホールができやすく、利用者も多いため、狙われやすいのです。
WordPressはセキュリティに弱いからということで、Wordpressを使用しない人も一定数います。
結局、HTMLサイトが一番安全という話もあります。
しかし、HTMLサイトもPHPを使っていれば改ざん被害にあうことがあります。
結局、改ざんされないために何をすればいいのかよくわからない!という人が多いと思いますので、この記事では改ざん被害にあわないサーバーの設定についてお伝えします。
パーミッションを見直そう
ファイルパーミッション(file permission)とは、ファイルごとに定義された、読み出し・書込みなどのアクセスに対する許可情報。通常は、ファイルシステム内のファイルごとに、特定のユーザーやグループに対してアクセス権を設定する。これによって、ユーザーごとのファイルシステムの見え方に影響を与え、ファイルシステムに対する変更を制限する。単にパーミッションとも言う。
https://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%83%91%E3%83%BC%E3%83%9F%E3%83%83%E3%82%B7%E3%83%A7%E3%83%B3
ファイルを読み取り専用にするパーミッションの効果は?
読み取り専用ファイルのパーミッションは444とかですよね。
では、444とかのパーミッションを設定すれば改ざんされることは無いのか?
実は、ファイルのパーミッションを読み取り許可のみにしても、書き込みを禁止できません。
つまり、444でも簡単に改ざんされます。
ファイルにアクセスできる状態の設定なら読み取り専用にしても、改ざんを防ぐ効果はありません。
書き込みを完全に禁止するには、ファイルのパーミッションを000にする必要があります。
しかし、それではファイルにアクセスできなくなり、ファイルが無いのと同じです。
ディレクトリを書き込み禁止にするパーミッションの効果は?
ファイルのパーミッションばかりに目が行きますが、実はディレクトリのパーミッションも重要です。
ファイルが存在するディレクトリのパーミッションを書き込み禁止(555)にします。
そのディレクトリにあるファイルが編集できなくなります。
つまり、ファイルの改ざんも行えなくなります。
これはかなり強力です。
例えば、HTMLサイトなどの静的ファイルで構成されたサイト場合は、公開ディレクトリを書き込み禁止にしてしまうことで、公開ディレクトリ直下のファイルは書き込み禁止になり、改ざんされることは無くなります。
注意点
サブディレクトリのパーミッションが555ではない場合は、サブディレクトリ以下のファイルは書き込み出来てしまう。
改ざんされにくいサイトの運用方法
- すべてのディレクトリを書き込み禁止(555)にしておく。
- ファイルの変更や追加を行う時だけ、書き込み許可(777)を与える。
- ファイルの変更が終わったら、ディレクトリを書き込み禁止(555)にする。
WordPressサイトでパーミッションを555にすると何ができなくなるか?
WordPressやプラグイン、テーマのアップデート、プラグインの新規追加等のファイルを更新する処理ができなくなります。
まとめ
WordPressサイトの場合は、プラグインのアップデートやテーマの更新、さらにWordpressコアの更新などでファイルの書き換えは頻繁に行われますが、それ以外のタイミングでファイルの更新は行われません。
サイトの改ざんを防ぐ方法はいろいろ言われていますが、基本的にはディレクトリを書き込み禁止(555)にするのが一番強力だと思います。
もちろん、運用上、そのディレクトリには、自分も書き込めなくなるので、変更する時には書き込み許可を与える手間がかかります。
しかし、本当に改ざんされては困るサイトであれば、セキュリティのプラグインを入れてサイトを重くするよりも、ディレクトリのパーミッションを管理する方が安全だし、サイトも重くなりません。
コメント