tomcat web服务器优化

tomcat主要作为中间件在架构中出现,目前我们使用LNMJ的架构,tomcat用来处理动态请求,处理速度快,但是占用资源大,这只懒猫,想要跑得快就要给条大鱼,否则会影响主机性能

下面简单介绍下这次优化的内容

按照CIS-Tomcat7最新基线标准进行中间件层面基线检测

注意:禁止root登陆项请谨慎操作,禁止登陆后root账号不能直接等

检查项1: tomcat进程运行权限检测

路径: /application/tomcat
当前值: 0

`加固建议: 请创建低权限的账号运行tomcat`

检查项: 开启用户登录失败锁定
路径: /application/tomcat/conf/server.xml
当前值:

加固建议: <Realm className="org.apache.catalina.realm.LockOutRealm" failureCount="3" lockOutTime="600" cacheSize="1000" cacheRemovalWarningTime="3600">

检查项: 限制远程管理IP
路径: /application/tomcat/conf/server.xml
当前值:

`加固建议: 增加<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="允许远程管理IP"/>`

检查项: 禁止显示异常调试信息
路径: /application/tomcat/conf/web.xml
当前值:

`加固建议: 在当前web.xml里面的web-app添加子节点:<error-page><exception-type>java.lang.Throwable</exception-type><location>/error.jsp</location></error-page>,在webapps目录下创建error.jsp,定义自定义错误信息`

检查项: 开启传输层安全属性
路径: /application/tomcat/webapps/manager/WEB-INF/web.xml
当前值:

加固建议: 在当前路径的web.xml里面的web-app添加子节点:<security-constraint> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee></user-data-constraint> </security-constraint>

检查项: 开启安全周期生命监听器
路径: /application/tomcat/conf/server.xml
当前值:

`加固建议: 取消 <Listener className="org.apache.catalina.security.SecurityListener" /> 注释`

检查项: 示例文件检测
路径: /application/tomcat/
当前值: /application/tomcat/webapps/examples

加固建议: 请删除检测出的示例文件或目录

检查项: tomcat目录权限检测
路径: /application/tomcat/
当前值: root

加固建议: 使用chown -R tomcat:tomcat "根目录"修改tomcat根目录文件所有者

检查项: 禁止自动部署
路径: /application/tomcat/conf/server.xml
当前值: Host:autoDeploy=true

 加固建议: 将autoDeploy="false"

检查项: 禁止应用运行在提权模式
路径: /application/tomcat/webapps/manager/META-INF/context.xml
当前值: Context:privileged=true

加固建议: 将privileged="false"

检查项: 禁止应用运行在提权模式
路径: /application/tomcat/webapps/host-manager/META-INF/context.xml
当前值: Context:privileged=true

加固建议: 将privileged="false"

检查项: 设置http大小 (默认为4096)
路径: /application/tomcat/conf/server.xml
当前值: maxHttpHeaderSize

加固建议: 对检测出的Connector增加属性:maxHttpHeaderSize="8192"

检查项: 监听端口业务协议配置检测
路径: /application/tomcat/conf/server.xml
当前值: 8080

加固建议: 为该监听端口配置scheme="http"或"https"属性

检查项: 监听端口业务协议配置检测
路径: /application/tomcat/conf/server.xml
当前值: 8009

加固建议: 为该监听端口配置scheme="http"或"https"属性

检查项: 使用UserDatabaseRealm检测(认证机制)
路径: /application/tomcat/conf/server.xml
当前值: org.apache.catalina.realm.UserDatabaseRealm

加固建议: 建议关闭UserDatabaseRealm使用

原文地址:http://blog.51cto.com/qiuyt/2083040

时间: 2024-08-30 04:07:05

tomcat web服务器优化的相关文章

嵌入式Tomcat Web服务器的使用

在运行web工程时,常常要频繁启动tomcat,使用嵌入式tomcat可以减少部分重复操作. 1.下载tomcat5.0.28embed.zip 解压文件夹复制到工程下. http://archive.apache.org/dist/tomcat/tomcat-5/v5.0.28/bin/jakarta-tomcat-5.0.28-embed.zip 2.源码实现 import java.io.File; import javax.servlet.ServletException; import

centos7作为web服务器优化

