高倉組長

 芸能界とか893とかお金の話しとか

security wp

WordPress管理画面をプラグインを使わずにログインURLをカスタマイズする方法

WordPressのログインURLは「wp-login.php」と決まっている。

 

WordPressは今では大手企業でもよく使われているすが、彼らはセキュリティの意識も高い。
で、ログインURLも見てみるとやはりURLを変えており流石だなと思うのだが、

そもそもなぜWordPress管理画面のログインURLを変更するのかというとブルートフォースアタックによるセキュリティ破りから防御するためだ。

20150209-movable-type-seminar-14-638

ブルートフォースアタックとは正しい組み合わせが見つかるまで、ログイン資格情報の「推測」を網羅するWEBサイトの最も典型的なセキュリティ侵害だ。
あなたのWordPressの管理画面のログインURLがhttp://yoursitedomain/wp-login.phpと分かっている状態だと、毎日のようにブルートフォースアタックにさらされている可能性がある。

そして万が一にもそのままハッカーに管理画面にアクセスされてしまえば、WEBサイトのファイルを改ざんされたり個人情報の流出につながったりと今までの蓄積を一瞬でパァーにするような重大な被害に及ぶかもしれない。
なのでそもそもログインURLから謎なものにしておけば、ブルートフォースアタックにさらされるリスクもある程度軽減されるかと思われるのでこのカスタマイズは、しておくといつか良いことがあるはずだ。

 

やり方

 

まずは.htaccess無いの情報を保存。

 

そして下記コードを丸ごとコピペして.htaccessに追記。
.htaccessはWordPressをインストールしたルートドメインの直下にある。

 

 

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^enter/?$ /wp-login.php?xxxxxxxx [R,L]
RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$
RewriteRule ^dashboard/?$ /wp-login.php?xxxxxxxx&redirect_to=/wp-admin/ [R,L]
RewriteRule ^dashboard/?$ /wp-admin/?xxxxxxxx [R,L]
RewriteRule ^register/?$ /wp-login.php?xxxxxxxx&action=register [R,L]
RewriteCond %{SCRIPT_FILENAME} !^(.*)admin-ajax\.php
RewriteCond %{HTTP_REFERER} !^(.*)yoursitedomain/wp-admin
RewriteCond %{HTTP_REFERER} !^(.*)yoursitedomain/wp-login\.php
RewriteCond %{HTTP_REFERER} !^(.*)yoursitedomain/enter
RewriteCond %{HTTP_REFERER} !^(.*)yoursitedomain/dashboard
RewriteCond %{HTTP_REFERER} !^(.*)yoursitedomain/register
RewriteCond %{QUERY_STRING} !^xxxxxxxx
RewriteCond %{QUERY_STRING} !^action=logout
RewriteCond %{QUERY_STRING} !^action=rp
RewriteCond %{QUERY_STRING} !^action=register
RewriteCond %{QUERY_STRING} !^action=postpass
RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$
RewriteRule ^.*wp-admin/?|^.*wp-login\.php /not_found [R,L]
RewriteCond %{QUERY_STRING} ^loggedout=true
RewriteRule ^.*$ /wp-login.php?xxxxxxxx [R,L]
</IfModule>

次にyoursitedomainを自分のサイトのドメインに変更する。
yoursitedomainの部分は全部で5箇所あるのですべて置き換えること。

これだけの作業によりログイン画面が、
http://yoursitedomain/wp-login.php
がログイン不可になって
http://yoursitedomain/wp-login.php?xxxxxxxx
でログインが可能となる。

xxxxxxxxのところは自分の好きな覚えやすい文字列に置き換えておこう!

 

その他もっとセキュリティを強化する方法紹介サイト

セキュリティ向上のためのWordPress管理画面のログインURLカスタマイズ方法

-security, wp