0

0

在Linux和Unix上隐藏Nginx版本

WBOY

WBOY

发布时间:2024-02-09 19:50:29

|

791人浏览过

|

来源于良许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 版本:

飞蛙B2B2C商城电商系统
飞蛙B2B2C商城电商系统

飞蛙B2B2C(FeiWa B2B2C)商城系统是山东破浪网络科技有限公司于2017年最新推出的企业级B2B2C电商平台系统,采用PHP5+MySQL技术为基础,OOP(面向对象)方式进行核心框架搭建,结合MVC模式进行开发,可以支持Windows/Unix服务器环境,需PHP5.3及以上版本支持,可运行于包括Apache、IIS和Nginx在内的多种WEB服务器。飞蛙B2B2C(FeiWa B2

下载
在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版本是否公开。但是,我们不会通过发布版本号来给攻击者带来任何好处。

相关专题

更多
python开发工具
python开发工具

php中文网为大家提供各种python开发工具,好的开发工具,可帮助开发者攻克编程学习中的基础障碍,理解每一行源代码在程序执行时在计算机中的过程。php中文网还为大家带来python相关课程以及相关文章等内容,供大家免费下载使用。

715

2023.06.15

python打包成可执行文件
python打包成可执行文件

本专题为大家带来python打包成可执行文件相关的文章,大家可以免费的下载体验。

626

2023.07.20

python能做什么
python能做什么

python能做的有:可用于开发基于控制台的应用程序、多媒体部分开发、用于开发基于Web的应用程序、使用python处理数据、系统编程等等。本专题为大家提供python相关的各种文章、以及下载和课程。

739

2023.07.25

format在python中的用法
format在python中的用法

Python中的format是一种字符串格式化方法,用于将变量或值插入到字符串中的占位符位置。通过format方法,我们可以动态地构建字符串,使其包含不同值。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

617

2023.07.31

python教程
python教程

Python已成为一门网红语言,即使是在非编程开发者当中,也掀起了一股学习的热潮。本专题为大家带来python教程的相关文章,大家可以免费体验学习。

1235

2023.08.03

python环境变量的配置
python环境变量的配置

Python是一种流行的编程语言,被广泛用于软件开发、数据分析和科学计算等领域。在安装Python之后,我们需要配置环境变量,以便在任何位置都能够访问Python的可执行文件。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

547

2023.08.04

python eval
python eval

eval函数是Python中一个非常强大的函数,它可以将字符串作为Python代码进行执行,实现动态编程的效果。然而,由于其潜在的安全风险和性能问题,需要谨慎使用。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

575

2023.08.04

scratch和python区别
scratch和python区别

scratch和python的区别:1、scratch是一种专为初学者设计的图形化编程语言,python是一种文本编程语言;2、scratch使用的是基于积木的编程语法,python采用更加传统的文本编程语法等等。本专题为大家提供scratch和python相关的文章、下载、课程内容,供大家免费下载体验。

699

2023.08.11

php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

7

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 6.3万人学习

Git 教程
Git 教程

共21课时 | 2.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号