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. spring源码分析系列 (2) spring拓展接口BeanPostProcessor

    Spring更多分析--spring源码分析系列 主要分析内容: 一.BeanPostProcessor简述与demo示例 二.BeanPostProcessor源码分析:注册时机和触发点 (源码基于 ...

  2. perl 读写文件

    #http://perlmaven.com/open-and-read-from-files #mode operand create truncate#read < #write > y ...

  3. Hive总结(八)Hive数据导出三种方式

    今天我们再谈谈Hive中的三种不同的数据导出方式. 依据导出的地方不一样,将这些方式分为三种: (1).导出到本地文件系统. (2).导出到HDFS中: (3).导出到Hive的还有一个表中. 为了避 ...

  4. Xcode 安装ClangFormat 插件

    sudo gem install -n /usr/local/bin update_xcode_plugins 安装ClangFormat git clone https://github.com/t ...

  5. python Image resize 对iOS图片素材进行2X,3X处理

    通常在iOS上开发使用的图片素材1x,2x,3x三种 下面利用python Image 库 resize函数,由一个大图,自动生成1x,2x,3x的素材照片: 1. 首先你的python环境要安装有I ...

  6. DataGuard---->备库参数db_file_name_convert和log_file_name_convert的作用

    一.参数说明 [1] db_file_name_convert db_file_name_convert 主数据库和备用数据库的数据文件转换目录对映(如果两数据库的目录结构不一样),如果有多个对映,逐 ...

  7. java.util.WeakHashMap

    http://mikewang.blog.51cto.com/3826268/880775 http://mzlly999.iteye.com/blog/1126049 java.util.WeakH ...

  8. 如何查看Ubuntu下已安装包版本号

    之前的工作大部分在红帽企业版 下工作,查找安装包用rpm 很方便,但是由于这边大部分的服务器的运行环境是ubantu,补补. 在终端下也可以很方便查看已安装的软件包版本号,也能单独查看所需要的软件包是 ...

  9. WCF兼容WebAPI输出Json格式数据,从此WCF一举两得

    问题起源: 很多时候为了业务层调用(后台代码),一些公共服务就独立成了WCF,使用起来非常方便,添加服务引用,然后简单配置就可以调用了. 如果这个时候Web站点页面需要调用怎么办呢? 复杂的XML , ...

  10. [转]数据库性能优化之SQL语句优化1

    一.问题的提出 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统 ...