当前位置:文档之家› Tomcat 服务及部署

Tomcat 服务及部署

Tomcat 服务及部署
将当前老版本tomcat 的server.xml、catalina.sh、web.xml、logging.properties和tomcat-users.xml文件进行备份
1.隐藏版本信息
修改conf/server.xml,在Connector节点添加server字段
<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol" connectionTimeout="20000"
redirectPort="8443"
maxThreads="500"
minSpareThreads="100"
maxSpareThreads="200"
acceptCount="200"
server="WWS1.0" />
maxThreads设定在监听端口的线程的最大数目,这个值也决定了服务器可以同时响应客户请求的最大数目.默认值为200
acceptCount设定在监听端口队列的最大客户请求数量,默认值为10.如果队列已满,客户必须等待.
connectionTimeout定义建立客户连接超时的时间.如果为-1,表示不限制建立客户连接的时间
修改lib/org/apache/catalina/util/ServerInfo.properties
自定义修改字段和server.number字段
=Apache
server.number=
server.built=
2.禁用Tomcat 管理页面
删除webapp下文件
3.web.xml 配置404和500错误的自定义页面
设置默认的错误页面
打开conf/web.xml文件
<error-page>
<error-code>400</error-code>
<location>/404.html</location>
</error-page>
4.关闭war自动部署
在/conf/server.xml 中的修改
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="false">
5.关闭8005端口
在/conf/server.xml 中的修改
<Server port="8005" shutdown="sdf#*@sdf">
6.关闭8009端口
在/conf/server.xml 中的这段注释掉
<!-- <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> -->
7. catalina.sh配置JAVA_OPTS
JAVA_OPTS=" -server -Xms512m -Xmx2048m -Djava.awt.headless=true"
8. 日志配置,禁用tomcat自身日志
去掉catalina.out:修改catalina.sh
if [ -z "$CATALINA_OUT" ] ; then
CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out
改为
CATALINA_OUT=/dev/null
去掉localhost_access_log在/conf/server.xml 中的这段注释掉:
<Valve
className="org.apache.catalina.valves.AccessLogValve"
directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b" />
修改logging.properties
所有level =FINE/INFO都改成OFF
注意,这样改过以后tomcat将不会输出日志,需要调试的时候再打开此项
9.tomcat映射路径
webapp/speechServer-0.0.1映射到根目录
在/conf/server.xml 中加入
<Context docBase="speechServer-0.0.1" path="" debug="0" reloadable="true"/>
10.用普通用户启动Tomcat
用nobody启动保证tomcat用户不能通过漏洞shell
chmod 777 -R tomcat_dir
sudo -u nobody bash bin/start.sh
选配:
配置tomcat开机自启动
编辑/etc/rc.d/rc.local追加:
export JAVA_HOME=/opt/jdk1.8.0_31
export CATALINA_HOME=/opt/apache-tomcat-8.0.26 $CATALINA_HOME/bin/startup.sh
java.security优化
打开$JAVA_HOME/jre/lib/security/java.security文件,找到下面的内容:
securerandom.source=file:/dev/urandom
替换成
securerandom.source=file:/dev/./urandom
在Linux 上监控Tomcat 是否关闭, 如果关闭自动重启
新建cron文件auto.cron如下
o 每分钟执行一次监控
o 每天早上10点清理Tomcat的catalina.out文件
auto restart tomcat
*/1 * * * * sh tomcat check_and_restart.sh
0 10 * * * cat /dev/null >Catalina.out
监控脚本
#!/bin/bash
tomcat_path=/opt/tomcat/tomcat8
tomcat_pid=$(ps -ef|grep $tomcat_path|gawk '$0 !~/grep/ {print $2}' |tr -s '\n' ' ')
if [ -z "$tomcat_pid" ];then
sh $tomcat_path/bin/startup.sh
echo tomcat is dead,restartat date “+%Y-%m-%d %H:%M:%S”>> $tomcat_path/tomcat_auto_restart.log
fi
运行
crontab auto.cron。

相关主题