WordPressファイルのアクセス許可:安全なWebサイトとWebサーバーのアクセス許可を構成するためのガイド

公開: 2020-07-02

WordPressは、PHPを実行するすべてのオペレーティングシステムでほぼ実行できます。 ただし、WordPressWebサイトの大部分はLinuxで実行されています。 したがって、Linuxファイルのパーミッションを理解することが重要です。

ファイルのアクセス許可を正しく取得することが重要です。 誤ったファイル権限を設定すると、Webサイトが攻撃を受ける可能性があります。 ファイルのアクセス許可が正しくないと、権限のないユーザーが機密性の高いファイルやデータにアクセスする可能性があります。 このようなデータは、より大きな攻撃への足がかりとして使用できます。

WordPress管理者として、特にLinuxを初めて使用する場合、ファイルのアクセス許可は少し気が遠くなるように思えるかもしれません。 恐れるな! このガイドでは、Linuxでのファイルパーミッションをゼロから説明します。 また、Linuxファイルのアクセス許可がWordPressWebサイトにどのように適用されるかについても説明します。

目次

  • ファイルのアクセス許可とは何ですか?
    • 権限グループ
    • 権限の種類
  • 権限の表現
  • 推奨されるWordPressファイルのアクセス許可
  • WordPressファイルのパーミッションを修正する方法
    • 共有ホスティングサービスについて
    • FTP経由
    • SSH経由
  • ボーナスのヒント:ファイルのアクセス許可を超えたセキュリティ

ファイルのアクセス許可とは何ですか?

権限グループ

それはすべてから始まります。 他のオペレーティングシステムと同様に、Linuxにはユーザーグループの概念があります。 がファイルにアクセスできるかを定義する場合、Linuxシステムの各ファイルとディレクトリには3つの権限グループがあります。

  • オーナー
    • 各ファイルまたはディレクトリには所有者がいます。
    • 所有者権限は、ファイルまたはディレクトリの所有者にのみ適用されます。 他のユーザーの行動に影響を与えることはありません。
  • グループ
    • 各ファイルまたはディレクトリには、そのファイルまたはディレクトリへのアクセスを許可されたユーザーのグループを割り当てることができます。
    • グループ権限は、ファイルまたはディレクトリに割り当てられているグループにのみ適用されます。 他のユーザーの行動に影響を与えることはありません。
  • 他の
    • 各ファイルまたはディレクトリは、「他のすべての人」が持つ権限を定義できます。 つまり、所有者または設定したグループは別として。
    • 他の権限は、システム上の他のすべてのユーザーに適用されます。 これは、無意識のうちに全員へのアクセスを許可する可能性があるため、最も見たいアクセス許可グループです。

権限の種類

ファイルまたはディレクトリにアクセスできるユーザー指定する方法がわかったので、ファイルまたはディレクトリに対して各所有者グループ、およびその他に付与するアクセス許可の種類を選択する必要があります。 権限グループ所有者グループその他)に付与できる権限の種類は次のとおりです。

  • 読む
    • 読み取り許可タイプとは、ファイルの内容を読み取るユーザーの機能を指します。
  • 書く
    • 書き込み権限とは、ファイルの内容を書き込みおよび/または変更するユーザーの機能を指します。
    • ユーザーがファイルの内容を読み取ることができなくても、ファイルに書き込むことができるようにすることができます。
  • 実行する
    • 実行権限は、スクリプトなどのファイルを実行するユーザーの機能に影響します。
    • 実行権限により、ユーザーはディレクトリの内容を表示することもできます。

許可の表現

パーミッションがどのように機能するかを理解したので、Linuxパーミッションが実際にどのように表されるかを見てみましょう。 ファイルのアクセス許可は、一連の3つの数字として保存されます。 ただし、文字で表すこともできるため、少し読みやすくなっています。 まず、これらの数字が何を意味するのかを理解しましょう。

  1. 最初の番号
    • 所有者に与えられた権限
  2. 2番目の番号
    • グループに付与された権限
  3. 3番目の番号
    • 他の人に与えられた権限(所有者グループを除く他のすべての人)

