删除默认文件
删除TOMCAT默认示例文件、帮助文件、后台管理界面等,禁止使用manager/admin管理后台。需删除的文件和目录清单如下:
引用
$CATALINA_BASE/server/webapps/manager
$CATALINA_BASE/server/webapps/host-manager
$CATALINA_BASE/webapps/balancer
$CATALINA_BASE/webapps/manager
$CATALINA_BASE/webapps/host-manager
$CATALINA_BASE/webapps/webdav
$CATALINA_BASE/webapps/tomcat-docs
$CATALINA_BASE/webapps/jsp-examples
$CATALINA_BASE/webapps/servlets-examples
$CATALINA_BASE/webapps/examples
$CATALINA_BASE/webapps/docs
$CATALINA_BASE/conf/tomcat-users.xml
启动帐号
建立独立用户,用户名和组名均为tomcat,不设置密码(即禁止SSH登录),tomcat进程以此帐号身份运行,严禁以root权限运行tomcat,禁止以个人帐号或其他有shell权限的帐号运行tomcat。可选如下方法之一来实现非ROOT启动tomcat:
在$CATALINA_BASE/startenv.sh里面export环境变量:
export TOMCAT_USER=tomcat
同时需要修改$CATALINA_HOME/bin/startup.sh
把
exec "$PRGDIR"/"$EXECUTABLE" start "$@"
修改为:
if [ -z "$TOMCAT_USER" ]; then
exec "$PRGDIR"/"$EXECUTABLE" start "$@"
else
exec su $TOMCAT_USER -c "$PRGDIR/$EXECUTABLE start $@"
fi
在jsvc配置文件里面指定参数
引用
-u tomcat
禁止列目录
配置$CATALINA_BASE/conf/web.xml文件,防止直接访问目录时由于找不到默认主页而列出目录下所有文件。
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
打开access log
按小时或按天记录。prefix/fileDateFormat/pattern可自定义,但必须记录关键信息,例如:源IP,Host、时间、请求、状态码、数据大小、UA等。注意:如果前端是NG做反向代理,默认的pattern="combined"和pattern="common"不能记录用户的真实IP,必须自定义pattern,记录客户端真实IP(X-Real-IP)
引用
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="xx" suffix=".log"
fileDateFormat="yyyy-MM-dd-HH"
pattern="%a %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i" " %{X-Real-IP}i"
resolveHosts="false"/>
禁止使用jmx
如之前已经启用,在启动脚本里面(catalina.sh或startenv.sh)删除CATALINA_OPTS变量里面jmxremote相关参数即可。
禁止使用AJP
配置$CATALINA_BASE/conf/server.xml文件,注释或删除如下部分。
注释前
引用
<Connector port="*" maxThreads="*"
enableLookups="false" redirectPort="*" protocol="AJP/**" />
目录权限
默认情况下,tomcat启动用户对WEB目录下所有文件及子目录应无写权限。标准配置:文件属主为root.root,权限为755。
日志文件及cache文件应放在WEB目录之外
上传目录禁止执行
如tomcat需支持上传功能,需要对WEB目录下某些目录有写权限,那么应该限制这些上传目录禁止执行脚本。
appdir路径有几种可能:
(1) 默认位置
appdir="$CATALINA_BASE/webapps/ROOT"
(2) 默认位置下指定了appname
appdir="$CATALINA_BASE/webapps/$appname"
(3)通过docBase参数指定的路径
appdir="$docBase"
这些是通过UrlRewriteFilter模块来限制的示例配置,如果WEB-INF及相关目录不存在,创建一个即可。
设置规则禁止上传目录执行jsp
可以使用
引用
<urlrewrite>
<rule>
<from>^[\./]*/upload/.*\.jsp$</from>
<to>/deny.html</to>
</rule>
</urlrewrite>
分享到:
相关推荐
然而,在实际部署与使用过程中,为了确保系统的安全性,避免信息泄露或遭受恶意攻击,制定一套严格的Tomcat安全配置规范至关重要。本文旨在详细介绍线上运行的Tomcat服务器应当遵循的安全管理规范,主要包括安装、...
#### 一、Tomcat安全配置概述 Apache Tomcat的安全配置主要涉及到以下几个方面:用户认证、访问控制、安全策略等。这些配置通常是在`conf`目录下的`tomcat-users.xml`和`web.xml`文件中完成的。 #### 二、用户认证...
四、安全配置 - 使用防火墙(如`firewalld`或`iptables`)开启必要的端口,例如80、443、8080等。 - 避免使用默认的端口号,以减少被攻击的风险。 - 对Nginx和Tomcat的配置文件进行权限控制,只允许必要的用户访问...
网络安全越来越重要,将这些年来客户要求的安全配置整理了一下,其中包含各种安全配置和相关工具其中包含: 1. Tomcat 证书配置 2. 隐藏程序出错信息 3. 隐藏服务器信息 4. 关闭热部署功能 5. 关闭管理功能和默认主页 6...
tomcat安装及配置教程
总结来说,理解和掌握Tomcat的配置文件对于优化其性能、提升安全性以及解决故障至关重要。同时,了解如何在Linux环境下服务化Tomcat,可以提高运维效率,确保服务的稳定性和可靠性。在实际工作中,开发者和运维人员...
Tomcat 系统安全配置基线 Tomcat 系统安全配置基线是指在 Tomcat 服务器中实施的一系列安全配置和设置,以确保系统的安全运行。该基线涵盖了账号管理、认证授权、日志审计等多个方面,旨在帮助管理员和开发者更好地...
### Tomcat安全配置 #### 版本安全升级 - **选择稳定版本**:在选择Tomcat版本时,应避免采用最新发布的版本,而是选择当前大版本下较为稳定且经过一段时间考验的版本,例如在6.0和7.0版本中选择。 - **跨版本升级...
本文将深入探讨Tomcat的配置方法,帮助你更好地理解和管理你的Web应用。 首先,让我们从基础开始,了解Tomcat的目录结构。在解压Tomcat安装包后,你会看到几个主要的目录和文件: 1. **bin**:包含启动和停止...
【标题】:“Tomcat集群配置” 在Web应用的高可用性和可扩展性需求日益增长的今天,Tomcat集群成为了一个重要的解决方案。Tomcat集群能够通过负载均衡和故障转移来提高服务的稳定性和性能。以下是对Tomcat集群配置...
#### 二、理解Tomcat安全防护的重要性 无论您是一位小企业的老板还是使用Tomcat搭建个人网站的技术人员,都需要高度重视服务器的安全配置。一旦服务器连接到互联网,就有可能遭受各种形式的攻击。攻击者不仅可能...
9. **安全配置** 为了增强安全性,建议配置`server.xml`中的`<Connector>`元素,启用SSL支持,添加`secure="true"`,`scheme="https"`,并配置keystore文件路径和密码。 10. **性能优化** Tomcat的性能可以通过...
8. **安全配置**:如何设置用户访问权限,配置Realm(认证域)进行身份验证,以及使用SSL/TLS加密通信以增强安全性。 9. **日志和错误处理**:理解日志文件的位置和内容,以及如何调整日志级别和配置自定义日志记录...
Tomcat 连接池配置是 Web 应用程序中一个非常重要的组件,它负责管理和维护数据库连接,确保数据访问的高速和安全性。本文将详细介绍 Tomcat 连接池配置的步骤和原理,帮助读者快速掌握 Tomcat 连接池的使用。 一、...
二、配置 Tomcat 在生成密钥后,我们需要配置 Tomcat 以使用 HTTPS 协议。我们需要在 server.xml 文件中添加以下配置: `...
https ssl Tomcat中实现https安全连接与SSL配置https ssl Tomcat中实现https安全连接与SSL配置https ssl Tomcat中实现https安全连接与SSL配置https ssl Tomcat中实现https安全连接与SSL配置
### Tomcat安全加固手册知识点详解 #### 一、Tomcat简介与重要性 Tomcat作为Apache软件基金会(Apache Software Foundation)Jakarta项目的核心组件之一,由Apache、Sun及其他多个机构和个人共同开发完成。得益于...
阿里云标准-Apache Tomcat 安全基线检查旨在帮助用户遵循安全基线,检查Tomcat的安全配置,确保Tomcat服务器的安全运行。 Tomcat 进程运行权限检测 在 Linux 系统中,Tomcat 服务器的进程权限非常重要。如果使用 ...
Tomcat 5.5 数据库连接池配置.doc tomcat 6.0.20在一个机器上安装多个服务的方法.doc tomcat 几种连接池配置代码.doc tomcat antiResourceLocking antiJARLocking 的作用和用法.doc Tomcat安全配置 .doc
2. **Tomcat安全配置规范** - **版本部署策略**: - **及时更新**:保持Tomcat版本的最新和最稳定,可以有效防范已知漏洞。访问Apache官网获取最新版本,并考虑在现网环境中进行版本升级的影响。 - **非特权用户...