1. 适用情况

适用于使用Tomcat进行部署的Web网站。

2. 技能要求

熟悉Tomcat配置操作,能够利用Tomcat进行建站,并能针对站点使用Tomcat进行安全加固。

3. 前置条件

1、根据站点开放端口,进程ID,进程名称,确认站点采用Tomcat进行部署;

2、找到Tomcat路径:

方法一:开始->所有程序->Apache Tomcat->打开文件位置

方法二:window直接搜索Tomcat

方法三:任务管理器->进程-> tomcat进程->打开文件位置

方法四:D盾->工具->进程查看-> tomcat进程->打开文件位置

方法五:适用linux:切换到根路径,搜索find –name *.jsp –print(方法同样适用 查找网站根目录)

4. 详细操作

注意:建议实施项需要检查,询问管理员后方可配置,建议让管理员自行配置,实施项为必做加固项。Tomcat控制台必须确定是否对外开放,是否有远程管理权限账号:1、mageger文件夹是否存在;2、tomcat账号是否可登陆。

4.1 Tomcat控制台用户配置

备份配置文件,修改tomcat/conf/tomcat-user.xml配置文件,将账号进行注释,

若业务系统需要使用tomcat管理后台进行业务代码发布和管理,建议修改默认admin用户,且密码长度不低于10位,必须包含大写字母、特殊符号、数字组合,如下:

4.2 日志审计

备份配置文件,参考配置操作

编辑tomcat/conf/server.xml配置文件,在标签中增加记录日志功能

将以下内容的注释标记取消

<valve classname="org.apache.catalina.valves.AccessLogValve" Directory="logs" prefix="localhost_access_log." suffix=".txt" Pattern="common" resloveHosts="false" />

4.3 自定义404错误页面

(1) 在网站根目录新建noFile.htm文件

(2) 查看并启用tomcat/conf/web.xml文件中下列代码:

<error-page>

<error-code>404</error-code>

<location>/noFile.htm</location>

</error-page>

4.4 最佳经验实践

因tomcat配置不当,可能导致的安全问题,常见安全漏洞如:目录浏览、webdav等

4.4.1 关闭目录浏览

(1) 编辑tomcat/conf/web.xml配置文件,

<init-param>

<param-name>listings</param-name>

<param-value>true</param-value>

</init-param>

把true改成false

(2)重新启动tomcat服务

4.4.2 使用安全的HTTP请求

编辑tomcat/conf/web.xml配置文件,添加或修改文件如下所示:

<security-constraint>

<web-resource-collection>

