最近、ある特定のアプリのみIP制限したいとの要望があったため調べてみた
tomcatでのIP制限方法
tomcatでのIP制限はコンテキスト単位で設定することができる。
下記のxmlを追加するだけ。※hoge=コンテキスト名
$TOMCAT_HOME/conf/Catalina/localhost/hoge.xml
例 ローカルのみ制限する場合
<Context antiResourceLocking="false" privileged="true" >
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127.0.0.1" />
</Context>
例 特定のIPからアクセス拒否する場合
<Context antiResourceLocking="false" privileged="true" >
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="10.128.128.44" />
</Context>
alloow: アクセスを許可するIPアドレス、ホスト名を指定する。
deny: アクセスを拒否するIPアドレス、ホスト名を指定する。
備考
他にも全コンテキストで制限する方法(server.xmlに記述する)、
apacheで制限する方法、サーバー単位で設定する方法があるが、
別の機会に紹介したいと思います。