当前位置: 首页 > news >正文

2.3.1 Nginx Web服务器安全加固

文章目录

  • 一、试题及考试说明
  • 二、操作步骤
    • 1. 启动Nginx服务
    • 2. 隐藏站点 Response Header 里的Web服务版本信息(见下总图)
    • 3. 隐藏站点 Response Header 里的X-Powered-By 字段(见下总图)
    • 4. Nginx访问日志存放位置修改为/opt/bak/access.log(见下总图)
    • 5. 屏蔽IP为192.168.X.X网段的访问请求(见下总图)
    • 6. 启用SSL/TLS,为站点配置HTTPS访问。假设SSL证书路径为/etc/nginx/ssl/site.crt,SSL私钥路径为/etc/nginx/ssl/site.key(见下总图)


一、试题及考试说明

Nginx是Centos上常用的web服务软件,为增强 Nginx Web 服务器的安全性,防止版本号、项目代码编写语言等信息泄露,需要对其进行安全管理,具体要求如下:

  1. 启动Nginx服务,确保NGINX服务能够在CentOS系统上正常启动并运行;
  2. 隐藏站点 Response Header 里的Web服务版本信息;
  3. 隐藏站点 Response Header 里的X-Powered-By 字段;
  4. Nginx访问日志存放位置修改为/opt/bak/access.log;
  5. 屏蔽IP为192.168.X.X网段的访问请求;
  6. 启用SSL/TLS,为站点配置HTTPS访问。假设SSL证书路径为/etc/nginx/ssl/site.crt,SSL私钥路径为/etc/nginx/ssl/site.key;
    完成所有配置后,提交NGINX配置文件nginx.conf。

二、操作步骤

1. 启动Nginx服务

systemctl start nginx		// 开启nginx服务
systemctl enable nginx		// nginx服务开机自启动
systemctl status nginx		// nginx服务状态

在这里插入图片描述

一开始启动nginx服务失败,journalctl -xe命令查询,发现nginx服务的默认80端口被其它进程占用,故无法成功打开nginx服务。
解决方案:
① netstat -tulnp | grep ‘:80’ 命令,查找占用 80 端口的进程,发现是docker-proxy 进程占用了端口
② kill -9 6602,kill -9 6607杀死占用端口的进程,然后重新systemctl成功打开nginx服务(注意进程pid变化)
在这里插入图片描述

2. 隐藏站点 Response Header 里的Web服务版本信息(见下总图)

vim /etc/nginx/nginx.conf
server {......server_tokens off;......
}

3. 隐藏站点 Response Header 里的X-Powered-By 字段(见下总图)

vim /etc/nginx/nginx.conf
server {......more_set_headers 'Server: My-Server';more_clear_headers 'X-Powered-By';......
}

4. Nginx访问日志存放位置修改为/opt/bak/access.log(见下总图)

vim /etc/nginx/nginx.conf
server {......access_log /opt/bak/access.log;......
}

5. 屏蔽IP为192.168.X.X网段的访问请求(见下总图)

vim /etc/nginx/nginx.conf
server {......location / {deny 192.168.0.0/16; 	// 请根据实际情况修改掩码长度allow all;}......
}

6. 启用SSL/TLS,为站点配置HTTPS访问。假设SSL证书路径为/etc/nginx/ssl/site.crt,SSL私钥路径为/etc/nginx/ssl/site.key(见下总图)

server {listen 443 ssl;ssl_certificate "/etc/nginx/ssl/site.crt"; ssl_certificate_key "/etc/nginx/ssl/site.key";......
}

在这里插入图片描述


http://www.lryc.cn/news/578425.html

相关文章:

  • 基于Pandas和FineBI的昆明职位数据分析与可视化实现(四)- 职位数据可视化(FineBI)
  • 【开源项目】一款真正可修改视频MD5工具视频质量不损失
  • Python 数据分析:numpy,抽提,布尔索引2。
  • github代码中遇到的问题-解决方案
  • 【C++】备忘录模式
  • mini-electron使用方法
  • 时空数据挖掘五大革新方向详解篇!
  • 多探头分布式雷达测流系统解决方案概述
  • HakcMyVM-Arroutada
  • 软考中级【网络工程师】第6版教材 第1章 计算机网络概述
  • CompletableFuture源码分析
  • Android 网络全栈攻略(四)—— TCPIP 协议族与 HTTPS 协议
  • 计算机网络:【socket】【UDP】【地址转换函数】【TCP】
  • 基于Netty-WebSocket构建高性能实时通信服务
  • CloudBase AI ToolKit实战:从0到1开发一个智能医疗网站
  • ethtool -S dev 计数
  • Docker进阶命令与参数——AI教你学Docker
  • 内网和外网可以共享一台打印机吗?怎么设置实现跨网电脑远程连接打印
  • 【LlamaIndex核心组件指南 | Prompt篇】深度解析LlamaIndex提示模板的设计与实战
  • 原神八分屏角色展示页面(纯前端html,学习交流)
  • browser-tools-mcp + excel-mcp-server + cursor 实现读取网页信息自动写入Excel
  • 4D 毫米波雷达
  • 注意力得分矩阵求解例子
  • AR衍射光波导设计遇瓶颈,OAS 光学软件来破局
  • mac部署dify
  • SQL Server 进阶:递归 CTE+CASE WHEN 实现复杂树形统计(第二课)
  • 大模型-分布式论文一瞥
  • 安全左移(Shift Left Security):软件安全的演进之路
  • 51单片机制作万年历
  • 如何在电脑上完全抹去历史记录