tomcat修改banner,隱藏版本號
阿新 • • 發佈:2018-02-06
隱藏版本號 sof webapp pro tom webapps XML app uil 為了避免黑客針對某些版本進行攻擊,因此我們需要隱藏或者偽裝 Tomcat 的版本信息。
針對該信息的顯示是由一個jar包控制的,該jar包存放在 Tomcat 安裝目錄下的lib目錄下,名稱為 catalina.jar
針對該信息的顯示是由一個jar包控制的,該jar包存放在 Tomcat 安裝目錄下的lib目錄下,名稱為 catalina.jar
1、兩種方式,第一種是修改catalina.jar文件
進入tomcat的lib目錄找到catalina.jar文件
unzip catalina.jar之後會多出兩個文件夾
進入org/apache/catalina/util 編輯配置文件ServerInfo.properties字段來實現來更改我們tomcat的版本信息
修改為
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屬性
在Connector中添加server屬性就可以了,具體如下:
打開tomcat的conf/server.xml,在server.xml找到 <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" useBodyEncodingForURI="true" /> 修改後如下: <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" useBodyEncodingForURI="true" server="Microsoft-IIS/6.5"/>
3、默認Tomcat 是開啟了對war包的熱部署。為了防止被植入木馬等惡意程序,因此我們要關閉自動部署。
將unpackWARs和autoDeploy由原先true都改為false
<Host name="localhost" appBase="" unpackWARs="false" autoDeploy="false">
線上是不使用 Tomcat 默認提供的管理頁面的,因此都會在初始化的時候就把這些頁面刪掉。這些頁面是存放在 Tomcat 安裝目錄下的webapps目錄下的。
我們只需要刪除該目錄下的所有文件即可。另外conf/Catalina/localhost目錄下的2個配置文件 host-manager.xml 和 manager.xml 也需要一並刪掉
4、為了進一步安全,建議使用專用用戶 tomcat 或者 nobody 用戶來啟動 Tomcat,為了防止 Tomcat 被植入 web shell 程序後,可以修改項目文件。因此我們要將 Tomcat 和項目的屬主做分離,這樣子,即便被搞,他也無法創建和編輯項目文件。
tomcat修改banner,隱藏版本號