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

本文涉及的产品
云原生网关 MSE Higress,422元/月
函数计算FC,每月15万CU 3个月
可观测监控 Prometheus 版,每月50GB免费额度
简介: 带你读《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

相关文章
|
2月前
|
Ubuntu Java 应用服务中间件
如何通过 Apt-Get 在 Ubuntu 14.04 上安装 Apache Tomcat 7
如何通过 Apt-Get 在 Ubuntu 14.04 上安装 Apache Tomcat 7
86 0
|
16天前
apache+tomcat配置多站点集群的方法
apache+tomcat配置多站点集群的方法
25 4
|
2月前
|
Java 应用服务中间件 Apache
使用IDEA修改Web项目访问路径,以及解决Apache Tomcat控制台中文乱码问题
本文介绍了在IntelliJ IDEA中修改Web项目访问路径的步骤,包括修改项目、模块、Artifacts的配置,编辑Tomcat服务器设置,以及解决Apache Tomcat控制台中文乱码问题的方法。
83 0
使用IDEA修改Web项目访问路径,以及解决Apache Tomcat控制台中文乱码问题
|
2月前
|
Ubuntu Java 应用服务中间件
在Ubuntu 16.04上安装Apache Tomcat 8的方法
在Ubuntu 16.04上安装Apache Tomcat 8的方法
27 0
|
2月前
|
安全 Java 应用服务中间件
在CentOS 7上安装Apache Tomcat 8的方法
在CentOS 7上安装Apache Tomcat 8的方法
99 0
|
2月前
|
安全 Java 应用服务中间件
如何通过 Yum 在 CentOS 7 上安装 Apache Tomcat 7
如何通过 Yum 在 CentOS 7 上安装 Apache Tomcat 7
160 0
|
2月前
|
Java 应用服务中间件 Apache
在 Debian 服务器上安装和配置 Apache Tomcat 的方法
在 Debian 服务器上安装和配置 Apache Tomcat 的方法
38 0
|
11天前
|
Cloud Native 持续交付 开发者
探索云原生技术:构建高效、灵活的应用架构
【10月更文挑战第6天】 在当今数字化浪潮中,企业面临着日益复杂的业务需求和快速变化的市场环境。为了保持竞争力,他们需要构建高效、灵活且可扩展的应用程序架构。本文将探讨云原生技术如何帮助企业实现这一目标,并分析其核心概念与优势。通过深入剖析云原生技术的各个方面,我们将揭示其在现代应用开发和部署中的重要性,并提供一些实用的建议和最佳实践。
39 2
|
1天前
|
运维 Cloud Native 持续交付
云原生架构的演进与实践####
【10月更文挑战第16天】 云原生,这一概念自提出以来,便以其独特的魅力和无限的可能性,引领着现代软件开发与部署的新浪潮。本文旨在探讨云原生架构的核心理念、关键技术及其在实际项目中的应用实践,揭示其如何帮助企业实现更高效、更灵活、更可靠的IT系统构建与管理。通过深入剖析容器化、微服务、持续集成/持续部署(CI/CD)等核心技术,结合具体案例,本文将展现云原生架构如何赋能企业数字化转型,推动业务创新与发展。 ####
79 47
|
1天前
|
运维 Cloud Native 安全
深入探索云原生架构
【10月更文挑战第12天】
11 2

推荐镜像

更多