あなたの質問から私が理解している限り、あなたはApache Tomcat
を Web サーバーとして使用しています。その場合、Remote Address Filterを使用して、IP アドレスによるアクセスを制限してください。要求しているクライアントの IP を正規表現と比較して、比較の結果に基づいて要求を許可または拒否できます。
Tomcat 7を使用する場合は、クラスRemoteAddrFilterを使用し、アプリケーションの構成ファイルで必要な IP の正規表現を定義する必要がありますweb.xml
。
<filter>
<filter-name>Remote Address Filter</filter-name>
<filter-class>org.apache.catalina.filters.RemoteAddrFilter</filter-class>
<init-param>
<param-name>allow</param-name> <!-- or deny -->
<param-value>10\.10\.1[12]\..*</param-value> <!-- regexp for your ip adress -->
</init-param>
</filter>
<filter-mapping>
<filter-name>Remote Address Filter</filter-name>
<url-pattern>*/admin</url-pattern> <!-- the url of your admin page -->
</filter-mapping>
ハードコーディングされた特定の IP アドレスまたは正規表現パターンを使用できます。ただし、場合によっては、正規表現を使用すると、アドレスの検証が非常に柔軟になります。
また、Tomcat のバージョン6または5を使用する場合は、クラスRemoteAddrValveを使用し、Tomcat の構成ファイルで次の行を定義する必要がありますserver.xml
。
<Valve className=”org.apache.catalina.valves.RemoteAddrValve” allow=”10\.10\.1[12]\..*”/>
また
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
deny="86.57.158.37, 213.117.195.*, 124.86.42.*" />
リクエスト フィルター バルブの使用に関する詳細情報。
また、Tomcat を使用して管理 Web アプリを保護することに関する興味深い記事.
localhost
ちなみに、テスト用のリクエストを拒否しないと便利です。127\.0\.0\.1
そのため、IP アドレスの許容範囲に追加することは理にかなっています。
ただし、場合によっては、プロキシ サーバーを使用して IP ブロックを回避できることを忘れないでください。セキュリティを強化するために、ログイン認証も適用します。