各番号は、前に説明した1つ以上のアクセス許可タイプの組み合わせに対応しています。 これを視覚化すると、はるかに理解しやすくなります。 各パーミッションタイプには、パーミッショングループごとに合計される重みがあります。

Linuxのファイルとディレクトリのアクセス許可

混乱している? 頭を包むには時間がかかる場合があります。 それまでの間、アクセス許可グループに割り当てることができるすべての可能なファイルアクセス許可の表を次に示します。

番号手紙説明
0(0 + 0 + 0) --- アクセスなし
1(0 + 0 + 1) - バツ実行する
2(0 + 2 + 0) -w- 書く
3(0 + 2 + 1) -wx 書き込みと実行
4(4 + 0 + 0) r-- 読む
5(4 + 0 + 1) 処方箋読み取りと実行
6(4 + 2 + 0) rw- 読み書き
7(4 + 2 + 1) rwx 読み取り、書き込み、実行

具体的な例を見ると、 644ファイルのパーミッションとは

  • ファイルまたはディレクトリの読み取り書き込みに対する所有者の権限
  • グループには、ファイルまたはディレクトリを読み取る権限があります
  • 他の人はファイルまたはディレクトリを読み取る権限を持っています

ファイラーパーミッション644の説明

通常、これらの値は、間にスペースを入れずに、先頭にまたはdを追加して表示されます。 は通常のファイルを示します。 dはディレクトリを示します。 以下は、Linux ls-laコマンドを使用してディレクトリ内のファイルを一覧表示する例です。

 $ ls -la
合計0
drwxr-xr-x4ユーザーグループ1285月25日23:25。
drwxrwxrwt8ルートホイール2565月25日23:25 ..
drwxr-xr-x2ユーザーグループ645月25日23:25ディレクトリ
-rw-r--r--1ユーザーグループ05月25日23:25file.txt

推奨されるWordPressファイルのアクセス許可

間違ったWordPressファイルのアクセス許可を設定すると、意図した以外のユーザーに誤ってアクセスを許可する可能性があります。 最悪のシナリオでは、これにより、攻撃者がアクセスすることを意図していない重要なファイルの内容を変更できる可能性があります。 また、インターネット上のすべてのユーザーがWordPressインストール内の機密ファイルを読み取ることができる場合があります。

これが、WordPressファイルのパーミッションを777 (-rwxrwxrwx)に設定してはいけない理由です。 これにより、そのファイルを制御できる立場にある人なら誰でも、完全な読み取り、書き込み、および実行アクセスが可能になります。 これは、FTPまたはSSHを介して変更を加えるサードパーティ、またはアップロードフォームを介した攻撃者である可能性があります。

反対に、WordPressがその仕事をするのに物事を制限しすぎないように注意する必要があります。 WordPress自体、およびテーマとプラグインは、多くの場合、いくつかのファイルに安全に変更を加える必要があるためです。 たとえば、WordPressが自動更新して、セキュリティの脆弱性からサイトを安全に保つ場合です。

したがって、議論のために、 444 (-r–r–r–)の許可は、WordPressWebサイトの誤動作を引き起こす可能性があります。 444ではWordPressの取得のみが許可されるため、自動更新は失敗します。 そうは言っても、WordPressを読み取り専用の権限( 444 、またはr–r–r–)で実行すること可能です。 それは非常に巧妙なインストールになります。 ただし、前述の制限を考慮する必要があります。

一部のマネージドWordPressホスティングプロバイダーは、これをすぐにサポートします。 ただし、そのような権限でWordPressを実行する場合は、最初にステージング環境で試してください。

WordPressが推奨するファイルのアクセス許可は次のとおりです。

