【.htaccess】特定の相手のアクセスを拒否・サイトに制限をかける

    icon-clock-o読了時間:約9分52秒

このブログを始めて以来、ちょくちょく記事内容や画像を無断盗用されています。
それだけ皆さんの参考になっているのだと思えば喜ばしいのですが
たまたま弊社記事と盗用記事の両方を見かけたお客様に
こちらがパクったのだと勘違いされて大変悲しい思いをしたので、
パクリを見かけたら削除をお願いしたり、Googleに著作権侵害申し立てをしたりしています。

盗用は減らないのでイタチごっこですし、いい加減に放っておこうかなと思うこともあるのですが、
会社としての信用が損なわれるという実害は見過ごせない。
ということで相変わらず申し立てはしているのですが、
そもそも盗用するようなひとは今後うちのサイトに
入れないようにすればいいんじゃないか、と気づいた(遅い)ので
分かっている相手のドメインやIPアドレスのアクセスを弾く設定をしてみました。

同じく無断転載にイラッとしている方や、
悪質なユーザーに困っているサイト運営者さんのご参考になれば幸いです。



.htaccess(エイチティーアクセス)ファイルでアクセス制限をかける

サーバーの挙動を制御するApacheというプログラムソフトに対する設定を行うファイルが.htaccess です。

こうして言葉にすると何を言っているのか良く分かりませんね。
要するに、自分のサイトが間借りしているサーバーに対して
『 こういう時はこうしてほしい 』 というお願いを記述するファイルが.htaccess
ということです。

今回ご紹介するのは、その.htaccessファイルに、怪しいドメインや
来てほしくないホストを記入して、サーバーでアクセスを弾いてもらう方法です。
うっかり一般の人も使っているドメインを弾くとその人達も入れなくなってしまうので、
ドメイン指定をする場合は慎重に行ってください。

また、.htaccess ファイルは記述やアップロード方法を間違えると
サイトそのものがエラーで表示されなくなったりもしますので取り扱いは慎重になさってください。
また、何か間違えてしまった時にすぐ元に戻せるように
念のため元の.htaccess ファイルのコピーを保存しておきましょう。

今の.htaccess ファイル状態を保存・確認

いつも.htaccess ファイルを編集して使っている方なら良いのですが、
今まではテンプレートを借りてそのまま運営していたので、
今回初めて.htaccess ファイルをいじる、という方はまず現状の確認と、コピー作成を行ってください。

FFFTPなどのFTPクライアントソフトを使って、現状の.htaccess ファイルをダウンロードします。
htaccessファイルダウンロード
ファイルが保存されているフォルダを開き、ダウンロードした.htaccess ファイルを見つけてください。
右クリックでコピー&貼り付けして複製を作り、ファイルの名前と拡張子を変更します。
『 .(ドット) 』 から始まる名前のままだと、編集・保存ができないので、
ドットは削除して、テキスト用の拡張子『.txt』を最後に付けてください。
これがいざという時のバックアップなので、間違えて編集・削除しないようご注意ください。
htaccessファイルコピー
次に元のファイルの名前を変更します。
これも『 .(ドット) 』 から始まる名前のままだと、編集・保存ができないので、
一時的に名前を変更して、テキスト用の拡張子『.txt』を付けてください。
htaccessファイルの名称変更
テキストファイルとして保存されたら、ダブルクリックで開くか、テキストエディタを選択して開きます。
テンプレートでくっついている.htaccess ファイルはほぼデフォルトの状態で何も記載されていないと思います。
既に何かが記載されている場合は、何が書かれているのかこの機会に調べてみてもいいですね。


.htaccess ファイルに記述する内容

メモ帳などのテキストエディタで拒否内容を記述して保存しましょう。

例としてIPアドレスとドメインを4件拒否してみます。
『deny from 』の後に拒否したい相手のドメインやIPアドレスを入れます。

解説

説明コメントを入れるとこんな感じ。