<url-pattern>/*</url-pattern>

<http-method>PUT</http-method>

<http-method>DELETE</http-method>

<http-method>OPTIONS</http-method>

<http-method>TRACE</http-method>

</web-resource-collection>

<auth-constraint>

</auth-constraint>

</security-constraint>

<login-config>

<auth-method>BASIC</auth-method>

</login-config>

4.4.3 限制IP访问

打开tomcat/conf/server.xml,添加下面一行,重启服务器即可:<value className="org.apache.catalina.values.RemoteAddrValue" allow="127.0.0.1" deny="" />

此行放在</Host>之前,只允许本地访问。

例如:

  1. 只允许192.168.1.1访问:

<value className="org.apache.catalina.values.RemoteAddrValue" allow="192.168.1.1" deny="" />

  1. 只允许192.168.1.0/24访问

<value className="org.apache.catalina.values.RemoteAddrValue" allow="192.168.1.*" deny="" />

4.4.4 登陆超时退出

备份配置文件,参考配置操作

编辑tomcat/conf/server.xml配置文件,修改超时时间为300秒

<Connector port="8080" maxHttpHeadSize="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="300" disableUploadTimeout="true" />

4.5 风险操作项

4.5.1 更改默认端口

(1)修改tomcat/conf/server.xml 配置文件,更改默认管理端口到8888

<Connector

port="8888"    maxHttpHeaderSize="8192" maxThreads="150"

minSpareThreads="25" maxSpareThreads="75"、

enableLookups="false" redirectPort="8443" acceptCount="100"

connectionTimeout="300" disableUploadTimeout="true" />

(2)重启 tomcat 服务

4.5.2 补丁更新

根据tomcat版本漏洞库查询是否存在漏洞,如果存在漏洞请在http://httpd.tomcat.org下载最新稳定版安装

最后

欢迎关注个人微信公众号:Bypass--,每周原创一篇技术干货。 

【中间件安全】Tomcat 安全加固规范的更多相关文章

  1. tomcat 的安全规范

    下面来说一下,日常工作当中我们需要注意的一些tomcat的安全规范: 一:telnet管理端口的保护 类别 配置内容及其说明 标准配置 备注 Telnet 管理端口的保护 (强制) (1)配置文件中的 ...

  2. 下一代的中间件必须是支持docker规范的

    下一代的中间件必须是支持docker规范的,这是中间件技术走向标准规范化的必经之路. 什么是 Docker? 答案是:Docker 是下一代的云计算模式.Docker 是下一代云计算的主流趋势. Do ...

  3. tomcat安全加固和规范

    tomcat是一个开源Web服务器,基于Tomcat的Web运行效率高,可以在一般的硬件平台上流畅运行,因此,颇受Web站长的青睐.不过,在默认配置下其存在一定的安全隐患,可被恶意攻击.以下是一些安全 ...

  4. 【中间件安全】Jboss安全加固规范

    1. 适用情况 适用于使用Jboss进行部署的Web网站. 适用版本:5.x版本的Jboss服务器 2. 技能要求 熟悉Jboss安装配置,能够Jboss进行部署,并能针对站点使用Jboss进行安全加 ...

  5. 【中间件安全】WebSphere安全加固规范

    1. 适用情况 适用于使用WebSphere进行部署的Web网站. 2. 技能要求 熟悉WebSphere安装部署,熟悉WebSphere常见漏洞利用方式,并能针对站点使用WebSphere进行安全加 ...

  6. 【中间件安全】IIS6安全加固规范

    1. 适用情况 适用于使用IIS6进行部署的Web网站. 2. 技能要求 熟悉IIS配置操作,能够利用IIS进行建站,并能针对站点使用IIS进行安全加固. 3. 前置条件 1. 根据站点开放端口.进程 ...

  7. 【中间件安全】Weblogic 安全加固规范

    1. 适用情况 适用于使用Weblogic进行部署的Web网站. 2. 技能要求 熟悉Weblogic安装部署,熟悉Weblogic常见漏洞利用方式,并能针对站点使用Weblogic进行安全加固. 3 ...

  8. 【中间件安全】Nginx 安全加固规范

    1. 适用情况 适用于使用Nginx进行部署的Web网站. 2. 技能要求 熟悉Nginx配置,能够Nginx进行部署,并能针对站点使用Nginx进行安全加固. 3. 前置条件 1. 根据站点开放端口 ...

  9. 【中间件安全】IIS7.0 安全加固规范

    1. 适用情况 适用于使用IIS7进行部署的Web网站. 2. 技能要求 熟悉IIS配置操作,能够利用IIS进行建站,并能针对站点使用IIS进行安全加固. 3. 前置条件 1. 根据站点开放端口.进程 ...

随机推荐

  1. mongodb通过profile来监控数据

    mongodb可以通过profile来监控数据,进行优化.查看当前是否开启profile功能用命令db.getProfilingLevel() 返回level等级,值为0|1|2,分别代表意思:0代表 ...

  2. 分布式队列ZooKeeper的实现

    一.背景 有一些时候,多个团队需要共同完成一个任务,比如,A团队将Hadoop集群计算的结果交给B团队继续计算,B完成了自己任务再交给C团队继续做.这就有点像业务系统的工作流一样,一环一环地传下 去, ...

  3. Zookeeper学习笔记——1 单机版本环境搭建

    下载 首先去官网下载: http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.11/ 然后执行tar -zxvf解压 启动 进入conf目录, ...

  4. 网络的FIN_WAIT_2状态解释和分析

    关于网络设备的FIN_WAIT_2状态解释出处:http://hi.baidu.com/netdemon1981/blog/item/584bfbb2aeb1d4acd9335ad9.html 在HT ...

  5. String literal is not properly closed by a double-quote eclipse

    中文乱码, 解决方法之一就是更改工程的编码方式. 首先选择工程,右键打开property窗口,resource下的text  file incoding,看看是不是选择的utf-8,如果不是的话更改为 ...

  6. [转载]安装Oracle11gR2先决条件检查失败的详细解决处理过程

    原文地址:安装Oracle11gR2先决条件检查失败的详细解决处理过程作者:四海名汀 最近在32位Win7系统下安装Oracle11g发现一系列错误,现将详细的错误解决过程记录如下,以供大家参考. 一 ...

  7. [Mockito] Mock List interface

    In this post, we are going to see more functionalities in Mockito. Mock a List interface: @Test publ ...

  8. 浅谈压缩感知(十七):测量矩阵之有限等距常数RIC的计算

    有限等距常数(RestrictedIsometry Constant, RIC)是与有限等距性质(Restricted IsometryProperty, RIP)紧密结合在一起的一个参数. 一.RI ...

  9. AI通过了艺术创作图灵测试,你根本分不出来作者是不是人

    各位geek朋友们,今年不用再看画了:近年来最大的艺术成就已经发生了. 这项艺术成就的诞生地,不是北京.新加坡.柏林郊区颜料四溅的画室中,不是威尼斯双年展上.请记住它出现的地点:美国新泽西州新布朗斯维 ...

  10. [Python设计模式] 第7章 找人帮忙追美眉——代理模式

    github地址:https://github.com/cheesezh/python_design_patterns 题目1 Boy追求Girl,给Girl送鲜花,送巧克力,送洋娃娃. class ...