本文主要和介绍lua+Nginx下如何快速有效得防御CC攻击。至于如何安装Nginx就不详细介绍了,闲话少说,大家请看示例,希望能帮助到大家。

使用Nginx的配置对cc攻击进行简单防御

===================================================================

主要是通过nginx和lua来配合,达到防御的目的。

一、Nginx编译支持lua

------------------------------

1. 下载lua-nginx-module

wget https://github.com/openresty/lua-nginx-module/archive/master.zip

unzip master.zip

2. 编译

#./configure \

--user=nginx \

--group=nginx \

--prefix=/usr/local/gacp/nginx \

--error-log-path=/data/logs/nginx/error/error.log \

--http-log-path=/data/logs/nginx/access/access.log \

--pid-path=/usr/local/gacp/nginx/conf/nginx.pid \

--lock-path=/var/lock/nginx.lock \

--with-http_flv_module \

--with-http_stub_status_module \

--with-http_ssl_module \

--with-pcre \

--with-http_realip_module \

--with-http_gzip_static_module \

--with-google_perftools_module \

--with-file-aio \

--add-module=../ngx_cache_purge-2.3 \

--add-module=../lua-nginx-module-master

# make && make install

二、配置http {

.....

limit_req_zone $cookie_token zone=session_limit:3m rate=1r/s;

limit_req_zone $binary_remote_addr $uri zone=auth_limit:3m rate=1r/m;

}

server {

listen 80;

server_name localhost;

access_log /data/logs/nginx/access/localhost.access.log main;

error_log /data/logs/nginx/error/localhost.error.log;

charset utf-8;

client_max_body_size 75M;

root /data/www;

location / {

limit_req zone=session_limit burst=5;

rewrite_by_lua '

local random = ngx.var.cookie_random

if(random == nil) then

return ngx.redirect("/auth?url=" .. ngx.var.request_uri)

end

local token = ngx.md5("opencdn" .. ngx.var.remote_addr .. random)

if(ngx.var.cookie_token ~= token) then

return ngx.redirect("/auth?url=" .. ngx.var.request_uri)

end

';

}

location /auth {

limit_req zone=auth_limit burst=1;

if ($arg_url = "") {

return 403;

}

access_by_lua '

local random = math.random(9999)

local token = ngx.md5("opencdn" .. ngx.var.remote_addr .. random)

if(ngx.var.cookie_token ~= token) then

ngx.header["Set-Cookie"] = {"token=" .. token, "random=" .. random}

return ngx.redirect(ngx.var.arg_url)

end

';

}

}

是不是很简单呢。

html防cc代码,Nginx实现简单防御cc攻击方法相关推荐

  1. Nginx简单防御CC攻击的两种方法

    CC攻击可以归为DDoS攻击的一种.他们之间都原理都是一样的,即发送大量的请求数据来导致服务器拒绝服务,是一种连接攻击.CC攻击又可分为代理CC攻击,和肉鸡CC攻击.代理CC攻击是黑客借助代理服务器生 ...

  2. linux防网络攻击,让Linux系统有效防御ARP攻击

    [IT168 专稿]管理员用户登录,打开终端输入 1.#arp -a > /etc/ethers 将ip和mac地址导入ethers 2.#vi /etc/ethers 编辑文件格式,ether ...

  3. csrf攻击防御 php,Yii2.0防御csrf攻击方法

    yii2中无论是用测试工具POSTMAN.用命令行CURL请求.ajax请求总是会得到http400:Bad Request的错误:而如果用Web网页方式GET访问(去除verbFilter的POST ...

  4. 最常见DDOS攻击工具有哪些?怎么防御DDOS攻击?

    Botnets是由多个感染的计算机(称为"bots"或"zombies")组成的网络.这些感染的计算机受到攻击者的控制,可以同时发送大量的数据流量到目标网站,导 ...

  5. 服务器被cc攻击的简单防御策略(附代码)

    CC攻击(也称为网络层攻击或流量攻击)是指企图通过向网站或服务器发送大量伪造的请求,以干扰正常的用户访问的攻击.这些请求可能是来自单个设备的,也可能是来自一群被控制的设备的.为了防御CC攻击,你可以考 ...

  6. 使用Discuz!自带参数防御CC攻击以及原理,修改Discuz X 开启防CC攻击后,不影响搜索引擎收录的方法...

    这部份的工作,以前花的时间太少. 希望能产生一定的作用. http://www.nigesb.com/discuz-cc-attacker-defence.html http://bbs.zb7.co ...

  7. 防注入php 留言板代码,简单的 php 防注入代码

    简明现代魔法 -> PHP服务器脚本 -> 简单的 php 防注入代码 简单的 php 防注入代码 2010-04-10 介绍两种方法吧,首先请把以下代码保存为safe.php放在网站根目 ...

  8. nginx防护规则,拦截非法字符,防止SQL注入、防XSS,nginx过滤url访问,屏蔽垃圾蜘蛛,WordPress安全代码篇

    nginx防护规则,拦截非法字符,防止SQL注入.防XSS,nginx过滤url访问,屏蔽垃圾蜘蛛,WordPress安全代码篇 精心强化,小白一键复制 资源宝分享:www.httple.net 宝塔 ...

  9. 对kangle ep进行加固 安全防御 CC防御防注入防木马等操作

    一.禁止目录执行 先点击右边的请求控制 选择添加 目标 选择拒绝 俩个匹配模块 reg_path 分别写入 记得勾选 nc 详细和图片对比 .*//((attachment)|(attachments ...

最新文章

  1. linux用不用装固态硬盘驱动,固态硬盘要不要安装驱动?总算弄明白了
  2. No.7 nginx、nfs、集群
  3. log日志轮转--logrotate
  4. nodejs学习---1、命令行和环境变量
  5. 985程序员4年50万仍被二本学医亲戚酸:学会这3点,才能笑到最后
  6. 什么是堆?什么是方法区?JVM内存模型中堆与方法区的介绍
  7. 云计算学习一——网络基础
  8. 使用 Spring Boot 开发邮件系统
  9. html根据域名跳转不同页面,根据邮箱的域名跳转到相应的登录页面的代码
  10. 模块化机房建设指导书_模块化机房建设方案
  11. tespeed - 测试网速的Python工具
  12. 算法分析与设计实验报告——二分搜索算法的实现
  13. 利用MATLAB将图片转换成coe文件、TXT文件、mif文件、bin文件
  14. 2022年Spark基础学习笔记
  15. CMOS图像传感器中的噪声来源分析
  16. R语言查找data.frame里面是否包含某些变量。
  17. Android APP热更新中的插件化(Hook技术:反射或动态代理),Demo (2)
  18. mysql 两表拼接_数据库将两张表进行横向连接(拼接成一张表的形式显示)
  19. 城市轨道交通联锁试验方法介绍
  20. 一到秒杀就瘫痪?压测大师保你后台稳健

热门文章

  1. windows服务启动 1053错误
  2. 软件行业职位英文缩写介
  3. Cesium加载Json显隐控制
  4. 村田Murata电容学习笔记
  5. 视频编辑器-MovieMator 简洁使用-在时间线上拆分,修剪,连接剪辑
  6. 配置JDK / JAVA
  7. 外键 ‘FK__ICBCCard__CardID__3E1D39E1‘ 引用了位于被引用表 ‘StudentCard‘ 中的无效列 ‘CardID‘。
  8. elasticsearch的使用
  9. 达梦主备集群,主库部分redo被删除或损坏,故障恢复。
  10. 实现resolv.conf永久设置的方法