TOMCAT保险配置
TOMCAT安全配置删除默认文件删除TOMCAT默认示例文件、帮助文件、后台管理界面等,禁止使用manager/admin管理
TOMCAT安全配置
删除默认文件
删除TOMCAT默认示例文件、帮助文件、后台管理界面等,禁止使用manager/admin管理后台。需删除的文件和目录清单如下:
exec "$PRGDIR"/"$EXECUTABLE" start "$@"
修改为:
if [ -z "$TOMCAT_USER" ]; then exec "$PRGDIR"/"$EXECUTABLE" start "$@"else exec su $TOMCAT_USER -c "$PRGDIR/$EXECUTABLE start $@"fi
使用jsvc来启动tomcat
在jsvc配置文件里面指定参数
<init-param> <param-name>listings</param-name> <param-value>false</param-value> </init-param>
打开access log按小时或按天记录。prefix/fileDateFormat/pattern可自定义,但必须记录关键信息,例如:源IP,Host、时间、请求、状态码、数据大小、UA等。注意:如果前端是NG做反向代理,默认的pattern="combined"和pattern="common"不能记录用户的真实IP,必须自定义pattern,记录客户端真实IP(X-Real-IP)
fileDateFormat="yyyy-MM-dd-HH"
pattern="%a %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i" " %{X-Real-IP}i"
resolveHosts="false"/>
禁止使用jmx如之前已经启用,在启动脚本里面(catalina.sh或startenv.sh)删除CATALINA_OPTS变量里面jmxremote相关参数即可。
禁止使用AJP配置$CATALINA_BASE/conf/server.xml文件,注释或删除如下部分。
注释前
enableLookups="false" redirectPort="*" protocol="AJP/**" />
目录权限
默认情况下,tomcat启动用户对WEB目录下所有文件及子目录应无写权限。标准配置:文件属主为root.root,权限为755。
日志文件及cache文件应放在WEB目录之外
上传目录禁止执行如tomcat需支持上传功能,需要对WEB目录下某些目录有写权限,那么应该限制这些上传目录禁止执行脚本。
appdir路径有几种可能:
(1) 默认位置
appdir="$CATALINA_BASE/webapps/ROOT"
(2) 默认位置下指定了appname
appdir="$CATALINA_BASE/webapps/$appname"
(3)通过docBase参数指定的路径
appdir="$docBase"
这些是通过UrlRewriteFilter模块来限制的示例配置,如果WEB-INF及相关目录不存在,创建一个即可。
设置规则禁止上传目录执行jsp可以使用
引用<urlrewrite>
<rule>
<from>^[\./]*/upload/.*\.jsp$</from>
<to>/deny.html</to>
</rule>
</urlrewrite>