雑記

conoha wingで管理画面アクセス制限を堅牢にする

はじめに

このブログはサーバにconoha wingを使っています。

ブログを始めて間もないのですが、

セキュリティ設定は早めにしておきたいなと思いました。(心配性なので)

 

そこで管理画面へのアクセスを

IPアドレスで制限したいと思いました。

(特定の端末からしかログインできないようにすることです)

その中でもこちらの記事やこちらの記事が自分のやりたいことに一番ぴったりでした。

 

しかしconoha wing 特有の設定で難しかったので、

つまづいたことを共有したいと思います。

 

まだ非エンジニアの人に向けて、何がなんだかわからない人に向けても

出来るだけわかるように一番最後の段落を書いてみました。

少しでも学びがあると大変嬉しく思います。

結論

管理画面のへのアクセスを制限したい時は、

wp-login.php(ログイン画面)と

wp-admin(管理画面)へのアクセスを制限するとよさそう。

 

そのためにhomeディレクトリの.htaccessファイルと

wp-adminディレクトリの.htaccessファイルに、

IPアドレスの制限指定を書いて保存する。

どうやってやるのか?

conohaの管理画面にいきます。

サイト管理>サイト設計>応用設計>.htaccess設定と進みます。

これでwordpressのルートディレクトリの.htaccessファイルを編集できます。

そしてこの中に下のコードを書き込みます。

<Files wp-login.php>
Order deny,allow
Deny  from all
Allow from 00.00.00.00 ←自分のIPアドレス
</Files>

これでログイン画面に特定のIPアドレスから入れないように制限できました。

これはかなり嬉しい機能だと思います。

こんな簡単に編集できるんだと思いました。

つまづきポイント

ログイン画面には制限をかけられたので

次は管理画面自体にも制限を書けたいと思いました。

https://www.<ドメイン名>/wp-admin/

で開ける、なんでも操作できるページです。

ログインできなくしたので大丈夫だと思うのですが、

念には念を。。

 

しかし、ここで引っかかりました!

これだとうまくいかない

<Files wp-admin>
Order Deny,Allow
Deny from all
Allow from 00.00.00.00
</Files>

これもうまくいかない

<Files wp-admin/*>
Order Deny,Allow
Deny from all
Allow from 00.00.00.00
</Files>

これもうまくいかない

<Files wp-admin.*>
Order Deny,Allow
Deny from all
Allow from 00.00.00.00
</Files>

そういうことではない

どうやら先ほどの操作画面で書いても意味がないようです。

wp-adminのディレクトリの配下に直接

Order deny,allow
Deny  from all
Allow from 00.00.00.00

と記述したものを配置しなくてはなりません。

conoha wingのコンソール画面から操作できるのは

ルートディレクトリの.htaccessなのです。

.htaccessはそれぞれのディレクトリ(フォルダ)にあります。

wp-adminの配下の.htaccessに書き込む機能ではありません。

ファイルマネージャーというサーバのファイルを取得、配置する

便利な仕組みもあったのですが、なんと「.htaccess」は先頭に「.」が

付いており、隠しファイル扱いされてしまいエラーがおきました。

wp-adminにどうやってファイルを配置したらいいのか

困ってしまいました。

解決方法

conoha wingの公式FAQを参照すると、FPT転送するための方法が書いてありました。

管理画面>サイト管理>FPT>+FPTアカウントと進み、アカウントを作ります。

ユーザ名:好きなものでいいです。

パワスワード:好きなものでいいです。

接続許可ディレクトリ:ディレクトリ指定で「wp-admin/」とつけます。

完了を押すとFPTサーバーという名前でサーバ名が渡されます。

 

そして次にFPTソフトというものを自分のパソコンに入れます。

私はFilezillaというものを使いました。

こちらからダウンロードして使ってください。

あとはconoha の公式にも記載されているのですが、

先に作成したユーザ名、パスワード、サーバ名を利用して、(ポートは空でも接続できました)

サーバと接続します。

そしてローカル(自分のPC)にある

Order deny,allow
Deny from all 
Allow from 00.00.00.00

と書かれた.htaccessファイルをwp-adminディレクトリ(フォルダ)の

下にコピーします。

無事アクセスを制限することができましたー!

非エンジニアのみなさん向け

今回FPT転送というものを使ったのですが、

これはクライアントとサーバ(手元のコンピュータと向こうのコンピュータ)で

ファイルを転送する仕組みです。

conohaの管理画面からconohaのサーバをいじるのが

上の画像の青矢印のイメージです。

このconohaのサーバを世界中の人が見ていて、あなたの記事を読んでいます。

しかし青矢印はconohaの管理画面で決められた行動しかできないため、

赤矢印でつないであげる必要があります。

それがFPT転送です。

管理画面よりも直接的(語弊があるかもしれませんが)です。

最後に

これで自宅のPCからじゃないとログイン画面にもアクセスできないし、

ログインした先の管理画面にもアクセスできなくなりました!

 

私はconoha wingを最初のサーバに選びましたが、大変満足しています。

今回はwp-adminのアクセス制限に一手間かかりましたが、

これ以外につまづいたことは特になく、

初心者の私でもサクサク利用できています。

 

他よりも月額のコストは高いかもしれませんが、

高速でページを表示できることに惹かれて選びました。

詳しい情報は公式サイトをご覧ください。

国内最速・高安定の高性能レンタルサーバー【ConoHa WING】

追記

IP制限をかける方法もありますが、

管理画面にもう一段階パスワード認証(ベーシック認証)をかける方法もありました。

公式ページにまとまっていたのでご参考までに。

https://support.conoha.jp/w/directoryaccess/

ABOUT ME
hirayuki
今年で社会人3年目になります。 日々体当たりで仕事を覚えています。 テーマはIT・教育です。 少しでも技術に親しんでもらえるよう、noteで4コマ漫画も書いています。 https://note.mu/hirayuki