MB-Support

パソコン初心者のサポートページ

1.携帯サイトでパソコンからアクセスを遮断してみる:IIS 7.5

 IIS 7.5 の IP アドレスおよびドメインの制限と使って、携帯サイトからアクセス許可して、それ以外( PC など )からのアクセスを遮断する方法を試してみました。


携帯電話向けサイトを構築して、それをパソコンからアクセスされると都合が悪い場合、例えば、パソコンサイトとして掲載した内容を縮小させ、携帯電話向けページを作成して公開した場合、パソコン向けの検索サイトでパソコン版より携帯サイトの方が上位にヒットする場合もあります。これを排除するために、パソコンからはアクセスできない携帯サイトを設定しようとしましたが、検索サイトのクローラー、robots.txt 、!DOCTYPE などに依存して、効果がないのかも知れない事に気がつきました。しかしながら、これらの事も踏まえ、実験としてやってみたいと思います。



例えば、PC 向けサイトを「wwwroot」フォルダーにして、その中に携帯向けサイトを格納する「i」フォルダーを作成したとします。この場合、携帯電話がアクセスするグローバル IP アドレス、また、携帯サイトに関係するクローラーを許可する設定は、「i」フォルダーだけになります。



インターネットインフォーメーション サービス(IIS)マネージャーを起動して、「i」フォルダーまで移動して、「機能ビュー」の「IPアドレスおよびドメインの制限」をダブルクリックします。



もし、これが無ければ、コントロールパネルの「プログラムのアンインストール」をクリックして、「Windows の機能の有効化または無効化」をクリックします。「Windows の機能」で「インターネット インフォーメーション サービス」→「World Wide Web サービス」→「セキュリティ」→「IP セキュリティ」をチェックして、「OK」ボタンをクリックしてインストールします。しかし、この画面は Windows 7 の機能制限版 IIS7.5 であり、現実的に公開する WEB サーバーは、Windows Server 製品となります。Windows Server 2008 、または、2008 R2 では、管理ツールのサーバー マネージャーを起動して、「役割」を選択して「役割の追加」をクリックします。

IP セキュリティ <ipSecurity> - TechNet



「IP アドレスおよびドメインの制限」で、「操作」の「機能設定の編集...」をクリックします。「特定できないクライアントのアクセス(A)」を「拒否」に設定して、「OK」ボタンをクリックします。これで、全てのユーザーが「i」フォルダーにアクセスできなくなります。



許可する グローバル IP アドレスを入力するには、「許可エントリの追加...」をクリックします。「特定の IP アドレス」は、例えば自分の PC からはアクセス可能にしたい場合、自分の PC のローカル IP アドレス(例:192.168.0.60) などを入力します。「IP アドレスの範囲」を指定する場合は、IPアドレスとマスクまたはプレフィックスを入力します。マスクはサブネットマスク(例:255.255.255.0)で、プレフィックス(prefix)は接頭辞(例:24)です。マスクとプレフィックスはいずれかを入力します。そもそも、ここに何を入力するかは、先に書きました携帯電話が利用するIPアドレス、携帯サイトに関係する検索クローラーの IP アドレス、そのサイトを自分のPCから参照したい場合は、自分のパソコンの IP アドレスになります。これに関しては、各メーカーが公表していますが、面倒なので次のサイトを参考にさせてもらいました。

Mobile IP htaccess Maker

アクセスを許可したい携帯キャリアを選択して、アクセスを許可する検索エンジンを選択して、「.htaccess作成」ボタンをクリックすると、入力すべき IP の一覧が表示されます。実際に取得した最初の部分は以下。

order deny,allow
deny from all

#docomo 2010/09/01
allow from 210.136.161.0/24
allow from 210.153.86.0/24
allow from 124.146.174.0/24
allow from 124.146.175.0/24
allow from 202.229.176.0/24

xxx は数字で、最大で 255 、最小で 0 となります。 「.htaccess」を使える場合は便利ですが、IIS 7.5 では使えません。とりあえず、最初の IP アドレスだけを登録してみます。



