人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPで質問です。
下記、IPはダミーです。

あるサービスで、こちらのサーバーにアクセスしてくる仕組みがあるのですが、それ以外からのアクセスを禁止したく思います。

IP指定で、
IPアドレス帯:xxx.xxx.240.65?90
という記載があり、実際そのサービスからは
xxx.xxx.240.75でアクセスがきました。

要は、上記は
xxx.xxx.240.65?xxx.xxx.240.90の間のIPを
許可するようにすればよいのでしょうか?


●質問者: makocan
●カテゴリ:インターネット
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● cawbridge2013
●150ポイント

IPテーブルで指定IPアドレス以外のパケットを破棄。

http://d.hatena.ne.jp/ihiroky/touch/20100104/1262590176


2 ● a-kuma3
●150ポイント ベストアンサー

php のプログラムで、アクセスしてくる相手の IPアドレスを確認して処理を振り分けるとしたら、こんな感じになります。

<?php

$ip = $_SERVER['REMOTE_ADDR'];

if (preg_match('/^xxx\.xxx\.240\.(\d+)$/', $ip, $matches)) {
 $oct4 = intval($matches[1]);
 if (65 <= $oct4 && $oct4 <= 90) {

 /* ここ以降に、許可するクライアントへの処理 */
 ...
 /* ここまで */

 return;
 }
}

/* 許可されないクライアント */
http_response_code(403);
?>

許可されないクライアントに対しては、レスポンスを空にしておくだけでも良いのかもしれませんが、403 (Forbidden) を返すようにしてます。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