搜索
首页系统教程LINUX在Linux和Unix上隐藏Nginx版本

在Linux和Unix上隐藏Nginx版本

Feb 09, 2024 pm 07:50 PM
linuxlinux教程linux系统linux命令外壳脚本嵌入式linuxlinux入门linux学习

使用 CLI 显示当前 Nginx 版本

Nginx将在错误页面和“服务器”响应标头字段中显示版本。我们可以使用以下命令进行验证: 示例输出:

$ curl -I https://your-domain
$ curl -I https://www.cyberciti.biz
HTTP/2 200 server: nginx/1.17.10 (Ubuntu)date: Tue, 23 Jun 2020 09:36:49 GMTcontent-type: text/html; charset=UTF-8strict-transport-security: max-age=15768000x-whome: l-ncbz01-mg-wg

这是我的HTTP / 502错误页面显示信息的输出:

在Linux和Unix上隐藏Nginx版本

使用server_tokens指令隐藏 Nginx 版本

您需要将server_tokens设置为 off 以隐藏 Linux 和类 Unix 系统上的 Nginx 服务器版本。使用文本编辑器(如 vim/nano)编辑您的 nginx.conf 文件:

我们只能在 http、服务器或位置上下文中设置server_tokens。我将添加到我的http部分:这是它的外观:

$ sudo vim /etc/nginx/nginx.confserver_tokens off;
http {        ## Basic Settings ##        charset utf-8;        sendfile on;        tcp_nopush on;        tcp_nodelay on;        log_not_found off;        keepalive_timeout 65;        types_hash_max_size 2048;        client_max_body_size 16M;        include /etc/nginx/mime.types;        default_type application/octet-stream;        ## Hide Nginx version ##        server_tokens   off;        ## Security headers for Nginx ##         add_header Strict-Transport-Security "max-age=15768000" always;        add_header X-Content-Type-Options "nosniff" always;        add_header X-Frame-Options "SAMEORIGIN" always;        add_header X-Xss-Protection "1; mode=block" always;        add_header Referrer-Policy  strict-origin-when-cross-origin;        add_header Feature-policy "accelerometer 'none'; camera 'none'; geolocation 'none'; gyroscope 'none'; magnetometer 'none'; microphone 'none'; payment 'none'; usb 'none'";        add_header Content-Security-Policy   "default-src 'self' http: https: data: blob: 'unsafe-inline'" always;        ## SSL Settings ##        ssl_protocols TLSv1.3;        access_log /var/log/nginx/access.log;        error_log /var/log/nginx/error.log;        ## Virtual Host Configs ##        include /etc/nginx/conf.d/*.conf;        include /etc/nginx/sites-enabled/*;}

正常重新启动或重新加载 Nginx 服务器:

sudo nginx -tsudo nginx -s reload

验证 Nginx 版本是否隐藏

使用 curl 命令,如下所示:看我的 Nginx 服务器没有显示任何版本:

$ curl -I https://your-domain-name-here
$ curl -I https://www.cyberciti.biz

HTTP/2 200 server: nginxdate: Tue, 23 Jun 2020 09:43:17 GMTcontent-type: text/html; charset=UTF-8strict-transport-security: max-age=15768000

Firefox 也确认我也成功隐藏了 Nginx 版本:

在Linux和Unix上隐藏Nginx版本

隐藏 Nginx 版本的其他可能值

语法如下:在Linux,*BSD和Unix上的默认设置如下:

server_tokens on | off | build | string;
server_tokens on;

从服务器标头和错误页中删除版本

我们可以更改为以下值来启用或禁用发出 nginx 版本:
on:显示版本号。
off:关闭显示版本号。
build:确保我们发出一个构建名称以及nginx版本。您必须拥有 Nginx 版本 1.11.10。
string:仅适用于商业订阅,从版本 1.9.13 开始,可以使用带有变量的字符串显示设置错误页面上的签名和“服务器”响应标头字段值。空字符串禁用“服务器”字段的发出。

在 Nginx 中设置自定义版本号

例如,商业订阅(Nginx Plus)用户可以将其设置为伪造的服务器版本和自定义名称: 使用服务命令或systemctl命令重新加载Nginx服务器: 同样,使用 curl 命令对其进行测试,如下所示:

;$ service nginx reload$ curl -I http://127.0.0.1/
在Linux和Unix上隐藏Nginx版本

隐藏版本是默默无闻的安全

是的,它是通过隐蔽功能的安全性。它是纵深防御的方法之一。但是,它不应该是主要的防御形式。您需要编写安全代码。安装防火墙,尤其是 WAF(Web 应用程序防火墙)。没有理由暴露Nginx或PHP或Python版本,因为它对攻击者可能是有用的信息。请记住,Linux / Unix操作系统,Web apps / Nginx应该保持安全,无论Nginx版本是否公开。但是,我们不会通过发布版本号来给攻击者带来任何好处。

以上是在Linux和Unix上隐藏Nginx版本的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:良许Linux教程网。如有侵权,请联系admin@php.cn删除
说明Linux的开源性质及其与Windows的对比。说明Linux的开源性质及其与Windows的对比。Apr 28, 2025 am 12:03 AM

Linux的开源本质使其在社区参与、性能、安全性等方面优于Windows,但Windows在用户友好性和软件生态上更胜一筹。1)Linux鼓励社区贡献,开发速度快;2)在服务器和嵌入式系统中性能更好;3)开源本质使其更安全;4)Windows用户界面友好,软件生态广泛。

