非公開リソースを非表示にすることでワードプレスのセキュリティを向上させる


9

私はワードプレスの初心者です。非公開リソースを非表示にすることで、ワードプレスマルチサイトのセキュリティを改善したいと考えています。wp-admin、wp-configなど

私の設定は機能しているようですが、この設定が何かを壊す可能性があるかどうかわかりません(コア機能、人気のプラグインなど)。

  1. 私の設定は一般的に良いですか?
  2. 私の設定は本当のセキュリティを改善しますか、それとも私の時間を無駄にしていますか?

httpd-vhosts.conf(Apache)

# Disallow public access php for .htaccess and .htpasswd files
<Files ".ht*">
    Require all denied
</Files>

# Disallow public access for *.php files in upload directory
<Directory "/htdocs/wp-content/uploads/">
   <Files "*.php">
       deny from all
   </Files>
</Directory>

# Disallow public access for... 
<Files "wp-config.php">
   order allow,deny
   deny from all
</Files>

<Files "readme.html">
   order allow,deny
   deny from all
</Files>

<Files "license.html">
   order allow,deny
   deny from all
</Files>

<Files "license.txt">
   order allow,deny
   deny from all
</Files>

# Because we do not use any remote connections to publish on WP
<Files "xmlrpc.php">
  order allow,deny
  deny from all
</Files>

.htaccess

RewriteEngine On
RewriteBase /

# List of ACME company IP Address
SetEnvIf Remote_Addr "^127\.0\.0\."      NETWORK=ACME
SetEnvIf Remote_Addr "^XX\.XX\.XX\.XX$"  NETWORK=ACME
SetEnvIf Remote_Addr "^XX\.XX\.XX\.XX$"  NETWORK=ACME
SetEnvIf Remote_Addr "^XX\.XX\.XX\.XX$"  NETWORK=ACME

# Disallow access to wp-admin and wp-login.php
RewriteCond %{SCRIPT_FILENAME} !^(.*)admin-ajax\.php$ # allow fo admin-ajax.php
RewriteCond %{ENV:NETWORK} !^ACME$ # allow for ACME
RewriteCond %{SCRIPT_FILENAME} ^(.*)?wp-login\.php$ [OR]
RewriteCond %{REQUEST_URI} ^(.*)?wp-admin\/
RewriteRule ^(.*)$ - [R=403,L]

# Block user enumeration
RewriteCond %{REQUEST_URI}  ^/$
RewriteCond %{QUERY_STRING} ^/?author=([0-9]*)
RewriteRule ^(.*)$ / [L,R=301]

# Block the include-only files.
# see: http://codex.wordpress.org/Hardening_WordPress (Securing wp-includes)
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
#RewriteRule ^wp-includes/[^/]+\.php$ - [F,L] # Comment for Multisite
RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]

function.php

<?php
// Remove unnecessary meta tags
// <meta name="generator" content="WordPress 4.1" />
remove_action('wp_head', 'wp_generator');

// Disable WordPress Login Hints
function no_wordpress_errors(){
    return 'GET OFF MY LAWN !! RIGHT NOW !!';
}
add_filter( 'login_errors', 'no_wordpress_errors' );

wp-config.php

<?php
define('DISALLOW_FILE_EDIT', true);
define('DISALLOW_FILE_MODS', true);

3
新規で不明な場合は、Sucuri Security、iThemes Security、Wordfence Securityなどのプラグインを確認してください。これらには複数のオプションがあります(プラグインを使用するように強制しているわけではありませんが、ユーザーベースはしっかりしています)
bravokeyl

回答:


1

使用remove_action()たとえば、不要なリンクを削除することができます。

remove_action('wp_head', 'rsd_link'); //removes EditURI/RSD (Really Simple Discovery) link.
remove_action('wp_head', 'wlwmanifest_link'); //removes wlwmanifest (Windows Live Writer) link.
remove_action('wp_head', 'wp_generator'); //removes meta name generator.
remove_action('wp_head', 'wp_shortlink_wp_head'); //removes shortlink.
remove_action( 'wp_head', 'feed_links', 2 ); //removes feed links.
remove_action('wp_head', 'feed_links_extra', 3 );  //removes comments feed. 

1
コードを投稿するときは、コードのフォーマットを使用してください。
bravokeyl 2016年

-1

サイトをcPanelで実行していますか?

その場合は、コントロールパネルを探索すると、いくつかの優れたモジュールが表示されます。

  • ホットリンク保護
  • ヒル保護

下では高度なタブ、探しインデックス。クリックすると、非常に簡単にリソースをカスタマイズして「非公開」リソースを非表示にすることができます。

ここに画像の説明を入力してください


ホットリンクはセキュリティとは何の関係もありません。あなたは完全に安全でホットリンクと「リーチング」を可能にすることができます
Mark Kaplun

あなたはその声明に誤りがあります。複数の最適化手法を投稿することに対する反対票を得たとは信じられません。(facepalm)
イロおじさん16年

1
あなたが最適化とセキュリティの違いを知らない場合には、手のひらを顔に当てるある:(。
マーク・Kaplun
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.