Chatbox

Các bạn vui lòng dùng từ ngữ lịch sự và có văn hóa,sử dụng Tiếng Việt có dấu chuẩn. Chúc các bạn vui vẻ!
01/12/2010 11:12 # 1
okmendtu
Cấp độ: 4 - Kỹ năng: 4

Kinh nghiệm: 38/40 (95%)
Kĩ năng: 12/40 (30%)
Ngày gia nhập: 21/01/2010
Bài gởi: 98
Được cảm ơn: 72
[Code] Chống Ddos ERC !


 Mã:
<?php
$ban = 1;
$clps = 3; // số click tối đa cho phép trong một giây

$in = $_SERVER['REMOTE_ADDR']." - ".time()."\n";
$log = fopen('erc.log','a');    fwrite($log, $in);    fclose($log);
$list = file('erc.log',FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
$last = count($list) - 1;

if($last > $clps) {
    if($list[$last - $clps] != $list[$last]) $ban = 0;
} else $ban = 0;

if($ban) {
    $in = "Deny from ".$_SERVER['REMOTE_ADDR']."\n";
    $lock = fopen('.htaccess','a');
    fwrite($lock, $in);    fclose($lock);
}

if($last > 15) unlink('erc.log');
$ban = 1;
?>
Save đoạn code sau thành file ddos.php
Đặt vào thư mục gốc của forum ... !
Đối với hầu hết các mã nguồn thì mở file global.php,chèn dưới đoạn 

Mã:
<?php
1 đoạn code include sau :
Mã:
include 'ddos.php';
File ddos.php với global.php phải nằm cùng nhau trong 1 folder,nếu ko thì phải edit 

Mã:
include 'pathfile/ddos.php';
Tạo file cron job như sau :

Mã:
<?php
$content = 'RewriteEngine On'."\n"; 
$content.= 'RewriteRule ^((urllist|sitemap_).*\.(xml|txt)(\.gz)?)$ vbseo_sitemap/vbseo_getsitemap.php?sitemap=$1 [L]'."\n"; 
$content.= 'RewriteCond %{QUERY_STRING} !vbseourl='."\n"; 
$content.= 'RewriteCond %{REQUEST_URI} !(admincp/|modcp/|chat|cron)'."\n"; 
$content.= 'RewriteRule ^(.*\.php(/.*)?)$ vbseo.php?vbseourl=$1 [L,QSA]'."\n"; 
$content.= 'RewriteCond %{REQUEST_FILENAME} !\.(jpg|gif)$'."\n"; 
$content.= 'RewriteRule ^(archive/.*)$ vbseo.php?vbseourl=$1 [L,QSA]'."\n"; 
$content.= 'RewriteCond %{REQUEST_FILENAME} !-f'."\n"; 
$content.= 'RewriteCond %{REQUEST_FILENAME} !-d'."\n"; 
$content.= 'RewriteCond %{REQUEST_FILENAME} !^(admincp|modcp|clientscript|cpstyles|images)/'."\n"; 
$content.= 'RewriteRule ^(.+)$ vbseo.php?vbseourl=$1 [L,QSA]'."\n"; 
$new = @fopen(DIR.'/.htaccess', 'w'); fwrite($new, $content); fclose($new);  
if(file_exists('erc.log')) unlink('erc.log');
?>
Save file đó thành erc_res.php
Đặt vô thư mục includes/cron (nếu forum xài vbb nên bỏ vào đây cho dễ quản lý),các mã nguồn khác tùy ý các bạn :

Lên thời gian biểu để Reset ERC :

cPanel Cron Jobs :


 


 


Vậy 10 phút clear một lần.

- ERC mặc định chặn IP nếu 5 lần nhanh và liên tiếp truy cập vào một URL. Để điều chỉnh sử thay giá trị của biến $n
- Phải chmod thư mục gốc của forum sao cho ERC có quyền write.
- File erc.log lưu trữ tạm thời các URI và được xoá sau khi đã phân tích xong.
- để hết ban ip thì vào forum xóa file .htaccess di la` xonmg

P/S : Muốn edit số click tối đa cho phép trong 1 giây ,sửa file ddos.php ở đoạn sau :


Mã:
$clps = 3; // số click tối đa cho phép trong một giây




Tình yêu là bát bún riêu....
Bao nhiêu sợi bún bấy nhiêu sợi tình.....


 


 
14/09/2011 16:09 # 2
phuongnll
Cấp độ: 6 - Kỹ năng: 3

Kinh nghiệm: 56/60 (93%)
Kĩ năng: 11/30 (37%)
Ngày gia nhập: 17/08/2011
Bài gởi: 206
Được cảm ơn: 41
Phản hồi: [Code] Chống Ddos ERC !


Xin lỗi vì đã đào mồ topic này lên, mình chỉ muốn update thêm cách chống DDOS - Botnet mà mình đã viết
http://diendan.seo.edu.vn/threads/369-Nhung-cach-ngan-chan-bao-ve-DDOS-BOTNET/?highlight=DDOS

Nếu các bạn quan tâm thì có thể thảo luận với mình.



 
24/09/2011 21:09 # 3
silverlight
Cấp độ: 2 - Kỹ năng: 1

Kinh nghiệm: 5/20 (25%)
Kĩ năng: 1/10 (10%)
Ngày gia nhập: 24/09/2011
Bài gởi: 15
Được cảm ơn: 1
Phản hồi: [Code] Chống Ddos ERC !


 Sao vày trang này nó bắt phải điền ID và pass thế mọi người?


 
Copyright© Đại học Duy Tân 2010 - 2021