Apache / Tomcat のバージョン情報を隠す方法

Tomcatのバージョン情報を隠す方法
(レスポンスヘッダ:Apache HTTP Server)
httpd.confにServerTokens Prodを追加する
weblabo.oscasierra.net

(レスポンスヘッダ:Tomcat)
server.xmlのConnectorのserver情報を加工する(※1)
dev.classmethod.jp

(エラーページ[※2])
server.xmlにErrorReportValveを追加する
なお、HostタグにもerrorReportValveClass定義が存在する(自身では試した事がない)
意外と知られていない、Tomcatのエラーページのバージョン番号の簡単な隠し方t246osslab.wordpress.com
Tomcatがバージョン情報参照している箇所や、それの修正方法についても言及してくれています。

※1 ConnectorがHTTPの場合は指定可能であるが、AJPの場合は指定不可能(=Tomcatの情報自体返却されない)
Apache Tomcat 9 Configuration Reference (9.0.41) - The HTTP Connector
Apache Tomcat 9 Configuration Reference (9.0.41) - The AJP Connector
※2 そもそもエラーページは別途作成しておいた方がとか

●TomEEを利用する際の注意点
・どうもTomEEがserver.infoのバージョン情報まで確認しているっぽいので、server.infoは修正できなさそう
 (挙動レベルできちんとした確認まではしていない)

・server.infoを少し加工して記載しても、TomEEのバージョン情報は出力されてしまう

●バージョン情報をコンソールで取得する方法
(Apache HTTP Server)

httpd -V

(Tomcat)

${CATALINA_HOME}/bin/version.sh

(TomEE)
今のところtomeeのjarの命名規則にバージョン番号が付与されている

●APサーバー情報をJava上で取得する方法
ServletContext#getServletInfoで取得可能
spring.pleiades.io

わかりやすいJakartaEE ウェブシステム入門

わかりやすいJakartaEE ウェブシステム入門

  • 作者:隆, 川場
  • 発売日: 2020/11/21
  • メディア: 単行本
パーフェクト Java EE

パーフェクト Java EE