如何为 tomcat 创建 IP 白名单?

如何为 tomcat 创建 IP 白名单?

我对 tomcat 非常陌生,但我需要配置我公司的 tomcat 服务器,以便我们只能允许受限的 IP 地址。

我知道这通常是防火墙的工作,但在这种情况下这不是一个选择。

我们正在对生产服务器进行部署,在此过程中,我们需要能够显示由 Apache 运行的维护页面,该页面与 tomcat 位于同一服务器中。

在这种情况下,我需要做什么才能仅允许选定的 IP 地址访问整个 tomcat 服务器?

答案1

看看 Tomcat 的远程地址过滤器

远程地址过滤器允许您将提交此请求的客户端的 IP 地址与一个或多个正则表达式进行比较,并允许请求继续或拒绝处理来自此客户端的请求。

编辑:要编辑哪个文件取决于您希望将过滤器应用于单个 Web 应用程序还是应用于所有 Web 应用程序。来自上面链接的同一页面:

Tomcat 提供了许多过滤器,可以使用 $CATALINA_BASE/conf/web.xml 配置这些过滤器以供所有 Web 应用程序使用,也可以通过在应用程序的 WEB-INF/web.xml 中配置这些过滤器以供单个 Web 应用程序使用。

编辑2:以下是 3 个 IPv4 地址的示例:

<filter>
  <filter-name>Remote Address Filter</filter-name>
  <filter-class>org.apache.catalina.filters.RemoteAddrFilter</filter-class>
  <init-param>
    <param-name>allow</param-name>
    <param-value>x\.x\.x\.x|y\.y\.y\.y|z\.z\.z\.z</param-value>
  </init-param>
</filter>

相关内容