中间件-Nginx漏洞整改(限制IP访问隐藏nginx版本信息)

news2025/2/25 16:20:35

中间件-Nginx漏洞整改(限制IP访问&隐藏nginx版本信息)

  • 一、限制IP访问
    • 1.1 配置Nginx的ACL
    • 1.2 重载Nginx配置
    • 1.3 验证结果
  • 二、隐藏nginx版本信息
    • 2.1 打开Nginx配置文件
    • 2.2 隐藏Nginx版本信息
    • 2.3 保存并重新加载Nginx配置
    • 2.4 验证结果
    • 2.5 验证隐藏版本信息


💖The Begin💖点点关注,收藏不迷路💖

如何在Linux系统上使用Nginx配置IP访问限制,以增强服务器的安全性。我们将详细讨论如何设置Nginx的访问控制列表(ACL)来限制特定IP地址的访问。

一、限制IP访问

1.1 配置Nginx的ACL

在Nginx的配置文件中,我们可以使用allow和deny指令来设置IP访问限制。

打开Nginx的配置文件(通常是/usr/local/nginx/nginx.conf),在需要限制访问的位置块中添加以下配置:

location / {
    deny 192.168.1.1; #拒绝IP
    allow 192.168.1.100;  #允许IP 
    allow 10.0.0.0/24;  #允许IP 
    deny all; #拒绝其他所有IP 
}

上述配置将允许IP地址为192.168.1.100、10.0.0.0/24的客户端访问该位置,而拒绝192.168.1.1、其他所有客户端的访问。

注意:IP需要根据自己的应用场景,设置合适的IP地址。

1)设置了阻止访问网站或敏感目录的IP

2)设置了允许访问网站或敏感目录的IP

以上两个条件同时满足时合规,否则不合规。

1.2 重载Nginx配置

在修改完Nginx配置文件后,需要重新加载Nginx以使更改生效。可以使用以下命令重新加载Nginx配置:

cd 到nginx的sbin目录,执行

./nginx -s reload

1.3 验证结果

cat /usr/local/nginx/conf/nginx.conf |sed "/\s*#/d"|sed "/^\s*$/d"|egrep -i "allow|deny"

在这里插入图片描述

为了验证IP访问限制是否生效,可以尝试从不同IP地址的客户端访问设置了限制的位置。确保只有在允许的IP地址范围内的客户端才能成功访问,而其他客户端将被拒绝访问。

通过配置Nginx的ACL,可以轻松实现在Linux系统上限制特定IP地址的访问。这种访问控制可以帮助您增强服务器的安全性,防止未经授权的访问。

二、隐藏nginx版本信息

修改Nginx配置文件以隐藏版本信息,从而减少暴露服务器的潜在风险。

2.1 打开Nginx配置文件

首先,打开Nginx的配置文件(通常是/usr/local/nginx/nginx.conf)

2.2 隐藏Nginx版本信息

1、在Nginx配置文件中,找到或添加以下配置项:

server_tokens off;

存在以上配置则合规,否则不合规。

将server_tokens设置为off可以隐藏Nginx版本信息。这样,当客户端发送请求时,服务器将不会在响应头中包含Nginx的版本信息。

2、修改nginx解压缩路径ngx_http_header_filter_module.c文件

可使用

 find / -name ngx_http_header_filter_module.c

进行检索。

(/home/user/nginx-1.23.1/src/http/ngx_http_header_filter_module.c)文件的第48和49行内容,自定义头信息:

static char ngx_http_server_string[] = “Server:XXXXX” CRLF; 
static char ngx_http_server_full_string[] = “Server:XXXXX” CRLF; 

ngx_http_header_filter_module.c文件是Nginx中的一个模块,主要负责过滤和修改HTTP响应头。在Nginx中,HTTP响应头包含了服务器发送给客户端的元数据信息,如Content-Type、Content-Length等。

通过这个模块,可以在发送HTTP响应之前对响应头进行操作,比如添加、修改或删除特定的响应头字段。

ngx_http_header_filter_module.c文件的作用是允许开发者在Nginx中对HTTP响应头进行定制化操作,以满足特定的需求或增强服务器的功能。

2.3 保存并重新加载Nginx配置

保存对Nginx配置文件的更改,并使用以下命令重新加载Nginx配置:

cd 到nginx的sbin目录,执行

./nginx -s reload

