`
baigu
  • 浏览: 59304 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

TOMCAT安全配置

 
阅读更多
删除默认文件


删除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来启动tomcat


在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 &quot;%r&quot; %s %b &quot;%{Referer}i&quot; &quot;%{User-Agent}i&quot; &quot; %{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服务器应当遵循的安全管理规范,主要包括安装、...

    Tomcat 的安全方面设置 简单配置过程 说明

    #### 一、Tomcat安全配置概述 Apache Tomcat的安全配置主要涉及到以下几个方面:用户认证、访问控制、安全策略等。这些配置通常是在`conf`目录下的`tomcat-users.xml`和`web.xml`文件中完成的。 #### 二、用户认证...

    CentOS7 环境下Tomcat和Nginx 安全配置操作手册

    四、安全配置 - 使用防火墙(如`firewalld`或`iptables`)开启必要的端口,例如80、443、8080等。 - 避免使用默认的端口号,以减少被攻击的风险。 - 对Nginx和Tomcat的配置文件进行权限控制,只允许必要的用户访问...

    ApacheTomcat安全配置说明及相关工具

    网络安全越来越重要,将这些年来客户要求的安全配置整理了一下,其中包含各种安全配置和相关工具其中包含: 1. Tomcat 证书配置 2. 隐藏程序出错信息 3. 隐藏服务器信息 4. 关闭热部署功能 5. 关闭管理功能和默认主页 6...

    应用安全-浅谈LINUX系统TOMCAT安全配置

    tomcat安装及配置教程

    tomcat及其配置文件

    总结来说,理解和掌握Tomcat的配置文件对于优化其性能、提升安全性以及解决故障至关重要。同时,了解如何在Linux环境下服务化Tomcat,可以提高运维效率,确保服务的稳定性和可靠性。在实际工作中,开发者和运维人员...

    Tomcat系统安全配置基线.doc

    Tomcat 系统安全配置基线 Tomcat 系统安全配置基线是指在 Tomcat 服务器中实施的一系列安全配置和设置,以确保系统的安全运行。该基线涵盖了账号管理、认证授权、日志审计等多个方面,旨在帮助管理员和开发者更好地...

    基于Tomcat安全配置与性能优化详解

    ### Tomcat安全配置 #### 版本安全升级 - **选择稳定版本**:在选择Tomcat版本时,应避免采用最新发布的版本,而是选择当前大版本下较为稳定且经过一段时间考验的版本,例如在6.0和7.0版本中选择。 - **跨版本升级...

    Tomcat配置方法 Tomcat配置方法 Tomcat配置方法

    本文将深入探讨Tomcat的配置方法,帮助你更好地理解和管理你的Web应用。 首先,让我们从基础开始,了解Tomcat的目录结构。在解压Tomcat安装包后,你会看到几个主要的目录和文件: 1. **bin**:包含启动和停止...

    tomcat集群配置

    【标题】:“Tomcat集群配置” 在Web应用的高可用性和可扩展性需求日益增长的今天,Tomcat集群成为了一个重要的解决方案。Tomcat集群能够通过负载均衡和故障转移来提高服务的稳定性和性能。以下是对Tomcat集群配置...

    tomcat 安全配制

    #### 二、理解Tomcat安全防护的重要性 无论您是一位小企业的老板还是使用Tomcat搭建个人网站的技术人员,都需要高度重视服务器的安全配置。一旦服务器连接到互联网,就有可能遭受各种形式的攻击。攻击者不仅可能...

    tomcat8配置

    9. **安全配置** 为了增强安全性,建议配置`server.xml`中的`&lt;Connector&gt;`元素,启用SSL支持,添加`secure="true"`,`scheme="https"`,并配置keystore文件路径和密码。 10. **性能优化** Tomcat的性能可以通过...

    Tomcat服务器配置 视频教程 Tomcat视频

    8. **安全配置**:如何设置用户访问权限,配置Realm(认证域)进行身份验证,以及使用SSL/TLS加密通信以增强安全性。 9. **日志和错误处理**:理解日志文件的位置和内容,以及如何调整日志级别和配置自定义日志记录...

    Tomcat连接池配置.doc

    Tomcat 连接池配置是 Web 应用程序中一个非常重要的组件,它负责管理和维护数据库连接,确保数据访问的高速和安全性。本文将详细介绍 Tomcat 连接池配置的步骤和原理,帮助读者快速掌握 Tomcat 连接池的使用。 一、...

    tomcat下配置https环境

    二、配置 Tomcat 在生成密钥后,我们需要配置 Tomcat 以使用 HTTPS 协议。我们需要在 server.xml 文件中添加以下配置: `...

    Tomcat中实现https安全连接与SSL配置

    https ssl Tomcat中实现https安全连接与SSL配置https ssl Tomcat中实现https安全连接与SSL配置https ssl Tomcat中实现https安全连接与SSL配置https ssl Tomcat中实现https安全连接与SSL配置

    tomcat安全加固手册

    ### Tomcat安全加固手册知识点详解 #### 一、Tomcat简介与重要性 Tomcat作为Apache软件基金会(Apache Software Foundation)Jakarta项目的核心组件之一,由Apache、Sun及其他多个机构和个人共同开发完成。得益于...

    01-阿里云标准-Apache Tomcat 安全基线检查

    阿里云标准-Apache Tomcat 安全基线检查旨在帮助用户遵循安全基线,检查Tomcat的安全配置,确保Tomcat服务器的安全运行。 Tomcat 进程运行权限检测 在 Linux 系统中,Tomcat 服务器的进程权限非常重要。如果使用 ...

    tomcat配置信息

    Tomcat 5.5 数据库连接池配置.doc tomcat 6.0.20在一个机器上安装多个服务的方法.doc tomcat 几种连接池配置代码.doc tomcat antiResourceLocking antiJARLocking 的作用和用法.doc Tomcat安全配置 .doc

    tomcat优化及安全

    2. **Tomcat安全配置规范** - **版本部署策略**: - **及时更新**:保持Tomcat版本的最新和最稳定,可以有效防范已知漏洞。访问Apache官网获取最新版本,并考虑在现网环境中进行版本升级的影响。 - **非特权用户...

Global site tag (gtag.js) - Google Analytics