点击上方“IT那活儿”公众号,关注后了解更多内容,不管IT什么活儿,干就完了!!!
目的
知识点描述
标准指导操作
Tomcat安全加固主要分为三个方面:禁用控制台、隐藏版本号和SSL认证。
3.1 禁用控制台
将Tomcat目录webapps下所有文件删除即可,删除后由于不存在应用,将无法访问页面。

3.2 隐藏版本号
方法一:
在Tomcat lib目录下创建路径org/apache/catalina/util并在该路径下创建自定义版本文件。
mkdir -p org/apache/catalina/util
vim ServerInfo.properties
# 在文件中输入自定义版本
server.info=Apache Tomcat
Bash
查看前台tomcat发现版本号已隐藏。

但此时在后台bin目录下运行version.sh脚本还是能查看到Tomcat版本,建议使用下列方式:

方法二:
修改catalina.jar中的版本信息,先解压jar包后修改文件org/apache/catalina/util/ServerInfo.properties中的版本信息。

jar包备份后将文件重新压缩到jar包中。
# 备份
cp catalina.jar catalina.jar20220713
# 打包
jar uvf catalina.jar org/apache/catalina/util/ServerInfo.properties
Bash
再次查看前台和使用version.sh脚本,tomcat版本信息都已隐藏。

3.3 SSL认证
生成keystore,可以使用java自带的keytool生成,按照提示一步步填相应的信息,除了密码之外的乱填都可以。
keystool -genkey -alias tomcat -keyalg RSA
Bash
生成的keystore在当前用户的~目录下,为一个.keystore的隐藏文件,将该文件移到指定目录下并重命名cp ~/.keystore app/tomcat1/conf/tomcat.keystore
server.xml修改,修改前先备份;将server.xml中下列解除注释并配置:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="/app/tomcat1/conf/tomcat.keystore" certificateKeystorePassword="passwd1" type="RSA" />
</SSLHostConfig>
</Connector>
<Connector protocol="AJP/1.3"
address="::1"
port="8009"
redirectPort="8443" />
Bash
测试https 8443端口访问,访问成功则配置成功。


本文作者:刘川陵(上海新炬王翦团队)
本文来源:“IT那活儿”公众号

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




