结合应用安全聊聊你所理解的Nginx安全
题目解析:
近些年来,安全已成为企业越来越重视问题,而 HTTP、HTTPS 协议的攻击屡见,其种类包含:
● 暴力破解,这里主要对弱口令漏洞来进行攻击;
● HTTP 内容劫持;
● CSRF 跨站请求伪造;
● SQL 注入;
● XSS 跨站脚本攻击 等等。
而Nginx作为应用入口服务,该如何防范如上的这些攻击行为?
核心知识点:
第5章、Nginx架构篇,安全相关内容。
例:
暴力破解是指攻击者通过系统组合的所有可能性(网站登录时的账户、密码)尝试破解用户的账户名、密码等敏感信息。攻击者会经常使用自动化脚本或工具攻击,拿出正确的用户名和密码。通过Nginx可以来实现白名单控制,限流配置,如下:
limit_req_zone $binary_remote_addr zone=limiter:10m rate=20r/s;
server {
....
location /admin {
proxy_pass http://127.0.0.1:8080;
limit_req zone=limiter burst=1 nodelay;
}
location / {
proxy_pass http://127.0.0.1:9090;
}
}
配置是基于客户的原 IP 地址形式来进行限流,定义限制速率的大小 20s/个。客户端访问后台/admin 路径时,每秒最大只能允许 20 次单用户 IP 进行访问,如果超过会开启限频,从而实现不被频繁进行恶意访问。