您当前的位置:首页 > 学海无涯 > 信息安全网站首页信息安全
Tomcat安装与安全配置
发布时间:2015-11-06作者:
二、安全配置
1、采用Nginx做前端反向代理
upstream tomcat1 { server localhost:8080; } server { listen 80; server_name www.yflx.cc; charset utf-8; location / { root html; index index.html index.htm; proxy_pass http://tomcat1; proxy_set_header X-Real-IP $remote_addr; client_max_body_size 100m; } location ~ ^/(WEB-INF)/ { deny all; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
防火墙开启80端口,屏蔽Tomcat端口(8080、8005、8009端口),屏蔽WEB-INF文件夹的访问
2、删除Tomcat目录下自带webapps目录,或者限制访问。
限制方法:修改conf/server.xml设定IP限定
修改conf/tomcat-user.xml使用账户密码限定
3、使用其他用户启动tomcat
4、隐藏版本号
安装目录下的lib子文件夹,找到catalina.jar这包,rar软件进度到\org\apache\catalina\util目录下,编辑ServerInfo.properties
修改:
server.info=Apache Tomcat/8.0.28 server.number=8.0.28.0 server.built=Oct 7 2015 18:25:21 UTC
5、关闭war自动部署
默认 Tomcat 是开启了对war包的热部署的。为了防止被植入木马等恶意程序,因此我们要关闭自动部署。
修改实例:
"localhost" appBase="" unpackWARs="false" autoDeploy="false">
6、更改 Tomcat 的服务监听端口
一般公司的 Tomcat 都是放在内网的,因此我们针对 Tomcat 服务的监听地址都是内网地址。
"8080" address="172.16.100.1" />
7、server.xml上maxThreads 连接数限制
maxThreads 是 Tomcat 所能接受最大连接数。一般设置不要超过8000以上,如果你的网站访问量非常大可能使用运行多个Tomcat实例的方法,即,在一个服务器上启动多个tomcat然后做负载均衡处理。
这里还需要注意的一点是,tomcat 和 php 不同。php可以按照cpu和内存的情况去配置连接数,上万很正常。而 java 还需要注意 jvm 的参数配置。如果不注意就会因为jvm参数过小而崩溃。
8、多虚拟主机
强烈建议不要使用 Tomcat 的虚拟主机,推荐每个站点使用一个实例。即,可以启动多个 Tomcat,而不是启动一个 Tomcat 里面包含多个虚拟主机。因为 Tomcat是多线程,共享内存,任何一个虚拟主机中的应用崩溃,都会影响到所有应用程序。虽然采用多实例的方式会产生过多的开销,但至少保障了应用程序的隔离和安全。
9、压错传输
tomcat作为一个应用服务器,也是支持 gzip 压缩功能的。我们可以在 server.xml 配置文件中的 Connector 节点中配置如下参数,来实现对指定资源类型进行压缩。
compression="on" # 打开压缩功能 compressionMinSize="50" # 启用压缩的输出内容大小,默认为2KB noCompressionUserAgents="gozilla, traviata" # 对于以下的浏览器,不启用压缩 compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" # 哪些资源类型需要压缩
提示:
Tomcat 的压缩是在客户端请求服务器对应资源后,从服务器端将资源文件压缩,再输出到客户端,由客户端的浏览器负责解压缩并浏览。相对于普通的浏览过程 HTML、CSS、Javascript和Text,它可以节省40% 左右的流量。更为重要的是,它可以对动态生成的,包括CGI、PHP、JSP、ASP、Servlet,SHTML等输出的网页也能进行压缩,压缩效率也很高。但是,压缩会增加 Tomcat 的负担,因此最好采用Nginx + Tomcat 或者 Apache + Tomcat 方式,将压缩的任务交由 Nginx/Apache 去做。
10、禁止列目录
关键字词:漏洞,安全配置,服务搭建,tomcat

上一篇:Git安装与安全配置
下一篇:自以为是的安全之host绑定