hotlink-icatch セキュリティ
       
         

【ホットリンク】直リンク禁止とはなに?ファイルを守る対策方法

皆さんはご自分のブログやサイトで、多くの画像を使用されていると思います。今回は、ホットリンクについて考えていみたいと思います。

オリジナルのイラストや写真を、サイトの中で使用されている方もいるでしょう。私のサイトも画像(猫ちゃんの写真)が多めのサイトです。

ところで、オリジナルのイラストや写真を勝手に不正使用される可能性があることをご存じですか。

今回は自分のブログやサイトでオリジナル作品や画像を守る方法を1つ紹介します。

右クリック使えなくする、WordPressの画像を保存禁止にする方法
投稿内にある画像だけに右クリックを使えなくして、画像の保存禁止にする方法を詳しく画像付きで解説します。

ホットリンクの制御と、画像のドラッグや右クリック操作を禁止を併用すると、より画像保護対策を強化できます。よければ参考にしてみてください。

ホットリンク(直リンク)とは

ホットリンクとは、直リンクと言われます。

【直リンク】ホットリンクについて

主に画像に対して使われる事が多いです。(画像以外にも、リンクしたファイルなども同様です)

これは、自分のサイト以外から、許可無く画像にリンクを貼られ、他サイトで使用される事です。

例えば、画像を右クリックした時、その中にある「画像のリンクをコピー」を選択したとします。

【右クリック】リンクのコピー

すると、画像のリンクがコピーされますが、ホットリンク(直リンク)とは、その画像URLを、他人が自分のサイトで直接リンクを張って使用することを言います。

ホットリンク(直リンク)するとどうなる

では、その直リンクをすると何か問題があるのでしょうか?

著作権侵害になる

オリジナルのイラストや写真に対して無断利用は、著作権侵害にあたります。

【ホットリンク】その行為ダメ!

いろんな人にサイトを見てもらう事が前提なので、この辺りはグレーゾーンとして捉えられる可能性がありますが…

ただし、サイトのプライバシーポリシーなどに「無断利用不可」など明示されている場合、著作権侵害にあたります。

オリジナルのイラストや写真を投稿している場合、無断利用を不可と考えている場合は、サイトへ文言記載や、ホットリンク対策をしておくことが有効対策になります。

ちなみに、著作権ですが掻い摘んで簡単にご説明したいと思います。

著作権とは

作品を創作した者が有する権利、作品がどう使われるか決めることができる権利。また、著作権は行政機関(特許庁など)の厳しい審査を経て登録する必要がない。つまり、

  • 作った著作物は自分自身が権利を持っています。
  • 作った作品は自身で扱い方を決める権利があります。
  • 著作権は、作品を登録しなくても保護の対象になります。

サーバーの負荷になる

無断で自分のサイト画像にリンクを張られ、画像を利用されている状態がホットリンクです。

【直リンク】ホットリンクが与える影響

例えば、上の図を参考に説明すると

  1. サイトAの画像を、ある外部のサイトBが読み込まれます。(ホットリンクします)
  2. するとリンクされた自身(サイトA)の画像を表示するために、自分のサイトA側画像にも読み込み処理(通信)が発生します。
  3. 結果、サイトA・サーバーに負荷が発生します。

知らない間に通信が発生している現象が起こります。

細かい部分ではありますが、気になる方はホットリンク対策をしておくと良いでしょう。

ホットリンク(直リンク)の対策方法

では、実際に設定方法を解説していきたいと思います。

WordPress の設定ファイルの一つである、.htaccess ファイルを編集します。

ファイルを書き換える時は、必ずバックアップをした上で、自己責任の下行ってください。

FTPで対象の.htaccess ファイルをダウンロード

ファイルの場所は、

/wp-content/uploads/.htaccess

「uploads」フォルダは、WordPress でデフォルトで画像が保存されるフォルダです。

この中の.htaccess ファイルをダウンロードします。

.htaccess ファイルを書き換える

ではまず、ファイル名を「htaccess.txt」に変更します。

拡張子“.txt”を追加してもいいか聞かれるので、「はい」を選択しましょう。

【WordPress】ファイルを書き換える

ファイルを開くと、画像関連に対する記述が既にあるかもしれません。

それは消さずに、追加すればOKです。

【Wordplwss】ファイルに記述