2.4 验证结果

cat /usr/local/nginx/conf/nginx.conf |sed "/\s*#/d"|sed "/^\s*$/d"|grep -i "server_tokens"

在这里插入图片描述

2.5 验证隐藏版本信息

为了验证Nginx版本信息是否已成功隐藏,您可以使用浏览器或命令行工具发送请求到您的Nginx服务器,并检查响应头中是否包含Nginx版本信息。

可以看到,Nginx版本信息已经隐藏。

在这里插入图片描述

在这里插入图片描述


💖The End💖点点关注,收藏不迷路💖

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1474460.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode刷题---查询结果的质量和占比

思路&#xff1a; 首先按照query_name进行分组操作 对组内的rating/position的值求平均值得到quality 对组内的rating的值使用IF函数进行判断&#xff0c;如果rating<3则将其标识为1&#xff0c;如果rating>3,则将其标识为0&#xff0c;通过次方法可以找出组内rating的值…

MNIST数据集下载(自动下载)

&#x1f4da;**MNIST数据集下载(自动下载)**&#x1f4da; &#x1f308; 个人主页&#xff1a;高斯小哥 &#x1f525; 高质量专栏&#xff1a;Matplotlib之旅&#xff1a;零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程 &#x1f448; 希望得到您的…

微信小程序的医院体检预约管理系统springboot+uniapp+python

本系统设计的目的是建立一个简化信息管理工作、便于操作的体检导引平台。共有以下四个模块&#xff1a; uni-app框架&#xff1a;使用Vue.js开发跨平台应用的前端框架&#xff0c;编写一套代码&#xff0c;可编译到Android、小程序等平台。 语言&#xff1a;pythonjavanode.js…

【UE 材质】冰冻效果

效果 步骤 1. 打开“Quixel Bridge” 下载冰的纹理 2. 新建一个材质&#xff0c;这里命名为“M_Frozen” 打开“M_Frozen”&#xff0c;添加如下节点&#xff0c;此时我们可以通过控制参数“偏移”来改变边界的偏移 此时预览效果如下 如果增加参数“偏移”的默认值效果如下 3.…

在 Android 运行 GNU/Linux 二进制程序 (proot)

在 GNU/Linux 系统上运行 Android 应用比较容易 (比如 waydroid), 但是反过来就很麻烦了. Android 虽然也使用 Linux 内核 (kernel), 但是系统环境和一般的 GNU/Linux 系统 (比如 ArchLinux, Debian, Ubuntu, Fedora, NixOS 等) 具有不可忽略的显著差异, 所以为 GNU/Linux 编译…

泽攸科技JS系列高精度台阶仪在半导体领域的应用

泽攸科技JS系列高精度台阶仪是一款先进的自主研发的国产台阶仪&#xff0c;采用了先进的扫描探针技术。通过扫描探针在样品表面上进行微观测量&#xff0c;台阶仪能够准确获取表面形貌信息。其工作原理基于探针与样品表面的相互作用力&#xff0c;通过测量探针的微小位移&#…

[论文笔记] Mistral论文解读

https://arxiv.org/pdf/2310.06825.pdf GQA: 1、加快推理速度 2、减小内存需求 3、允许更大的batch 4、更高的吞吐量 SWA&#xff1a; 1、较低的计算成本 更有效的处理 较长的序列。 2、感受野更符合常理。不再是全局感受野&#xff0c;而是只和前4096个进行语义融合。…

AI入门系列——数据分析(待续)

我们首先要对人工智能领域有个宽泛的了解&#xff0c;有自己的全局性的认识&#xff0c;产生一些判断&#xff0c;才不会人云亦云地因为“薪资高、压力大”等去做出选择或者放弃。再者你做的准备调研越多&#xff0c;确认方向后越不容易放弃&#xff08;等门槛效应&#xff09;…

智能手表的革命性突破:TRIZ理论引领未来穿戴技术!

在科技日新月异的今天&#xff0c;智能手表已经从单纯的计时工具转变为集健康监测、信息通讯、娱乐休闲等多功能于一体的智能穿戴设备。而基于TRIZ理论的智能手表更是在这一变革中扮演着引领者的角色。TRIZ&#xff0c;即发明问题解决理论&#xff0c;是一套系统的创新方法学&a…

FullCalendar日历组件:进行任务增删改,参考gitee例子修改