5个用于监视磁盘I/O性能的Linux工具5个用于监视磁盘I/O性能的Linux工具Apr 27, 2025 pm 04:45 PM

本指南探讨了用于监视和故障排除磁盘I/O性能的基本Linux工具,这是对服务器速度和应用程序响应的关键度量。 磁盘I/O性能直接影响从和书面读取数据的速度

在Linux中查找插入USB设备名称的4种方法在Linux中查找插入USB设备名称的4种方法Apr 27, 2025 pm 04:44 PM

对于新的Linux用户,识别连接的设备至关重要,尤其是USB驱动器。 本指南提供了几种命令行方法来确定USB设备的名称,这对于格式化等任务必不可少。 虽然USB驱动器经常自动安装(例如, /

如何在根(/)分区上修复'设备上没有剩余空间”如何在根(/)分区上修复'设备上没有剩余空间”Apr 27, 2025 pm 04:43 PM

Linux系统,特别是磁盘空间有限的系统,最常见的问题之一就是根分区(/)空间耗尽。 出现此问题时,您可能会遇到以下错误: No space left on device 别慌!这只是表示您的根目录(/ 分区)已满,这是一个常见问题,尤其是在磁盘空间有限的系统或全天候运行的服务器上。 发生这种情况时,您可能会遇到以下问题: 无法安装或升级软件包。 系统启动失败。 服务无法启动。 无法写入日志或临时文件。 本文将引导您完成识别问题、安全清理空间以及防止再次发生此问题的实用步骤。这些说明适用于初

2025年Linux的前16名记事本替代品2025年Linux的前16名记事本替代品Apr 27, 2025 pm 04:42 PM

本文探讨了Linux用户的一流记事本替代方案。 记事本虽然在Windows上很棒,但缺少Linux版本。 本指南提供了适合各种需求和偏好的各种选择。 最高记录的替代方案

如何在SystemD中创建和运行新服务单元如何在SystemD中创建和运行新服务单元Apr 27, 2025 pm 04:41 PM

几天前,我遇到了32位CentOS 8分布,并决定在较旧的32位系统上进行测试。 启动后,我发现了一个网络连接问题。连接将下降,每次重新启动后都需要手动修复。这个公关

如何在Linux的硬盘上检查不良扇区如何在Linux的硬盘上检查不良扇区Apr 27, 2025 pm 04:40 PM

让我们澄清什么构成不良扇区或不良区块:这是硬盘驱动器或闪存的一部分,它变得不可读取或无法写入,这通常是由于对磁盘表面的物理损害或闪烁的闪存闪存晶体管。 累积

如何强制CP命令无需提示即可覆盖文件如何强制CP命令无需提示即可覆盖文件Apr 27, 2025 pm 04:39 PM

CP命令(“复制”)是Linux和其他类似Unix的系统的基本工具,用于复制文件和目录。 虽然对本地文件传输有效,但对于基于网络的副本,SCP(安全副本)是首选的

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器