【中间件加固】————3、Tomcat 安全加固规范
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>之前,只允许本地访问。
例如:
只允许192.168.1.1访问:
<value className="org.apache.catalina.values.RemoteAddrValue" allow="192.168.1.1" deny="" />
只允许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
<Connectorport="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下载最新稳定版安装
转自:https://blog.csdn.net/qq_23936389/article/details/85013922
【中间件加固】————3、Tomcat 安全加固规范相关推荐
- Tomcat安全加固
这次的安全加固,Tomcat是重灾区.所以整理下Tomcat的安全加固. 1. 升级到最新稳定版,这个是老生常谈了.目前Tomcat支持6.0和7.0两个版本. 1) 出于稳定性考虑,不建议进行跨版本 ...
- tomcat 的安全规范
下面来说一下,日常工作当中我们需要注意的一些tomcat的安全规范: 一:telnet管理端口的保护 类别 配置内容及其说明 标准配置 备注 Telnet 管理端口的保护 (强制) (1)配置文件中的 ...
- 【Android 安全】使用 360 加固宝加固应用 ( 购买高级加固服务 | 设置资源加固 | 设置 SO 文件保护配置 | 设置 SO 防盗用文件配置 | 反编译验证加固效果 )
文章目录 一. 购买加固服务 二. 设置资源加固 三. 设置 SO 文件保护配置 四. 设置 SO 防盗用文件配置 五. 反编译验证加固效果 本博客用于记录下 360 加固保 加固应用流程 ; ( 上 ...
- php代码加固,织梦模板加固版教程详解
原标题:织梦模板加固版教程详解 我们的织梦模板怎么把它变成加固版,大家加固之前最好把原来的网站备份一下,以免操作错误造成损失. 第一步:登录网站后台把我们的网站备份数据库 网站后台点击 "系 ...
- 【中间件技术】第二部分 CORBA规范与中间件(4) 编写对象接口
文章目录 4.1 概述 4.1.1 接口与实现的分离 4.1.2 接口定义语言 4.2 `OMG IDL` 的语法与语义 4.2.1 词法规则 4.2.2 模块的声明 4.2.3 类型的声明 1. 基 ...
- Android应用加固(使用360加固保)
Android应用加固(使用360加固保) 前言 使用360加固保进行应用加固 加固结果验证 前言 使用常见的反编译工具能够轻松地进行应用破解,然后对应用进行二次开发,甚至植入病毒.为了保护应用的安全 ...
- 【中间件安全】Nginx 安全加固规范
1. 适用情况 适用于使用Nginx进行部署的Web网站. 2. 技能要求 熟悉Nginx配置,能够Nginx进行部署,并能针对站点使用Nginx进行安全加固. 3. 前置条件 1. 根据站点开放端口 ...
- 【中间件安全】Apache 安全加固规范
1. 适用情况 适用于使用Apahce进行部署的Web网站. 2. 技能要求 熟悉Apache配置文件,能够利用Apache进行建站,并能针对站点使用Apache进行安全加固. 3. 前置条件 1. ...
- linux系统加固标准,Linux系统加固标准规范.doc
Linux系统加固规范 山东省计算中心 TIME \@ "yyyy年M月" 20XX年6月 账号管理.认证授权 Linux-01-01-01 编号 Linux-01-01-01 名 ...
最新文章
- Chrome开发者工具中Elements(元素)断点的用途
- Python爬虫常用模块
- C++轻量级微服务_从微服务架构解析信源新一代“金融e采”产品
- figma下载_我如何使用Figma,CSS Grid和CSS Flexbox构建登录页面
- vue 路由知识点梳理及应用场景整理
- redis set时间单位_SpringBoot+Redis分布式锁:模拟抢单
- nefu 984 我是一个粉刷匠
- apply update from ADB
- 个人信息保护法应加速制定
- word2013自动生成目录的时候,如何调整目录格式?
- 为ramda添加类型
- NeoKylin中标麒麟系统用户和组的管理命令
- cidaemon.exe进程
- Python 编程案例:谁没交论文?输出并生成电子表格
- django 基础框架学习 (三)
- veracrypt加密mysql_VeraCrypt使用教程,VeraCrypt文件硬盘加密使用教程
- mysql_connect函数怎么调用,PHP连接MySQL数据库的连接函数mysql_connect的第三个参数是( )。...
- 到底什么是服务器托管
- elon函数_Elon Mussk的Neuroink真是令人难以置信
- 光伏直流柜空间有限制怎么办?霍尔电流传感器AHKC-BS来帮忙
热门文章
- 天龙八部服务器列表文件,天龙八部服务端目录说明
- element UI 对话框编辑取消事件,当前行会清空或者替换掉bug解决
- 音频采样器Kontakt 6 Mac激活版
- [技术讨论]硬件工程师的助手-仿真软件
- mybatis练习-获取拥有“普通用户”角色的所有用户信息,要求查询结果除了包含用户自身信息,还包括角色名和角色创建时间。
- 极速引流十八式(1)
- java算法计算一元一次方程
- 出现strings must use singlequote.报错
- linux入门学习笔记(韩顺平主讲)
- bat循环处理oracle中sql脚本,oracle使用bat脚本批量执行sql文件