直接修改 apache 主配置文件中的 servertokens prod 和 serversignature off 两项指令,可隐藏服务器版本与系统信息,降低被针对性攻击风险,但需重启服务并验证生效,且不能替代其他安全措施。

直接在 Apache 主配置文件中修改两个关键指令,就能有效隐藏服务器版本号和操作系统信息,大幅降低被针对性攻击的风险。
修改 ServerTokens 指令
该指令控制 HTTP 响应头中 Server 字段的内容,必须在全局配置中设置(.htaccess 无效)。
- 默认值
Full会暴露完整信息,例如:Apache/2.4.52 (Ubuntu) OpenSSL/1.1.1f PHP/8.1.2 - 推荐设为
Prod,只显示Apache,不带版本、系统或模块细节 - 编辑配置文件(Debian/Ubuntu 路径通常为
/etc/apache2/apache2.conf,RHEL/CentOS 为/etc/httpd/conf/httpd.conf) - 添加或修改这一行:
ServerTokens Prod
关闭 ServerSignature
该指令影响 Apache 自动生成的页面(如错误页、目录列表页)底部的签名信息。
- 设为
Off可完全移除页脚中的服务器标识行 - 若需保留联系人邮箱,可用
Email,但不建议用于生产环境 - 在相同配置文件中添加:
ServerSignature Off
验证与重启
修改后必须重启服务才能生效,且需验证是否真正隐藏。
- 执行重启命令:
Debian/Ubuntu:sudo systemctl restart apache2
RHEL/CentOS/AlmaLinux:sudo systemctl restart httpd - 用 curl 检查响应头:
curl -I http://your-server-ip,确认Server:行仅显示Apache - 手动访问一个不存在的路径(如
/nonexistent),查看错误页底部是否不再显示版本和系统信息
额外提醒
仅靠隐藏版本号不能替代其他安全措施,但它属于“低成本高收益”的基础加固项。
- 不要依赖混淆或伪造版本号(如改源码重编译),既难维护又可能引入兼容问题
- 搭配禁用目录浏览、限制 HTTP 方法、强化 TLS 等配置,才能形成纵深防御
- 定期检查 Apache 官方公告,及时升级修复已知漏洞,比隐藏版本更重要











