興味深い問題があります。私の会社はクライアント用の小さなアプリケーションサーバーをホストしており、少数のIPだけにアクセスを制限したいと考えています。クライアントは、多くの部門を持つ大企業であり、各部門には独自のネットワーク構造があります。ApacheがIP正規表現を許可/拒否する
私は細部には触れませんが、私の会社のWebサーバーの内部構造のために、Apacheでは従来のallow、deny構文を使用できません。ロードバランサは、Webサーバーに転送し、アプリケーションサーバー自体に転送します。代わりに、私たちはApacheの設定で、次のようなものを使用します。
RewriteCond %{HTTP:X-Forwarded-For} !^213.212.45.54
我々は外部のIPアドレスと一致するように、X-転送さ-のためにヘッダを利用します。問題は、私たちのクライアントの部門(A部門と呼ぶ)が内部プロキシを経由するインターネット設定をしていることです。内部プロキシは、各ユーザのワークステーションIPを当社のWebサーバに転送します。これは、それらのユーザーのためのX-転送さ-用ヘッダが、このようなものに見えることを意味します
10.123.16.23, 213.212.45.54, 172.20.162.2
10のアドレスは、ネットワーク内の各ユーザのワークステーションのIPがあるが、213はその部門のWAN IPであり、 172は私の会社のロードバランサです。
私の会社は、ユーザーのワークステーションIPをApache構成に追加すると、問題なくページにアクセスできることを確認しました。しかし、すべての単一IPを追加するのは面倒です。
正規表現を使用して中間IP(WAN IP)にのみ注意を払うようにApacheに指示する方法はありますか?それとも、Apacheを設定する良い方法がありますか?
多分これは、正しい方向へのポイントあなたを、正規表現 を助ける\は(213 \。\ dは+ \。\ dは+ \。\ dは+)* S \は、* sは 試合と中間IP を返します。 213.212.45.54 これを使用してRewriteRuleをトリガーすることができます。 –