WordPressの乗っ取りなどを防ぐために、主要なファイルはアクセス権限(パーミッション)を正しく設定しておく必要があります。
基本的には、自分(オーナー)のみに主だった権限が与えられていて、その他のユーザーは必要に応じて読み込みができるようにうする必要があります。
また、自分(オーナー)であっても実行権限は必要な場合のみ付与します。
注意点
次のアクセス権限は誰でも書き込める設定のため、これらの権限にはしないこと。
権限(数値) | 権限(シンボル) |
---|---|
777 | rwxrwxrwx |
666 | rw-rw-rw- |
主要ファイルとアクセス権限(パーミッション)の設定
ファイル・ディレクトリ | 権限(数値) | 権限(シンボル) |
---|---|---|
.htaccess | 604 | rw—-r– |
wp-config.php | 400 | r——– |
HTMLや画像 | 604 | rw—-r– |
ディレクトリ | 705 | rwx—r-x |
CGIの実行ファイル | 700 | rwx—— |
CGIのデータファイル | 600 | rw——- |
プラグインとテーマの注意点
ファイルやディレクトリのアクセス権以外にも、テーマやプラグインに脆弱性がある場合に、サイトが改ざんされるリスクがあります。
このため、プラグインとテーマに関しては以下を守ることが大切です。
- 使用中のテーマやプラグインは常に最新版にする。
- WordPressの公式サイトで配布されているテーマやプラグイン以外は利用しない。
- 長期間更新されていないプラグインは利用しない。(Wordpressの現在のバージョンに適合されているか確認する)
- 使用しないプラグインは削除する(無効ではない)
特にテーマはファイル数も多く、サーバー容量を圧迫するため使わないものは削除しておくべきです。※ただし、何かあった時のために公式テーマは1つ残しておきます。(現在のテーマが使えなくなったとき、自動的にインストールされている公式テーマに切り替わります。)
FTPソフト利用時の注意点
FTPソフトを使えばサーバーに置いてあるWordpressの根幹となるファイルにアクセスできます。
このため、FTPを使う際のプロトコルは必ず暗号化されているものを使う必要があります。FTPは暗号化されていないのでNGです。
暗号化されているプロトコルの例は以下になります。サーバー側がサポートしているプロトコルをご使用ください。
プロトコル | 内容 | 備考 |
SFTP | 暗号化にSSH(Secure Shell)を使った接続 | 秘密鍵と公開鍵を使ったSSHを使う。ポートは22 |
SCP | 暗号化にSSH(Secure Shell)を使った接続。SFTPよりも速い。 | UNIX系サーバーで使える。ポートは22 |
WebDAV | httpの拡張。ドラッグドロップなどができる。FTPソフトで接続したときの見え方はFTPなどと同じ。 | ポートは443(または80)。 |
Amazon S3 | Amazonが提供するストレージサービスS3。 | ポートは443。AWS CLI接続を簡単にできる |
WordPressインストール後に削除可能なファイル
WordPressはwp-admin/index.php ファイルなど、インストール後に不要になるファイルがいくつかあります。
正確には、再インストールや初期化をする場合に必要になるのですが、サイトを消す可能性がない場合は、第三者に実行されのっとられてしまうこともあります。
このため、不要なファイルは削除することもセキュリティを改善するためには推奨となります。
また、 /license.txt のように、サイトの機能に関係のないファイルが含まれているのでこれらも削除しても問題ありません。
インストール後不要になるファイル
/wp-admin/install.php | インストール用ファイル |
/wp-admin/install-helper.php | インストールのヘルプファイル |
/wp-config-sample.php | 設定ファイルのサンプル |
/wp-admin/setup-config.php | WordPress設定ファイル |
WordPressの説明ファイル
/license.txt | WordPressのライセンス規約 |
/readme.html | WordPressの説明文 |
\readme-ja.html | WordPressの説明文(日本語) |
/wp-admin/about.php | WordPressのver説明 |
/wp-admin/credits.php | WordPressの開発者紹介 |
/wp-admin/freedoms.php | WordPressの利用説明 |
利用されていないファイル
/wp-admin/user/ |
/wp-admin/css/about.css |
rtlファイル
末尾に「-rtl」とついているファイルは、アラビア語など右から左に読む言語用のファイルなので、日本語のみの利用の場合は不要です。