头图

Nginx 是一款开源的高性能 Web 服务器,同时支持反向代理和邮件代理功能,采用 BSD 许可协议分发。其核心优势在于内存占用少和高并发处理能力,能有效支撑大流量应用场景。本文将系统介绍Nginx服务器10项关键配置优化。

Nginx结构

一、基础安全策略

1. 版本升级

# 查看当前版本(安全加固起点)
nginx -v

# 源码编译升级(推荐)
wget https://nginx.org/download/nginx-1.25.3.tar.gz
tar zxvf nginx-1.25.3.tar.gz
cd nginx-1.25.3

# 精简模块示例(禁用非必要功能)
./configure --without-http_autoindex_module  # 关闭目录列表
make && sudo make install

注意:

  • 生产环境禁用--without-http_empty_gif_module等非核心模块
  • 订阅Nginx安全通告

二、必须实施的5项防护配置

2. 隐藏服务器标识

# 在http块添加(全局生效)
http {
    server_tokens off;  # 禁止返回版本信息
}

3. 拦截恶意爬虫

# /etc/nginx/block_bots.conf
map $http_user_agent $is_bot {
    default 0;
    "~*bot" 1;  # 匹配所有bot
    "~*scan" 1; # 匹配扫描器
}

# server块引用
server {
    if ($is_bot) { return 403; }
}

4. 限制HTTP方法

location / {
    # 只允许GET/POST/HEAD方法
    if ($request_method !~ ^(GET|POST|HEAD)$) {
        return 405;  # 更标准的Method Not Allowed
    }
}

5. 防缓冲区溢出攻击

http {
    client_body_buffer_size   16k;
    client_header_buffer_size 1k;
    client_max_body_size      10m;  # 根据业务调整
}

6. 连接数限制

http {
    # 每IP限制100连接
    limit_conn_zone $binary_remote_addr zone=conn_per_ip:10m;
    limit_conn conn_per_ip 100;
}

参考文章Nginx服务器10项安全加固配置指南


光明磊落的投影仪
6 声望0 粉丝