效果 参考路径 zxj/FullCalendar开发示例 - 码云 - 开源中国 (gitee.com) 代码 主页面&#xff1a;index.php <?php ob_start(); include(includes/session.inc); ?> <!DOCTYPE html> <html><head><title>日程管理</title><meta …

阿里云-系统盘-磁盘扩容

阿里云系统磁盘扩容 之前是测试环境磁盘用的默认的有 40G&#xff0c;后面升级到正式的 磁盘怕不够用打算升级到 100G&#xff0c; 系统镜像&#xff1a; Alibaba Cloud Linux 3.2104 LTS 64 位 磁盘 ESSD 40G 升级步骤&#xff1a; 扩容与创建快照 在阿里云后台首先去扩容…

Stable Diffusion 模型分享:PicX_real(真实照片)

本文收录于《AI绘画从入门到精通》专栏&#xff0c;专栏总目录&#xff1a;点这里。 文章目录 模型介绍生成案例案例一案例二案例三案例四案例五案例六案例七案例八 下载地址 模型介绍 作者述&#xff1a;这个模型比“超真实”模型更加多样化&#xff0c;不那么乏味粗糙&#…

搭建Facebook直播网络对IP有要求吗?

在当今数字化时代&#xff0c;Facebook直播已经成为了一种极具吸引力的社交形式&#xff0c;为个人和企业提供了与观众直接互动的机会&#xff0c;成为推广产品、分享经验、建立品牌形象的重要途径。然而&#xff0c;对于许多人来说&#xff0c;搭建一个稳定、高质量的Facebook…

vue3 + vite + ts 中使用less文件全局变量

文章目录 安装依赖新建css变量文件全局引入css变量文件使用css变量 一、安装依赖 npm install less less-loader --save-dev 二、新建CSS变量文件 (1) :在根目录下的src文件中 src-> asset -> css ->glibal.less // glibal.less :root{--public_background_font_Col…

vue3第三节(v-model 执行原理)

特殊说明&#xff1a; 以下vue3语法是基于 3.4之前版本进行使用的&#xff0c;3.4之后的版本 引入了 defineModel 宏&#xff0c;后续会介绍defineModel 1、vue3 与vue2 中v-model区别 vue3 中v-model绑定的不再是value&#xff0c;而是modelValue&#xff0c;接收的方法也不再…

MySQL之中位数

什么是中位数 一串数字&#xff0c;按从小到大排列&#xff0c;当总数是奇数时&#xff0c;取最中间的数&#xff1b;当总数是偶数时&#xff0c;取最中间两个数的平均数。 解决思路 按定义来&#xff0c;先排列&#xff0c;找出最中间的数&#xff0c;再取平均值。 准备表…

《TCP/IP详解 卷一》第8章 ICMPv4和ICMPv6

目录 8.1 引言 8.1.1 在IPv4和IPv6中的封装 8.2 ICMP 报文 8.2.1 ICMPv4 报文 8.2.2 ICMPv6 报文 8.2.3 处理ICMP报文 8.3 ICMP差错报文 8.3.1 扩展的ICMP和多部报文 8.3.2 目的不可达和数据包太大 8.3.3 重定向 8.3.4 ICMP 超时 8.3.5 参数问题 8.4 ICMP查询/信息…

C++ //练习 9.16 重写上一题的程序,比较一个list<int>中的元素和一个vector<int>中的元素。

C Primer&#xff08;第5版&#xff09; 练习 9.16 练习 9.16 重写上一题的程序&#xff0c;比较一个list中的元素和一个vector中的元素。 环境&#xff1a;Linux Ubuntu&#xff08;云服务器&#xff09; 工具&#xff1a;vim 代码块 /**********************************…

Stable Diffusion 模型分享:【Checkpoint】YesMix(动漫、2.5D)

本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里。 文章目录 模型介绍生成案例案例一案例二案例三案例四下载地址模型介绍 条目内容类型大模型基础模型SD 1.5来源

一文讲清DTO、BO、PO、VO

DTO、BO、PO、VO是什么&#xff1f; 在后端开发中&#xff0c;比如传统的MVC架构和现在流行的DDD架构&#xff0c;经常会使用到下列几种对象的概念 DTO (Data Transfer Object) 数据传输对象&#xff1a; DTO设计模式用于将数据从服务端传输到客户端&#xff0c;或者在不同的…