原文 http://itindex.net/detail/51140-centos7-web-服务器 1.加大打开文件数的限制(open files) 查看 ulimit -nulimit -a vi /etc/security/limits.conf最后添加 * soft nofile 1024000 * hard nofile 1024000 hadoop - nofile 1024000 hadoop - nproc 1024000 用户进程限制 vi /etc/security/limi

WEB服务器-Nginx之虚拟主机、日志、认证及优化

WEB服务器-Nginx之虚拟主机.日志.认证及优化 概述 Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日.其将源代码以类BSD许可证的形式发布,因它的稳定性.丰富的功能集.示例配置文件和低系统资源的消耗而闻名.2011年6月1日,nginx 1.0.4发布. Nginx是一

基于linux的web服务器的iptables防火墙安全优化设置

安全规划:开启 80  22 端口并 打开回路(回环地址 127.0.0.1) #iptables –P INPUT ACCEPT #iptables –P OUTPUT ACCEPT #iptables –P FORWARD ACCEPT 以上几步操作是为了在清除所有规则之前,通过所有请求,如果远程操作的话,防止远程链接断开. 接下来清除服务器内置规则和用户自定义规则: #iptables –F #iptables -X 打开ssh端口,用于远程链接用: #iptables –A INPUT

Web服务器(Apache)与Servlet容器(Tomcat)

之前一直比较迷惑Apache与Tomcat的关系,通过查询资料,有所了解,现记录于此. Apache与Tomcat 两者定位:Apache是HTTP Web服务器,Tomcat是Web容器. 有一个非常形象的比喻:Apache是一辆车,可以装载静态的物件(HTML静态网页等):但不能装动态的水(JSP.CGI等),要装水就需要桶(容器),当然桶也可以不放在车上而单独存放,则该容器即为Tomcat. 两者的主要区别: Apache是世界上最流行的Web服务器(其次是微软的IIS),可以处理浏览器的

keepalived+nginx+tomcat搭建高性能web服务器集群

使用keepalived+nginx+tomcat搭建高性能web服务器集群,系统采用centos6.9,前端用nginx做反向代理实现负载均衡,同时结合keepalived对nginx实现高可用,后端使用两台tomcat做动态jsp解析,实现了动静分离. 搭建环境 准备四台服务器 vip: 192.168.75.130master: 192.168.75.131 (安装nginx做反向代理实现负载匀衡,结合keepalived实现高可用)backup: 192.168.75.132 (同上)w

Web应用和Web服务器(Apache Tomcat)基本概念

Web服务器 Web应用提供用户通过网络访问资源(静态资源:html等/动态资源:jsp,jar)的服务.为了使用户能够访问到资源,程序开发者不仅需要开发资源文件,还需要开发Web服务器提供给用户访问资源的渠道.随着Web应用的流行,涌现出越来越多优秀的Web服务器,来帮助程序开发者减少工作量,使得程序开发者只专注于资源的提供.目前主流的Web服务器有Weblogic,Tomcat,WebSphere. 首先看一个没有Web服务器的资源如何能被用户访问: Tomcat和目录介绍 Tomcat本质

基于tomcat响应处理模型实现的高并发web服务器

在上一篇博客中,一个简单的AIOweb处理例子,可以看到AIO异步处理,依赖操作系统完成IO操作的Proactor处理模型确实很强大,可以是实现高并发,高响应服务器的不错选择,但是在tomcat中的connector的处理模型还依旧是基于NIO的处理,当然,我认为这可能会在以后的版本进行改进,但另一方面,我更认为AIO的负载控制方面的处理可能是比较难的,因为AIO api并没有提供我们对分配线程组的处理,而只是提供一个线程组,交给操作系统去解决io处理上的问题,所以,这可能会给需要复杂处理的负载

探秘Tomcat——从一个简陋的Web服务器开始

前言: 无论是之前所在实习单位小到一个三五个人做的项目,还是如今一个在做的百人以上的产品,一直都能看到tomcat的身影.工作中经常遇到的操作就是启动和关闭tomcat服务,或者修改了摸个java文件,编译该文件,将生成的class文件塞到tomcat目录下相应的jar包中去,以使其生效,但是也可以热部署,不需要这么繁琐的操作. 总之,一直以来都是习惯了tomcat的存在,没有深究tomcat的运行机制和原理,上一次对于tomcat源码的跃跃欲试还是去年的事儿了——<探秘Tomcat(一)——M