(3) 自分自身からのアクセスは無制限に許可し、自分以外からのアクセスをすべて拒否

自分からのアクセスは許可し、自分以外の人物からのアクセスはすべて拒否したい場合は、IPアドレスを使ってアクセス制限を行う方法が使えます。

第三者からのアクセスだけを拒否
▲自分の使っているIPアドレス以外からはアクセスできなくする

■記述 (※IPアドレスを指定)

この場合は、「一旦すべてのアクセスを拒否する」記述と、「例外としてアクセスを認める」記述を加えます。 例えば、以下のように記述します。

order deny,allow
deny from all
allow from 202.222.92.201

この3行の意味は、以下の通りです。
[1行目] 拒否設定→許可設定の順で解釈させる
[2行目] あらゆるアクセスを拒否する
[3行目] IPアドレス「202.222.92.201」からのアクセスだけを許可する

上記のように記述すると、IPアドレス「202.222.92.201」からアクセスした場合だけアクセスが許可され、 それ以外のIPアドレスからのアクセスはすべて拒否されます。
ここに自分が利用しているIPアドレスを記述しておけば、自分だけがアクセスでき他人からのアクセスを拒否できるわけです。

なお、大学や会社など、大きなネットワークが利用しているIPアドレスを記述した場合、同一のIPアドレスを用いてインターネットに接続しているユーザすべてからのアクセスを許可してしまうことになりますので注意して下さい。
(このことを利用して、ある特定の組織内からだけアクセスを許可する設定も可能です。)

■注意点

※プロバイダ提供の回線にダイアルアップ接続している場合は、インターネットに接続するたびにIPアドレスが変化してしまうことが多いため、この記述を活用することは難しいでしょう。 ADSLやFTTHのような常時接続環境であれば、あまりIPアドレスは変化しないので、(自分に割り当てられたIPアドレスが変化するまでは)この記述を活用できます。
※IPアドレスが頻繁に変更される環境を用いている場合は、基本認証を使った(IDとパスワードによる)アクセス制限を施す方法が現実的でしょう。

※自宅内でLANを構築している場合(=インターネット接続にブロードバンドルータなどを用いている場合)、各PCに割り当てられているIPアドレスは、たいていグローバルIPアドレスではなくプライベートIPアドレスです。 その場合、「.htaccess」ファイルへは、ルータなどに割り当てられている「グローバルIPアドレス」の方を記述しなければなりませんので注意して下さい。 (プライベートIPアドレスを記述しても意味がありません。)

■記述 (※ホスト名を指定)

IPアドレスのほか、ホスト名を記述することもできます。

order deny,allow
deny from all
allow from .allabout.co.jp

上記だと、allabout.co.jp ドメインからのアクセスだけが許可されます。
※abc.allabout.co.jp や xyz.allabout.co.jp などからもアクセスできます。

なお、許可するIPアドレスやホスト名の記述は、以下のように必要なだけ列挙できます。

order deny,allow
deny from all
allow from 202.222.92.201
allow from 115.30.0.33
allow from .allabout.co.jp
allow from .about.com

■対象を限定

前ページでご紹介したように、アクセス拒否対象を限定して以下のように記述することも可能です。

<Files password.dat>
    order deny,allow
    deny from all
    allow from 202.222.92.201
</Files>

■用途

自分が利用しているIPアドレスを記述しておけば、自分以外のユーザからのアクセスを拒否できます。 また、自分の属する組織が利用しているIPアドレスやホスト名を列挙しておけば、その組織内からのアクセスだけを許可し、それ以外のアクセスを拒否できます。

自分だけが利用できればよいファイル置き場や、組織内だけで利用する掲示板を関係者などに活用できるでしょう。

おわりに

今回は、認証などを経ることなく、問答無用でアクセスを拒否する設定方法をご紹介いたしました。 第三者にダウンロードされると困るようなディレクトリやファイルを隠しておく際などにご活用下さい。



※記事内容は執筆時点のものです。最新の内容をご確認ください。
※OSやアプリ、ソフトのバージョンによっては画面表示、操作方法が異なる可能性があります。