宝塔面板如何设置防cc攻击?cc攻击是攻击者借助代理服务器生成指向受害主机的合法请求,实现ddos和伪装。宝塔面板想要设置防CC攻击,可通过以下策略。
redis 验证码 策略 防CC
采用redis高性能数据库,合理的访问策略验证并在超大攻击时开启验证码访问。让网站远离CC
1.安装redis,在宝塔软件管理找到,安装;
2.安装php redis扩展,你用哪个php就安装哪个php的扩展,别装错了;
3.在网站入口,如Wordpress的index.php 头部加入如下代码:
header('Content-Type: text/html; charset=UTF-8'); //emlog原有代码,复制下列代码放在下面 //CC攻击停止后会尽快解除验证码,回到正常状态 //防CC配置$IPmax = 30; //开启验证码条件 值>=php最大进程数,适当设置更大会降低验证码触发条件,但会增大502错误几率(php挂起) $IPfor = 60; //周期 这个值基本不用动 $IPban = 60; //扔入黑名单 60秒内访问超过60次即拉黑IP $banTime = 3600*24; //黑名单时长 扔小黑屋时长,这种代理IP放一天感觉都少了 = =! $ip = ip(); //连接本地的 Redis 服务$redis = new Redis();$redis->connect('127.0.0.1', 6379); //拦截黑名单if($redis->exists($ip.'ban')){ exit('您被关进了小黑屋,黑白网丨HeiBai.Org');} //扔黑名单检测if($redis->get($ip.'ok') >= $IPban){ $redis->setex($ip.'ban', $banTime, '1');} if($redis->exists($ip.'ok')){ $redis->incrby($ip.'ok',1); //记录IP 自增1}else{ $redis->setex($ip.'ok',$IPfor,1);} //按需开启防CC 小黑屋IP不会触发该条件,所以当一段时间以后就会解除验证码。除非攻击者换一批代理继续攻击。如此往复if(count($redis->keys("*ok")) > $IPmax){ //验证 if($_COOKIE['key'] == ''){ if($_GET['cc']){ $key = md5($ip.$_GET['cc']); setcookie("key",$key); } } //拦截代码 if($_COOKIE['key'] && $_COOKIE['cc'] && $_COOKIE['key'] == md5($ip.$_COOKIE['cc'])){ //通过 }else{ if($_GET['cc']){ $key = md5($ip.$_GET['cc']); setcookie("key",$key); }else{ $cc = rand(1000,9999); setcookie("cc",$cc); //这里只是简单的构造了一下验证码,有能力可以自己更改的更安全和完美。 echo '<!DOCTYPE html> <html> <body> <form action="">请输入:'.$cc.' :<input type="text" name="cc" value=""><input type="submit" value="继续访问"></form> <p>访问异常,请输入验证码。</p> </body> </html>'; } exit(); }}function ip() { if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) { $ip = getenv('HTTP_CLIENT_IP'); } elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) { $ip = getenv('HTTP_X_FORWARDED_FOR'); } elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) { $ip = getenv('REMOTE_ADDR'); } elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) { $ip = $_SERVER['REMOTE_ADDR']; } $res = preg_match ( '/[d.]{7,15}/', $ip, $matches ) ? $matches [0] : ''; return $res;}
特网科技的云服务器提供预装好宝塔Linux面板的系统模板,可直接安装使用,十分方便。
购买特网科技云计算服务器可以自主选择是否开通CC防护功能。特网科技云主机租用智能、电信、香港高防线路均支持CC防护。支持CC攻击防护的云服务器产品链接 https://www.56dr.com/host/
免责声明:本站发布的内容(图片、视频和文字)以原创、来自本网站内容采集于网络互联网转载等其它媒体和分享为主,内容观点不代表本网站立场,如侵犯了原作者的版权,请告知一经查实,将立刻删除涉嫌侵权内容,联系我们QQ:712375056,同时欢迎投稿传递力量。
Copyright © 2009-2022 56dr.com. All Rights Reserved. 特网科技 特网云 版权所有 特网科技 粤ICP备16109289号
域名注册服务机构:阿里云计算有限公司(万网) 域名服务机构:烟台帝思普网络科技有限公司(DNSPod) CDN服务:阿里云计算有限公司 百度云 中国互联网举报中心 增值电信业务经营许可证B2
建议您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流浏览器浏览本网站