「allow from 210.153.84.0/24」は、IP アドレスの範囲「210.153.84.0」プレフィックス「24」からのアクセスを、allow(許可)する意味です。設定方法は右のスクリーンショットになります。



「OK」ボタンをクリックして登録が完了した状態が右です。これを全てやるのは面倒なのですが、やるしかないみたいです。



ウィザードに従った設定方法が面倒ならば、applicationHost.config に直接記入する方法もあります。ファイルの場所は以下。


C:\Windows\System32\inetsrv\config

今回、IPアドレスを登録したの「i」フォルダーなので、<location path="Default Web Site/i"> の下にそれらしい記述を発見できます。例えば、「特定できないクライアントのアクセス(A)」を「拒否」、210.153.84.0/24 を設定した状態は以下。


<location path="Default Web Site/i">
    <system.webServer>
        <security>
            <ipSecurity allowUnlisted="false">
                <add ipAddress="210.153.84.0" subnetMask="24" allowed="true" />
            </ipSecurity>
        </security>
    </system.webServer>
</location>

<location path="Default Web Site/i"> は適用するフォルダー(ここでは「i」フォルダー)で、<ipSecurity>が「IP アドレスおよびドメインの制限」を意味します。さらに、、「特定できないクライアントのアクセス(A)」を「拒否」は、allowUnlisted="false" で表されています(逆に許可の場合は true になります)。210.153.84.0/24 の IP アドレスは、<add ipAddress="210.153.84.0"、プレフィックス 24 は、subnetMask="24" となり、「allowed="true"」は前に列挙したアドレスを許可する意味です(逆に許可の場合は false になります)。仕組みが分かったので、この一列をコピーして下に貼り付けていけば、変更する箇所が少なくなるかも知れません(いずれにしても面倒なのは確かです)。

注意が必要なのは、スラッシュが入っていない IPアドレスもあります。例えば以下。

allow from 124.83.159.150

これは、サブネットマスクを必要とせず、IP アドレスだけを指定します。つまり、applicationHost.config では以下の用に記述します。

<add ipAddress="124.83.159.150" allowed="true" />

後にプレフィックスでの登録で許可がまともに動いていない事が判明しました。原因は指定方法なのか、他の設定が関係するのかは不明ですが、サブネットマスクで登録した方が確実のようです。とすると、メーカーが公開している許可すべきプレフィックスをサブネットマスクに変換する必要があります。


プレフィックス サブネットマスク プレフィックス サブネットマスク
0 0.0.0.0 16 255.255.0.0
1 128.0.0.0 17 255.255.128.0
2 192.0.0.0 18 255.255.192.0
3 224.0.0.0 19 255.255.224.0
4 240.0.0.0 20 255.255.240.0
5 248.0.0.0 21 255.255.248.0
6 252.0.0.0 22 255.255.252.0
7 254.0.0.0 23 255.255.254.0
8 255.0.0.0 24 255.255.255.0
9 255.128.0.0 25 255.255.255.128
10 255.192.0.0 26 255.255.255.192
11 255.224.0.0 27 255.255.255.224
12 255.240.0.0 28 255.255.255.240
13 255.248.0.0 29 255.255.255.248
14 255.252.0.0 30 255.255.255.252
15 255.254.0.0 31 255.255.255.254
31 255.255.255.255

つまり、210.153.84.0/24 とあった場合、以下の様に記述します。

<add ipAddress="210.153.84.0" subnetMask="255.255.255.0" allowed="true" />

次のページに続きます。




戻る 一覧表示 次へ


BTOパソコン・ゲームPC・自作パソコンなら【TSUKUMO】 - 自作PCに必要なパーツ、豊富な品揃え

Copyright © 2013 MB-Support パソコン初心者のサポートページ All Rights Reserved.

管理人サイト閲覧方法プライバシーポリシー著作権/免責事項