タイプ数字手紙説明
ディレクトリ755 drwx-wx-wx WordPressインストールディレクトリ
ファイル644 -rwxr--r-- WordPressコア、WordPressテーマおよびプラグイン(一部のテーマおよびプラグインには例外が適用される場合があります)
wp-config.php 600 -rw ------- WordPress構成ファイル
.htaccess 644または
600
-rw-r--r--
-rw -------
Apache HTTPサーバー構成ファイル(NginxまたはApache HTTPサーバー以外のWebサーバーを実行している場合は適用されない場合があります)

WordPressファイルのパーミッションを修正する方法

あるホスティング環境は別のホスティング環境とは異なりますが、WordPressファイルのアクセス許可を常に制御する方法があります。

共有ホスティングコントロールパネルを介してWordPressファイルのアクセス許可を修正する

共有ホスティングを使用している場合は、cPanelやPleskなどのコントロールパネルにアクセスできる可能性があります。 この場合、WordPressサイトのファイル権限を変更するために必要な手順については、ホスティングプロバイダーに確認してください。

FTPを介したWordPressファイルのアクセス許可の修正

WordPressのファイル権限の修正は、FileZillaやCyber​​duckなどのFTPクライアントを介して簡単に行うことができます。 次のスクリーンショットはCyber​​duckのものです。 アクセス許可を変更するファイルまたはディレクトリを右クリックし、[情報]をクリックして、[アクセス許可]タブをクリックするだけです。

プロセスはFilezillaでも同様です。 ファイルを右クリックし、[ファイルのアクセス許可]を選択すると、同様のダイアログが表示されます。

FTPクライアントでファイルのアクセス許可を変更する

SSH経由でWordPressの権限を修正する

すでにSSHクライアントを使用している場合は、Linuxのchmodコマンドを実行してファイルのアクセス許可を変更できます。 上記と同じ例を使用して、wp-config.phpのアクセス許可を644から600に変更するには、次のコマンドを使用します。

 #ディレクトリをWordPressインストールの場所に変更します
$ cd / var / www / html
#wp-config.phpのファイルの詳細を一覧表示します
$ ls -la wp-config.php
-rw-r--r-- 1 www-data www-data 7368 2019年9月2日wp-config.php
#wp-config.phpの権限を現在の644から600に変更します
$ chmod 600 wp-config.php
#変更を確認する
$ ls -la wp-config.php
-rw ------- 1 www-data www-data 7368 2019年9月2日wp-config.php

適切に構成されたWordPressファイルのアクセス許可は、より安全なWebサイトを意味します

カバーされたものを要約しましょう。 ファイルのアクセス許可により、Linuxシステムでファイルまたはディレクトリにアクセスおよび/または変更できるユーザーと方法を指定できることがわかりました。 また、SFTPクライアントとSSHの両方を使用してアクセス許可を変更する方法についても説明しました。 ただし、ここで説明した最も重要なことは、WordPressWebサイトでファイルのアクセス許可を正しく設定するように注意する必要がある理由です。

最初は面倒なプロセスかもしれませんが、ファイルのアクセス許可が正しくないと、WordPressWebサイトに機密ファイルが公開される可能性があります。 さらに、適切な状況が与えられた場合、攻撃者が重大度の低い脆弱性をより危険な脆弱性にエスカレートする可能性があります。

Linuxでファイルのアクセス許可がどのように機能し、WordPressサイトのセキュリティにどのように影響するかについて理解が深まったので、この情報を使用して、自由すぎるWordPressファイルのアクセス許可を強化します。

ボーナスセキュリティのヒント:WordPressファイルのアクセス許可を超えて

正しいWordPressファイルのアクセス許可は、WordPressのセキュリティに関して作業を開始するのに最適な場所です。 ただし、心配するのはそれだけではありません。 WordPressWebサイトのセキュリティ体制を改善するためにすべきその他のことは次のとおりです。

  • あなたのサイトで起こったすべてのことをWordPressアクティビティログに記録し、
  • WordPressファイル整合性モニタープラグインを使用し、
  • 強力なWordPressパスワードポリシーを適用し、
  • WordPressWebサイトに2要素認証を追加します。
  • WordPressファイアウォールをインストールする/オンラインのWordPressファイアウォールサービスを使用する。