Tomcat 修改默认404页面的服务器版本号(另一种改法)

本文参考了:tomcat隐藏404页面中的版本号__c G的博客-CSDN博客

【起源】     

        我的服务器上部署了不止一个服务,分别在webapps目录下的app1、app2等,访问时需要在路径中提供具体app序号,比如:https://192.168.1.100/app1/index.jsp,然后发现如果访问者随意访问一个不存在的基础路径例如:https://192.168.1.100/index.jsp,(也就是绕过网站名)则会弹出系统默认的404页面,上面显示了当前Tomcat的服务器版本号。

【隐患】

    那就是容易被针对性攻击爆破。

【常规解决方案】

    1、修改应用内的web.xml(只适用于网站路径内的无效页

        该方案资料较常见,但是只能用于访问路径在应用路径内的非正常页面。比如我的网站app1,访问了https://192.168.1.100/app1/aaaaaaaaaaaa.jsp,就会执行自带的404页面。

   2、修改tomcat/lib/catalina.jar文件(烦琐并且要有jar工具,伤筋动骨

       先解压,修改\org\apache\catalina\util\ServerInfo.properties,然后重新压缩成jar。

       本来操作也没什么难,可惜我在windows环境下执行压缩后的catalina.jar无法正常加载,原因暂时也不明,而CentOS有刚好执行到最后jar命令时无法找到这个jar,都失败了。

       其实这个方法在我看来是对原始文件动了手脚,对我的普通应用来说,基本是伤筋动骨的行为

【终极解决方案】

      直接用一个文件搞定。

     这个方案就是参考了文章顶部链接的作者资料,在此表示感谢。

      方法很简单,在tomcat/lib/目录下,按下方路径创建文件夹和文件(敲重点)

org/apache/catalina/util/ServerInfo.properties

注意:是分别创建org、apache、catalina、util 4个文件夹和ServerInfo.properties文本文件而不是修改catalina.jar文件!!!不需要额外工具,不需要额外命令。

然后这个ServerInfo.properties文件里面只需要输入server.info=xxxxx,就够了。

 

    来,看看效果吧:

       思考:这里填IIS Srv,有没有可能让一部分人感到兴奋,然后迫不及待地打开他们的“IIS-attack”?进一步恼羞成怒地疯狂报复?

 【结语】

      怎么样?简单而又高效吧?既不用动了catalina.jar文件,又能生效。拿去吧。

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值