Nginx知识点总结

 1.Nginx限流

NGINX 提供的限流模块主要是通过过 ngx_http_limit_req_module 

和 ngx_http_limit_conn_module 模块来实现请求频率限制和连接数限制。

请求频率限流(Rate Limiting):使用 limit_req_zone 和 limit_req 指令来控制客户端请求的速率。

http {
    # 定义一个限流区域,key 是 $binary_remote_addr(客户端IP),申请内存空间大小为10MB,每秒允许10个请求
    limit_req_zone $binary_remote_addr zone=mylimit:10m rate=10r/s;
    server {
        listen 80;
        location / {
            # 应用限流规则,burst 表示突发请求数,nodelay 表示不延迟处理,直接拒绝超出阈值部分的请求
            limit_req zone=mylimit burst=20 nodelay;
            proxy_pass http://backend;
        }
    }
}

连接数限流(Concurrent Connections Limiting):使用 limit_conn_zone 和 limit_conn 来限制客户端的最大并发连接数。

http {
    # 定义连接限流区域,基于客户端 IP
    limit_conn_zone $binary_remote_addr zone=connlimit:10m;
    server {
        listen 80;
        location / {
            # 同一时间最多允许每个IP有10个并发连接
            limit_conn connlimit 10;
            proxy_pass http://backend;
        }
    }
}

2.Waf

WAF(Web Application Firewall,中文:Web 应用防火墙)是一种专门用于保护 Web 应用程序的安全防护系统。它通过检测和拦截恶意 HTTP 请求,防止常见的 Web 安全漏洞被攻击者利用。

WAF 会对每一个进入的 HTTP 请求进行规则匹配,包括:URL、请求头(Headers)、请求体(Body)、Cookie、参数(Query String)。如果发现请求符合某个攻击特征或规则,则采取动作:阻断请求(Block)、记录日志(Log)、放行(Allow)、重定向(Redirect)。

WAF 主要用于防御以下类型的攻击:

1. SQL 注入(SQL Injection):请求参数直接作为SQL查询条件。

  • 攻击者通过构造恶意输入绕过数据库查询逻辑,获取或篡改数据库内容。
  • WAF 可识别并拦截包含 SQL 特征的请求。
-- 用户名:' OR '1'='1 密码:' OR '1'='1 解释:查询SQL时条件 =  '参数'
SELECT * FROM users WHERE username = '' OR '1'='1' AND password = '' OR '1'='1'
-- 这段 SQL 的逻辑就变了 —— 它不再是一个验证用户名和密码的过程,而变成了 1 = 1 一个永远为真的条件!

 解决办法2:占位符避免SQL注入。

2. 跨站脚本攻击(XSS)

  • 攻击者在网页中注入恶意脚本,当其他用户访问时执行,窃取 Cookie、会话信息等。
  • WAF 能识别并过滤掉包含 JavaScript、HTML 标签等危险内容的请求。

3. 跨站请求伪造(CSRF)

  • 利用用户已登录的身份,诱导其点击链接执行非预期的操作。
  • WAF 可检查 Referer 头、验证请求来源等方式进行防御。

4. 命令注入(Command Injection)

  • 攻击者尝试在参数中插入系统命令,如 ; rm -rf /,让服务器执行。
  • WAF 可识别并阻止这类非法字符或命令模式。

5. 文件包含漏洞(Local/Remote File Inclusion)

  • 攻击者试图读取服务器上的任意文件或远程资源。
  • WAF 可识别路径穿越(如 ../)或远程 URL 包含行为。

6. DDoS 攻击(部分场景)

  • 针对 HTTP 层的 DDoS 攻击(如 CC 攻击),WAF 可以结合限流机制限制单 IP 请求频率,缓解攻击影响。

7. 敏感信息泄露

  • 检测是否返回了敏感信息(如错误堆栈、数据库结构等),并可自动脱敏或阻断响应。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值