设为首页 收藏本站
查看: 1083|回复: 0

[经验分享] tomcat修改banner,隐藏版本号

[复制链接]

尚未签到

发表于 2018-11-30 07:48:33 | 显示全部楼层 |阅读模式
  为了避免**针对某些版本进行,因此我们需要隐藏或者伪装 Tomcat 的版本信息。
针对该信息的显示是由一个jar包控制的,该jar包存放在 Tomcat 安装目录下的lib目录下,名称为 catalina.jar**

1、两种方式,第一种是修改catalina.jar文件
  进入tomcat的lib目录找到catalina.jar文件
http://i2.运维网.com/images/blog/201802/06/55f81cff8062752d7b6b1d7b717651b7.jpg
  unzip catalina.jar之后会多出两个文件夹
http://i2.运维网.com/images/blog/201802/06/1a2b3a399b7d95f0a0953a47450ea6e0.jpg
  进入org/apache/catalina/util 编辑配置文件ServerInfo.properties字段来实现来更改我们tomcat的版本信息
http://i2.运维网.com/images/blog/201802/06/b419a5798ff69c5d0f80eb13a7744da1.jpg
http://i2.运维网.com/images/blog/201802/06/d53d89c74fbe768144756075b1a82dca.jpg
修改为

server.info=Apache Tomcat
server.number=0.0.0.0
server.built=Apr 2 2017 07:25:00 UTC
  将修改后的信息压缩回jar包

# cd  /tomcat/lib
# jar uvf catalina.jar org/apache/catalina/util/ServerInfo.properties

  重启tomcat

2、修改server属性
  解决版本泄露,修改服务器Apache-Coyote/1.1标识为自定义内容
  tomcat可以分成连接器和容器两个重要的组建,(还有其他很多组件)Apache-Coyote 是Tomcat的连接器。处理http请求的请求行,请求头等信息,创建Request和Response对象,然后调用Servlet容器的invoke方法。
  Server:Apache-Coyote/1.1是泄露了当前容器的类型
  在Connector中添加server属性就可以了,具体如下:

打开tomcat的conf/server.xml,在server.xml找到

修改后如下:

3、默认Tomcat 是开启了对war包的热部署。为了防止被植入***等恶意程序,因此我们要关闭自动部署。


将unpackWARs和autoDeploy由原先true都改为false

Host配置节点各个属性的作用:
appBase:设置 Web 应用程序组的路径。前面说过一个虚拟主机可以由多个 Web 应用程序构成,所以这里的appBase所
指向的目录应该是准备用于存放这一组 Web 应用程序的目录,而不是具体某个 Web 应用程序的目
录本身(即使该虚拟主机只由一个 Web 应用程序组成)。appBase 属性的值可以是相对于 Tomcat 安装目
录的相对路径,也可以是绝对路径,需要注意的是该路径必须是 Tomcat 有权限访问的,通过 Arch Linux 源
安装的 Tomcat 是通过 tomcat 用户运行的,因此创建一个新的 appBase 目录之后可以使用 chown 命令更
改目录的所有者。
name:设置虚拟主机的域名,比如 localhost 表示本机名称,实际应用时应该填写具体域名,
比如 www.dog.com 或者 dog.com,当然如果该虚拟主机是给内部人员访问的,也可以直接填写服务器的 ip 地址,
比如 192.168.1.10。
autoDeploy:是否允许自动部署,默认值是true,即表示Tomcat 会自动检测,若有新的WEB应用
放入appBase并且Tomcat在运行的情况下,自动载入应用。
unpackWARs:设置是否自动展开 war 压缩包再运行 Web 应用程序,默认值是 true,如果为false则
直接运行war文件。
  线上是不使用 Tomcat 默认提供的管理页面的,因此都会在初始化的时候就把这些页面删掉。这些页面是存放在 Tomcat 安装目录下的webapps目录下的。
我们只需要删除该目录下的所有文件即可。另外conf/Catalina/localhost目录下的2个配置文件 host-manager.xml 和 manager.xml 也需要一并删掉

4、为了进一步安全,建议使用专用用户 tomcat 或者 nobody 用户来启动 Tomcat,为了防止 Tomcat 被植入 web shell 程序后,可以修改项目文件。因此我们要将 Tomcat 和项目的属主做分离,这样子,即便被搞,他也无法创建和编辑项目文件。




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-641340-1-1.html 上篇帖子: Tomcat集群使用Memcached实现Session共享 下篇帖子: 使用nagios监控tomcat
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表