虚拟主机域名注册-常见问题 → 服务器知识 → 操作系统 | ||||
1、使用CLI显示当前的Nginx版本。 Nginx会在错误页面和 "服务器 "响应头中显示版本。我们可以用下面的命令来验证。 $ curl -I https://your-domain $ curl -I https://www.cyberciti.biz 输出结果: ![]() 下面是我的HTTP/502错误页面显示信息的输出: ![]() 2、使用server_tokens指令隐藏Nginx版本: 你需要将server_tokens设置为关闭,以隐藏Linux和Unix系统上的Nginx服务器版本。用vim/nano等文本编辑器编辑nginx.conf文件。 $ sudo vim /etc/nginx/nginx.conf 我们可以只在http、server或location上下文中设置server_tokens。我将在http部分添加。 server_tokens off; 如下图: ![]() 正常重启或重新加载Nginx服务器: $ sudo nginx -t $ sudo nginx -s reload 3、验证Nginx版本是否隐藏 使用curl命令,如下所示: curl -I https://your-domain-name-here curl -I https://www.cyberciti.biz 看起来没有显示版本: ![]() Firefox浏览器也没有显示Nginx版本: ![]() 4、隐藏Nginx版本的其他可能值 语法如下: server_tokens on | off | build | string。 在Linux、*BSD和Unix上的默认设置如下: server_tokens on.在Linux、*BSD和Unix上,默认设置如下: server_tokens on; 5、从服务器头和错误页面中删除版本 我们可以更改以下值来启用或禁用nginx版本。 on : 显示版本号。 off : 关闭显示版本号。 build : 确保我们在发布nginx版本的同时也发布了一个版本名。你必须有Nginx 1.11.10版本。 string : 只适用于商业订阅,从1.9.13版本开始,错误页面的签名和 "服务器 "响应头的值可以使用字符串变量明确设置。空字符串则会禁用 "服务器 "字段。 6、在Nginx中设置自定义版本号 例如,商业订阅(Nginx Plus)用户可以按以下方式设置,伪造服务器版本和自定义名称。 server_tokens "NixCraft_WWW"; 重新加载Nginx服务器。 # service nginx reload 使用curl命令进行测试 curl -I http://127.0.0.1/ ![]() 以上是通过隐蔽性功能实现的安全性。它是深度防御的方法。但它不应该是主要的防御方式。你需要编写安全的代码。安装一个防火墙,尤其是WAF(Web应用防火墙)。嘉裕云建议,没有必要公开Nginx或PHP或Python版本,因为它可能对攻击者有用。请记住,无论Nginx版本是否公开,Linux / Unix操作系统,Web应用程序/ Nginx都应保持安全
|
||||
>> 相关文章 | ||||