因为近期漏洞安全问题,特此用了tomcat 8.5.51 也就是tomcat8目前最新的版本;
其实tomcat配置很简单,因首次操作遇到了一些问题,特此记录
操作系统版本:Red Hat Enterprise Linux Server release 7.6 (Maipo)
内存:16G
JDK:java version "1.8.0_72"
安装路径:/root/apache-tomcat-8.5.51
tomcat发布war包比较简单,把应用提供的war包扔在tomcat 的 webapps(/root/apache-tomcat-8.5.51/webapps)下,启动tomcat即可 。
tomcat解压后在config目录下自动产生一个server.xml的配置文件,所有https 和http 以及端口的配置变更都在此文件中配置(建议如果之前版本不是这个,一些参数端口以及密码证书文件可以拷贝到新的目录下,不建议用老版本的server.xml直接替换,每个版本不通设置参数也不一样,我就是吃了这个亏)
参数修改:
http端口80,https端口:443
默认参数:
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
修改为:<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" />
如果只用http 那我们就修改这一处80即可
要是用https 我们在加一处:配置证书(因为测试我自己JDK工具生成的放在了config目录下)
默认参数:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="conf/localhost-rsa.jks"
type="RSA" />
</SSLHostConfig>
</Connector>
修改为:
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" >
<SSLHostConfig>
<Certificate certificateKeystoreFile="conf/tomcat.keystore"
certificateKeystorePassword="123456"
type="RSA" />
</SSLHostConfig>
</Connector>
保存server.xml文件 ,启动Tomcat 大功告成。
# sh startup.sh
Using CATALINA_BASE: /root/apache-tomcat-8.5.51
Using CATALINA_HOME: /root/apache-tomcat-8.5.51
Using CATALINA_TMPDIR: /root/apache-tomcat-8.5.51/temp
Using JRE_HOME: /usr/local/jdk1.8.0_72
Using CLASSPATH: /root/apache-tomcat-8.5.51/bin/bootstrap.jar:/root/apache-tomcat-8.5.51/bin/tomcat-juli.jar
查看日志:
没有报错和告警即说明启动正常,登录测试页面看下:
http测试页面:
https测试页面:
这样就可以交差了,后面WAR包的内容报错就扔给开发了,心疼5秒钟
另附测试制作证书方式:
自签名证书简介:
JDK中keytool是一个证书管理工具,可以生成自签名证书。 就是自己生成的证书,并不是官方生成的证书。除非是很正式的项目,否则使用自己签发的证书即可,因为官方生成证书是要花钱滴。
使用JDK自带工具keytool生成ssl证书
为服务器生成证书
进入jdk的bin目录下面:
相关命令:
keytool
-genkey
-alias tomcat(别名)
-keypass 123456(别名密码)
-keyalg RSA(生证书的算法名称,RSA是一种非对称加密算法)
-keysize 1024(密钥长度,证书大小)
-validity 365(证书有效期,天单位)
-keystore /tomcat/cfongifg/tomcat.keystore(指定生成证书的位置和证书名称)
-storepass 123456(获取keystore信息的密码)
- storetype (指定密钥仓库类型)
使用keytool命令生成证书:
keytool -genkey -alias tomcat -keypass 123456 -keyalg RSA -keysize 1024 -validity 365 -keystore /tomcat/config/tomcat.keystore -storepass 123456
返回:
>keytool -genkey -alias tomcat -keypass 123456 -keyalg RSA -keysize 1024 -validity 365 -keystore W:/tomcat.keystore -storepass 123456
您的名字与姓氏是什么?
[Unknown]:
您的组织单位名称是什么?
[Unknown]: test
您的组织名称是什么?
[Unknown]: test
您所在的城市或区域名称是什么?
[Unknown]: beijing
您所在的省/市/自治区名称是什么?
[Unknown]: beijing
该单位的双字母国家/地区代码是什么?
[Unknown]: zh
CN= OU=seeker, O=seeker, L=beijing, ST=beijing, C=zh是否正确?
[否]: y
点击回车: 目录下面生成tomcat.keystore的文件