次に実際の追加のコードになります。

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http(s)?://www.自分のアドレス.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://自分のアドレス.com [NC]
RewriteCond %{HTTP_REFERER} !google\. [NC]
RewriteCond %{HTTP_REFERER} !yahoo\. [NC]
RewriteCond %{HTTP_REFERER} !bing\. [NC]
RewriteCond %{HTTP_REFERER} !msn\. [NC]
RewriteCond %{HTTP_REFERER} !search\?q=cache [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_USER_AGENT} !(twitter|Twitterbot|facebookexternalhit|fbcdn|google|hatena|freedly) [NC]
RewriteCond %{HTTP_USER_AGENT} !(googlebot|yahoo|bingbot|msnbot) [NC]
RewriteRule \.(jpg|jpeg|png|gif|webp|js|css|svg)$ - [F]
</IfModule>

コード3・4行目のURLは、ご自身のサイト名に変更し、あとは全てコピーでOKです。

記述した後は保存してファイルを閉じます。

それではコード別に解説したいと思います。

コード別に解説

では、上のコードに何が書かれているかを簡単に解説します。

<IfModule mod_rewrite.c>
この記述をすることで、「設定ファイルを書き換えます」と宣言しています。
</IfModule>

これはいわゆるコードの「宣言」に当たる部分です。

<>と</>の間に必要な記述をすることになります。

RewriteEngine on

次に上記コードですが、これは1行目にあった<mod_rewrite>の「書き換えの有効」をオンにするという意味です。

RewriteCond %{HTTP_REFERER} !^http(s)?://www.自分のアドレス.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://自分のアドレス.com [NC]

順番に説明していきます。

最初の1・2行目は、http(s)でS付き・無しの両方に対応しています。

また、www.がある・無いで分けて記述しています。ここを自分のサイトのアドレスに変更してください。

# これは例です。
RewriteCond %{HTTP_REFERER} !^http(s)?://www.umana.jp [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://umana.jp [NC]
#追加登録したい場合、上記コードをコピーしてアドレス部分を変更
RewriteCond %{HTTP_REFERER} !^http(s)?://追加するアドレス [NC]

このような感じに変更します。

RewriteCond %{HTTP_REFERER} !google\. [NC]
RewriteCond %{HTTP_REFERER} !yahoo\. [NC]
RewriteCond %{HTTP_REFERER} !bing\. [NC]
RewriteCond %{HTTP_REFERER} !msn\. [NC]
RewriteCond %{HTTP_REFERER} !search\?q=cache [NC]

次に、この記述は Google などの検索サイトに対して画像利用の許可をOKにするコードになります。

RewriteCond %{HTTP_REFERER} !^$
# SNS などからの画像参照を許可
RewriteCond %{HTTP_USER_AGENT} !(twitter|Twitterbot|facebookexternalhit|fbcdn|google|hatena|freedly) [NC]
# bot のアクセスを許可
RewriteCond %{HTTP_USER_AGENT} !(googlebot|yahoo|bingbot|msnbot) [NC]

SNS への画像表示の許可、検索用クローラーへのアクセスをOKにするコードです。

クローラーとは、インターネット上にあるWebサイトの文章や画像などの情報を取得して、自動的に検索データベース化する巡回プログラムのことです。

RewriteRule \.(jpg|jpeg|png|gif|webp|js|css|svg)$ - [F]

最後、直リンク(ホットリンク)された時に「403Forbiddenエラー」画面を表示するコードになります。

【ホットリンク】403Error

htaccess.txt をもとに戻す

コードを追加したら、htaccess.txt をもとに戻します。追加前と同様にポップアップ表示がでますが「はい」をクリックしてそのまま進めてください。

【WordPress】ファイルをもとに戻す

次にFTPでアップロードします。こちらがアップロード先になります。

/wp-content/uploads/.htaccess

必ず以下を確認してからアップロードしてください。

  • 変更前の.htaccess ファイルをバックアップしていますか。
  • 変更後の.htaccess ファイルに誤りがないか確認しましたか。
  • アップロード先は間違えていませんか。

以上を確認して問題なければアップロードして完了となります。

まとめ

いかがだったでしょうか。外部サイトから、自分のサイトの画像にリンクを張られ使用されることを「ホットリンク(直リンク)」といいます。

オリジナルのイラストや写真を無断利用するということは、著作権侵害にあたります。そして、微量ですが通信も発生し自分のサーバーやサイトに負荷がかかります。

直リンク(ホットリンク)される影響
  • 無断利用による著作権侵害
  • 通信発生による自身のサーバーやサイトに負荷が発生

最後に、ホットリンクはメリットよりもデメリットのほうが多いので自身でも行わないほうがよいでしょう。

ここまでお読みいただき、ありがとうございました。

コメント

タイトルとURLをコピーしました