web-dev-qa-db-ja.com

TomcatでIPアドレスでアクセスを制限するにはどうすればよいですか?

Tomcatが特定のアプリケーションへのアクセスをIPアドレス(Apacheの.htaccess)?

30
SMSM

context.xml(具体的には、org.Apache.catalina.valves.RemoteAddrValve)のValveContextを追加します。 リモートホストフィルター のドキュメントを参照してください。

27
skaffman

これは例です:

\ Apache-Tomcat-7.0.33\conf\server.xml内:

<Engine name="Catalina" defaultHost="localhost">
    ...
    ...
    ...
    <Valve className="org.Apache.catalina.valves.RemoteAddrValve"
        allow="10\.132\.77\.55|10\.132\.76\.120|10\.132\.77\.47"/>
    ...
</Engine>
23

Tomcat 7では、_web.xml_で設定できます。

すべてのWebアプリ用である場合は、_Tomcat7/conf/web.xml_で構成できます。1つのWebアプリ専用である場合は、Tomcat7/webapps/$(WEB_APP)/WEB-INF/web.xmlで構成でき、非常に便利です。

構成ではRemoteAddrFilterフィルターを使用します。例は Container Provided Filters にあります。

4
Ascatgz

特定のIPアドレスのWebアプリケーションへのアクセス制限を設定するには、次の文字列を/ opt/Tomcat/webapps/{web-application name}に追加します/META-INF/context.xmlファイル:

<Context antiJARLocking="true" path="/">
 <Valve className="org.Apache.catalina.valves.RemoteIpValve" />
 <Valve className="org.Apache.catalina.valves.RemoteAddrValve" deny="{IP_address}" />
</Context>

これは これを行う方法の指示 Jelasticパネル経由です。変更を有効にするには、Tomcatを必ず再起動してください。

2
Tetiana

tomcat 9では、path:Apache-Tomcat-9.0.14\webapps\manager\META-INF\context.xml

0
袁文涛