带你读《Apache Tomcat的云原生演进》——Securing Apache Tomcat(2)

本文涉及的产品
应用实时监控服务-应用监控,每月50GB免费额度
云原生网关 MSE Higress,422元/月
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 带你读《Apache Tomcat的云原生演进》——Securing Apache Tomcat(2)

带你读《Apache Tomcat的云原生演进》——Securing Apache Tomcat(1)https://developer.aliyun.com/article/1377510


image.png 

 

那么对于Tomcat本身和整个基于Tomcat的web应用程序基础设施来说,有哪些基本的安全考虑呢?

 

安全的构建过程是弹性Tomcat部署的基础,它涉及使用Tomcat源代码或二进制文件的最新稳定版本,并确保删除所有不必要的组件。配置通常存在安全风险,因为它们可能有宽松的设置,这可能会让系统容易受到攻击。因此,Tomcat管理员应该检查和定制配置,以满足其特定的安全需求,包括使用加密通信设置强密码和配置有效的TLS证书。

 

接下来是应用程序的安全性。除了保护Tomcat服务器之外,解决应用程序级别的安全问题也是至关重要的。包括进行定期的安全测试,漏洞评估和渗透测试,以识别和修复应用程序级别的弱点;实现安全编码实践、输入验证和输出编码,以防止常见的web应用程序的漏洞。

 

健壮的访问控制基于角色和职责限制用户权限;减少未经授权访问敏感资源的风险。我们必须确保只有授权的用户才能访问管理应用程序和配置文件,我的经验是,当涉及到访问控制时,应该遵循最少特权的原则。对整个web应用程序基础设施进行定期的漏洞扫描,包括底层的操作系统、web服务器和数据库,这对于识别潜在的弱点至关重要。

 

如果检测到任何漏洞,应立即对其进行补救,以减少攻击面并将风险降至最低。那么监控和事件响应呢?持续监视Tomcat服务器日志和web应用程序安全性有助于检测异常行为和潜在的安全漏洞。实施针对 Tomcat的有效事件响应计划,可以快速识别、遏制和解决安全事件。

 

image.png 

 

让我们继续检查如何保护Tomcat中的配置在启动Tomcat构建或使用下载的Tomcat二进制发行版之前。二进制分布的完整性必须进行检查,许多组织都在确保用于构建的源文件,甚至二进制文件不会篡改。

 

Tomcat源代码发行版和二进制包发行版也提供了SHA 512校验以及PGP加密签名的ASC密钥必须验证此分发文件的签名,并且还应该根据校验进行检查,以确保文件的完整性。源代码构建Tomcat时,ANT Build工具用于构建Tomcat二进制文件。Tomcat源包中已经包含了用于构建所有Tomcat组件的构建XML。

 

默认情况下,构建XML将具有用于构建所有组件的相关依赖的项目或基本任务。这可能包括示例应用程序、文档、嵌入式Tomcat、Jar等等。所有这些在典型的企业或生产部署中可能都不是真正需要的。因此,需要修改构建XML以使用自定义目标。

 

构建精简的Tomcat二进制文件,并不需要文档、示例应用程序等。即使你正在使用从Tomcat ASF下载页面下载的这个发行包的二进制文件,它不推荐直接安装用于生产使用,必须删除默认示例应用程序和文档,缺省配置不保证安全配置。例如,默认情况下,连接器未启用HTTPS,未禁用关机端口。没有对Tomcat策略的限制,客户可以直接看到错误的异常堆栈等,这只是其中的一些。

 

因此,基于这些原因,请确保永远不要在生产环境中部署具有默认配置的Tomcat。

在不确保消除或保护这些易受攻击的配置之前,Tomcat还附带了用于实例管理的管理器应用程序。只有修改默认的用户名、密码和角色后,才需要部署manager应用和host manager应用。

 

我建议可以通过远程IP地址限制对管理器web应用程序的访问,通过添加RemoteAddrValve或RemoteHostValve,实现适当的文件或目录访问权限是另一个重要的领域。在设置Tomcat JVM运行的访问权限和账户时,必须遵守“最小权限原则”。


带你读《Apache Tomcat的云原生演进》——Securing Apache Tomcat(3)https://developer.aliyun.com/article/1377508

相关文章
|
5月前
|
Ubuntu Java 应用服务中间件
如何通过 Apt-Get 在 Ubuntu 14.04 上安装 Apache Tomcat 7
如何通过 Apt-Get 在 Ubuntu 14.04 上安装 Apache Tomcat 7
110 0
|
3月前
apache+tomcat配置多站点集群的方法
apache+tomcat配置多站点集群的方法
42 4
|
3月前
|
负载均衡 应用服务中间件 Apache
Tomcat负载均衡原理详解及配置Apache2.2.22+Tomcat7
Tomcat负载均衡原理详解及配置Apache2.2.22+Tomcat7
66 3
|
5月前
|
Java 应用服务中间件 Apache
使用IDEA修改Web项目访问路径,以及解决Apache Tomcat控制台中文乱码问题
本文介绍了在IntelliJ IDEA中修改Web项目访问路径的步骤,包括修改项目、模块、Artifacts的配置,编辑Tomcat服务器设置,以及解决Apache Tomcat控制台中文乱码问题的方法。
277 0
使用IDEA修改Web项目访问路径,以及解决Apache Tomcat控制台中文乱码问题
|
5月前
|
Ubuntu Java 应用服务中间件
在Ubuntu 16.04上安装Apache Tomcat 8的方法
在Ubuntu 16.04上安装Apache Tomcat 8的方法
57 0
|
5月前
|
安全 Java 应用服务中间件
在CentOS 7上安装Apache Tomcat 8的方法
在CentOS 7上安装Apache Tomcat 8的方法
169 0
|
5月前
|
安全 Java 应用服务中间件
如何通过 Yum 在 CentOS 7 上安装 Apache Tomcat 7
如何通过 Yum 在 CentOS 7 上安装 Apache Tomcat 7
242 0
|
5月前
|
Java 应用服务中间件 Apache
在 Debian 服务器上安装和配置 Apache Tomcat 的方法
在 Debian 服务器上安装和配置 Apache Tomcat 的方法
82 0
|
30天前
|
运维 Cloud Native 持续交付
深入理解云原生架构及其在现代企业中的应用
随着数字化转型的浪潮席卷全球,企业正面临着前所未有的挑战与机遇。云计算技术的迅猛发展,特别是云原生架构的兴起,正在重塑企业的IT基础设施和软件开发模式。本文将深入探讨云原生的核心概念、关键技术以及如何在企业中实施云原生策略,以实现更高效的资源利用和更快的市场响应速度。通过分析云原生架构的优势和面临的挑战,我们将揭示它如何助力企业在激烈的市场竞争中保持领先地位。
|
28天前
|
Kubernetes Cloud Native 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。

推荐镜像

更多