パーミッション(=permission=許可)は3桁の数値で表されています。
この数値を変えることによりファイルの権限を設定しセキュリティを高めることができます。
パーミッションを変更することにより弊害が生じる場合もあります。
その場合は一旦パーミッションを元の数値に戻せば OK です。
.htaccessにコードを追記してWPセキュリティを高める
パーミッションの変更方法
FTPソフトを使う
「ファイルを右クリック→パーミッションの変更」から変更することができます。
サーバーのファイルマネージャーを使う
wp-config.php
/public_html/wp-config.php
たとえば、「wp-config.php」はデフォルトでは 644 となっており他者でも読み込みが可能ですが、
「600」に変更することによりセキュリティが高まります。
- 所有者のみ read、write (6) を許可
- 他者は権限なし (0)
もしくは「400」(所有者のみ読み取り可能)でも良いかと。
「400」に設定した場合は「wp-config.php」を書き換える時はパーミッションを一旦「600」に変更し、書き換えたら「400」に戻しておきます。
.htaccess
/public_html/.htaccess
644→604に変更。
xmlrpc.php
※アップデートで復活する
アプリなどでリモートで記事投稿ができる機能になります(XML-RPC)
注意点としては Jetpack やピンバックやトラックバックも使えなくなるので、使っている場合は無効化しない方が良いかと。使っている場合は xmlrpc.php を無効にするのではなく .htaccess で IP アドレス指定が有効です。
DDoS 攻撃の踏み台にすることが流行っていますので、使っていないのであれば「400」もしくは「000」に変更しておくと安心です。
/public_html/xmlrpc.php
/wp-includes/class-wp-xmlrpc-server.php
AH01512: mod_mime_magic
当サイトでは「000」に設定してあるのですが、ブルーフォースアタック攻撃をされると、エラーメッセージが届くようになりました。これもまあ安心と言えば安心…
[日付] [mime_magic:error] [pid ~:tid ~] [client 206.189.85.228:60912] AH01512: mod_mime_magic: can't read `/public_html/xmlrpc.php'
wlwmanifest.xml
/wp-includes/wlwmanifest.xml
アップデートで復活します。
Windows Live Writer で投稿しなければ「000」もしくは削除推奨。
AH00132:Permission denied
無効化した後 ブルーフォースアタック攻撃をされたらエラーメッセージが届くようになりました。
[日付] [core:error] [pid ~:tid ~] (13)Permission denied: [client 40.122.114.186:57358] AH00132: file permissions deny server access: /public_html/wp-includes/wlwmanifest.xml
wp-mail.php
/public_html/wp-mail.php
アップデートで復活します。
メールで投稿しない場合は「000」もしくはファイル削除が安心です。
WordPress のビルトインメール投稿機能は非推奨になっており、今後のリリースで削除される予定です。
メールによるブログ投稿 – WordPress Codex 日本語版
.user.ini
このファイルの中身を変更すると「php.ini」が上書きされます。
wp-config.php と同様に 600 もしくは 400 が望ましいです。
wp-includes
wp-includes
はデフォルトでは「755」になっていますが、
「700」(所有者に対してのみ、すべてのファイルの書き込み権限を許可)の方が良いようです。
参照:ファイルパーミッションの変更 – サポートフォーラム – WordPress.org 日本語
というのも、今までは.htaccessで制御していたのですが WordPress 6 のアップデートでエラーが表示される(ユーザー名が表示される)ようになったファイルがあるので。
エラーが出てもすぐに気が付くものではないのでバーミッション「700」が確実かと。
(もしアップデートなど支障が出たら705か755にすると良いです)
wp-adminとwp-content
デフォルトでは「755」となっていますが「705」に変更します。
他のファイル
index.php などはデフォルトでは「644」となっていますが「604」に変更しておくと良いです。
install.php
/wp-admin/install.php
/wp-admin/install-helper.php
「000」推奨ですが、一部のファイルがWordPressから書き込みできないエラーが生じる場合があるので.htaccessで設定した方が良いかも。
themesとuploads
/public_html/wp-content/themes
/public_html/wp-content/uploads
755→705に変更しました。
- 所有者に読み取り、書き込み、実行を許可
- グループの権限なし
- その他のユーザーには読み取りと実行を許可
php.ini
/php.ini
644→600に変更。
補足:削除しても良いファイル
これらのファイルは削除してもアップデートで復活するので、その都度削除が必要になりますが、
アップデートは年に数回しかないので、そう面倒なことではないです。
不要なファイルは削除してスッキリ整理しておくと見やすくて良いです。
WordPress のライセンス規約。
/license.txt
WordPress の説明書き。
/readme.html
wp-config のサンプル。
/wp-cofig-sample.php
トラックバック機能。
/wp-trackback.php
メールで投稿。
/wp-mail.php