実際に記載する際には英字のみ記述してください。
余計な記号や文字を入れるとエラーが起きますのでご注意。
また、半角スペース(空白)の部分を全角にしないようにご注意ください。


.htaccess ファイルを保存してアップロード

記述できたら、ファイル保存してから、FFFTPソフトなどでサーバーにアップロードします。
.htaccess ファイルは、拡張子を付けているとサーバー上で正常に動作しません。
そのため、テキストファイルを作成した時に付いている 『 .txt 』 などの拡張子を削除する必要があります。

保存とアップロードの手順

『 .(ドット) 』 から始まるファイル名は保存できないと思いますので
ひとまずドット無しで htaccess.txt にしておきます。
   ↓
FTPソフトでファイルをアップロード
   ↓
サーバー側で 『 .htaccess 』 に名前を変更する
htaccessファイルをサーバー側で名前変更
古いファイルと、新しいファイル、両方が『 .htaccess 』 という名前になった場合
新しい方が自動的に優先され、古いファイルに上書きされます。

こうして .htaccessファイルがサーバー上にアップロードされると、
そこに記述した指定が反映されるようになります。
もしも上手く動作せず、サイトにエラーが出るようなら、
一旦ファイルを削除して、もう一度ファイルを作り直してください。


お好みのエラーページを表示する方法

.htaccessファイルの設定が完了すると、拒否リストのドメイン(もしくはIPアドレス)からアクセスしても
403 Forbidden(閲覧禁止・アクセス拒否)ページが表示されるようになります。
403エラーページ
通常の403エラーページは 『 Forbidden 』 や 『 403 Forbidden 』 と書かれた文字だけのページです。
自分で403エラーページを作成して、.htaccessファイルで 『 403エラーの時はこのページを 』 と設定しておけば
お好みのページを表示させることもできます。

403エラー『Forbidden』のページを指定

専用のエラーページを作り、サーバーにアップロードします。
ページのURLが『 https://www.ドメイン.co.jp/forbiddenerror.html 』の場合は
以下のように.htaccessファイルに記述してください。

404エラー『FILE NOT FOUND』のページを指定

同じように『そのページは見つかりません』という時に出て来る404エラーの際の
表示ページを指定することもできます。
ページを作り、サーバーにアップロードしてから
URLが『 https://www.ドメイン.co.jp/filenotfounderror.html 』の場合は
以下のように.htaccessファイルに記述してください。

例えばうちのサイトだとこんな感じ。
わざと間違えてるうちのサイトURLのリンク
『 すいませんがそのURLをのページは存在しないようなので、
  他のページを見るか、直接お問い合わせください 』
と、問い合わせ先を入れたり、4コマを入れたりしています。
404エラーページ


今回アクセス拒否した相手

今回アクセス拒否したドメインは以下の3件。

linode.com

このブログの管理画面に不正アクセスしようとしていたドメインを拒否。
linode.com
リノードとは、アメリカにあるレンタルサーバー企業なのですが、
管理がゆるっゆるなせいで、スパムメールの送信元や、
不正アクセスの侵入元として犯罪の温床になっているサーバーです。
中には普通にレンタルしているだけの善良な方も居るのでしょうが、
日本人で借りているひとはかなり少ないと思いますし、
選り分けるのも大変すぎるので一斉に拒否しておきます。

roadmap.co.jp、securitynavi.jp

こちらは株式会社ロードマップと、
同社が運営しているセキュリティナビというサイトのドメインです。
うちのブログの画像をブログに盗用していました。
今は画像にも著作権表記を入れるようになったので盗用は減ったのですが、
どうやら著作権表記を入れる前に画像を持っていかれていたようです。
株式会社ロードマップによる画像パクリ
PCセキュリティの業者なのに人んちの画像パクるって
自分から信用を手放しているのと同じことでは…(。・ × ・)
と思ったので、もう二度とお越しいただかなくて結構です!という思いを込めてアクセス拒否しました。

 良かったら押してみてください♥

  • このエントリーをはてなブックマークに追加
  • Pocket