常见web服务器隐藏版本号
Nginx
编辑src/core/nginx.h,将其中的NGINX_VERSION及NGINX_VER的值改为***然后编译Nginx即可。
#define NGINX_VERSION "1.18.0" ===> "***"
#define NGINX_VER "nginx/" NGINX_VERSION ===>"***" NGINX_VERSION
Apache
编辑include/ap_release.h,将其中的#define AP_SERVER_BASEPRODUCT "Apache"改为*。
#define AP_SERVER_BASEVENDOR "Apache Software Foundation"
#define AP_SERVER_BASEPROJECT "Apache HTTP Server"
#define AP_SERVER_BASEPRODUCT "Apache" ===> "******"
在编译完成之后在apache配置文件httpd.conf中添加配置段
ServerSignature Off
ServerTokens Prod
Tomcat
使用使用jdk中自带的jar命令从catalina.jar解压出ServerInfo.properties文件
cd tomcat/lib
jar -xf catalina.jar org/apache/catalina/util/ServerInfo.properties
使用vim手动修改该文件
server.info=******
server.number=
server.built=
重新封装jar并删除残余文件
jar -uf catalina.jar org/apache/catalina/util/ServerInfo.properties
rm -rf org/