高性能:事件驱动架构非阻塞I/O模型单线程处理数千并发连接高并发:轻量级进程模型高效的内存管理支持C10K问题解决方案低内存消耗:每个连接固定内存占用优化的缓冲区管理无额外进程开销反向代理功能:七层负载均衡多种负载均衡算法后端服务器健康检查负载均衡:轮询/加权轮询IP哈希/最小连接自定义负载策略热部署:不中断服务升级平滑重新加载配置动态模块加载高可靠性:主从进程模型自动故障转移完善的错误处理配置灵
反向代理参数:proxy_pass示例:负载均衡参数:upstream示例:静态文件服务参数:root, index示例:SSL/TLS加密参数:ssl_certificate, ssl_certificate_key示例:虚拟主机参数:server_name示例:URL重写参数:rewrite示例:访问控制参数:allow, deny示例:Gzip压缩参数:gzip示例:缓存控制参数:proxy
Nginx基本介绍定义:高性能HTTP和反向代理服务器轻量级Web服务器事件驱动架构核心参数:2.1 全局块参数:worker_processes auto; # 工作进程数error_log /var/log/nginx/error.log; # 错误日志路径pid /run/nginx.pid; # 进程ID文件位置2.2 events块参数:worker_connections 1024;
隐藏Nginx版本信息修改nginx.conf,在http块中添加:限制HTTP请求方法只允许GET、POST、HEAD方法:禁用目录浏览在server块中添加:设置安全头部添加HTTP安全头部:限制客户端请求体大小防止大文件上传攻击:禁用不必要的HTTP方法在特定location禁用TRACE和DELETE:配置SSL/TLS安全推荐配置:限制访问频率防止暴力攻击:禁止访问敏感文件限制访问点文件
安装htpasswd工具(Apache工具包):Ubuntu/Debian: sudo apt-get install apache2-utilsCentOS/RHEL: sudo yum install httpd-tools创建密码文件:编辑Nginx配置文件(通常在/etc/nginx/sites-available/default或/etc/nginx/conf.d/default.con
获取SSL证书从CA机构购买或使用Let's Encrypt免费证书证书通常包含:证书文件(.crt)和私钥文件(.key)配置Nginx在nginx.conf或站点配置文件中添加:示例配置:强制HTTPS重定向(可选)验证配置并重启安全增强建议启用HSTS头:add_header Strict-Transport-Security "max-age=630720
限制连接数原理使用limit_conn_module模块限制单个IP的并发连接数通过limit_req_module模块限制请求速率配置步骤关键参数说明limit_conn_zone: 定义连接限制的共享内存区域zone=name:size: 区域名称和内存大小$binary_remote_addr: 以二进制格式存储客户端IPrate=10r/s: 每秒允许10个请求burst: 允许的突发请求
识别攻击类型DDoS攻击:检查异常流量模式CC攻击:分析高频请求IP恶意爬虫:识别异常User-Agent漏洞利用:监控异常请求路径紧急处理措施启用nginx限速配置:封禁恶意IP:启用WAF规则:日志分析实时监控error.log:统计恶意请求:防御配置示例限制连接数:防止慢速攻击:后续防护启用HTTPS加密定期更新nginx版本配置自动封禁脚本启用fail2ban服务恢复流程逐步解除IP封禁监
自动化安全检测Nginx工具 Nginx Amplify功能:监控Nginx性能、安全配置分析、漏洞检测。示例:自动扫描server块中的不安全指令(如过时的SSL协议)。Lynis功能:Linux系统审计工具,包含Nginx配置检查模块。示例:检测nginx.conf中client_header_buffer_size是否过小。Gixy功能:专用于Nginx配置的静态分析工具。示例:识别add_
监控日志异常检查access.log中频繁出现的相同IP观察error.log中大量4xx/5xx错误识别异常User-Agent或请求路径常见攻击特征识别CC攻击:高频请求相同URLDDoS:异常流量激增SQL注入:URL包含特殊字符目录遍历:请求包含../等路径快速响应措施临时封禁IP:nginx.conf添加 deny 1.2.3.4;限制请求频率:limit_req_zone $binar