在这篇简短的文章中,我们将向您展示如何在错误页面和Linux的“ 服务器HTTP ”响应头字段中隐藏Nginx服务器版本。 这是保护您的Nginx HTTP和代理服务器的主要推荐实践之一。
另请参阅 : 如何隐藏Apache版本号和其他敏感信息
本指南假设您已经在您的系统上安装了Nginx,或者根据您的Linux发行版遵循以下任何教程来设置完整的LEMP:
- 如何在Debian 9 Stretch上安装LEMP(Linux,Nginx,MariaDB,PHP-FPM)
- 如何在FreeBSD上安装Nginx,MariaDB和PHP(FEMP)
- 如何在16.10 / 16.04安装Nginx,MariaDB 10,PHP 7(LEMP)
- 在RHEL / CentOS 7/6和Fedora上安装最新的Nginx 1.10.1,MariaDB 10和PHP 5.5 / 5.6
“ server_tokens ”指令负责在错误页面和“服务器”HTTP响应头字段中显示Nginx版本号和操作系统,如下图所示。
Nginx版本号
要禁用此功能,您需要关闭/etc/nginx/nginx.conf配置文件中的server_tokens指令。
# vi /etc/nginx/nginx.conf OR $ sudo nano /etc/nginx/nginx.conf
在下面的屏幕截图中将下面的行添加到http上下文中作为shwon。
server_tokens off;
关闭Nginx中的服务器令牌
添加上面的行后,保存文件并重新启动Nginx服务器以使新的更改生效。
# systemctl restart nginx OR $ sudo systemctl restart nginx
现在验证它的工作。
隐藏Nginx版本
注意 :这只会隐藏服务器版本号,而不会隐藏服务器签名(名称)。 如果要隐藏服务器名称,请从源代码编译Nginx,并包含--build=name
选项以设置nginx构建名称。
如果您正在Nginx Web服务器上运行PHP,我建议您隐藏PHP版本号 。
为了进一步保护和加强Nginx网络服务器,请查看我们有关在Linux中保护Nginx的综合指南,您将会发现它很有用:
在本文中,我们解释了如何在Linux中隐藏错误页面中的Nginx服务器版本和“服务器”HTTP响应头字段。 如果您有任何疑问,请使用下面的评论表单联系我们。