DDOS SIEGE TRÊN LINUX

giới thiệu công cụ Siege trên Linux

Trong một ngày đẹp trời và bạn chuẩn bị ra mắt một trang web mới do mình tự làm, nhưng lại không chắc chắn khi mang ra sử dụng thực tế thì nó sẽ chịu được tải và hiệu năng sẽ ra sao khi nhiều người dùng cùng truy cập ? Vậy ở bài này mình sẽ giới thiệu cho mọi người một công cụ mã nguồn mở phục vụ nhu cầu trên.
Siege là một công cụ miễn phí chạy trên linux giúp bạn giả lập nhiều kết nối http đến website mục tiêu mà bạn muốn kiểm tra hiệu năng và khả năng chịu tải. Siege hỗ trợ xác thực cơ bản, cookies, HTTP, HTTPS và FTP protocol.

Hướng dẫn sử dụng siege
Lệnh siege được sử dụng theo cú pháp:
siege [target_url]
[target_url] là url của website mục tiêu mà bạn muốn test thử
là các tham số tùy chọn giúp chạy siege theo ý muốn của bạn, bao gồm các tham số chính sau:
· -concurrent=NUM (viết tắt là –cNUM): là số kết nối đồng thời được giả lập.
· -time=NUMs (viết tắt là –tNUMs): là thời gian chạy kiểm tra.
Các tùy chọn:
-V, --version: Phiên bản của siege.
-h, --help: trợ giúp, đưa ra bản tóm tắt của tất cả các tùy chọn dòng lệnh.
-C, --config: hiển thị cấu hình hiện tạo trong file $HOME/.siegerc và cho phép chỉnh sửa cấu hình.
-v, --verbose: hiển thị trạng thái HTTP return và GET request.
-c NUM, --concurrent = NUM: Cho phép thiết lập số người dùng đồng thời kết nối tới mục tiêu.
-i, --internet: Tạo ra sự mô phỏng ngẫu nhiên bằng cách chọn ngẫu nhiên các url đọc từ tập tin urls.txt.
-r NUM: Cho phép bạn thiết lập số lần lặp lại mỗi khi hết thời gian chạy được người dùng quy định.
-d NUM, --delay=NUM: Chỉ ra thời gian delay của một lần kết nối. Thời gian delay là một số ngẫu nhiên trong khoảng từ 0 đến NUM.
-t NUMm: Quy định khoảng thời gian để chạy thử nghiệm.
-l [FILE], --log[=FILE]: Chính sách cho phép ghi log. Nếu cài mặc định thì file log sẽ được lưu ở SIEGE_HOME/var/siege.log. Nếu siege được cài /usr/local thì nó sẽ lưu file log tại /usr/local/var/siege.log.
-H HEADER, --header = HEADER: Cho phép bạn thêm các thông tin bổ sung vào header.
-A "User Agent": Sử dụng tùy chọn này để thiết lập User-Agent trong yêu cầu.
-f FILE, --file=FILE: Các tập tin Url mặc định là SIEGE_HOME / etc / urls.txt.

Ví dụ:
Ở đây giả sử có mục tiêu và ta sẽ thử giả lập 100 kết nối cùng lúc, chạy kiểm tra trong vòng 60s, thời gian delay giữa các kết nối là trong khoảng 0 đến 10s.


Mọi người có thể thấy tool đã đưa ra một số thông số đánh giá đối với mục tiêu sau khi đã hết thời gian request:




Ta thấy với thời gian thử nghiệm trong 60s, 100 kết nối đồng thời được gửi tới mục tiêu và thời gian đáp ứng trung bình của mục tiêu là 0,77s đối với mỗi yêu cầu. Không có lần kết nối nào thất bại, số liệu thống kê giao dịch dài nhất là 14,48.