Triển khai hệ thống thực tế

Một phần của tài liệu Xây dựng giải pháp chống tấn công từ chối dịch vụ trên tầng ứng dụng cho websites (Trang 41 - 44)

Hệ thống được triển khai dựa trên openresty bằng cách cấu hình openresty cho phù hợp với yêu cầu. Các files cấu hình và mã nguồn được thêm vào như sau:

nginx.conf: file cấu hình chung của openresty như khi request được cho phép thì sẽ chuyển đến đâu, cần tải các thành phần hay thư viện nào để chạy code.

captcha.html: file chứa phần mã để hiện captcha cho người dùng, có thể sửa đổi theo ý muốn.

init.lua: file mã nguồn chứa tất cả các tham số khởi tạo cũng như các function dùng chung cho toàn bộ hệ thống.

ecofair.lua: phần xử lý logic chính của hệ thống chứa gần như tất cả các module cũng như thể hiện logic như đã viết ở phần 2.1.2.

recaptcha.lua: xác thực captcha người dùng, tạo captcha khi thành công. File cấu hình của nginx như sau:

#user nobody; worker_processes 2; events { worker_connections 2048; } http { include mime.types; default_type application/octet-stream;

log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" '

'"$http_user_agent" "$http_x_forwarded_for"'; access_log logs/access.log main;

sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on;

#lua_code_cache off; # DEBUG only

# dùng cho phần limit request và quản lý xác thực. lua_shared_dict ecofair_limit_req 100m; lua_shared_dict ecofair_accesslist 50m; lua_package_cpath "/usr/local/lib/lua/5.1/?.so;/usr/local/lib/lua/5.1/socket/?.so;/usr/local/lib/lua/5.1/mi me/?.so;;"; lua_package_path "/usr/local/share/lua/5.1/ssl/?.lua;/usr/local/share/lua/5.1/?.lua;/ecofair/lua-resty- cookie/lib/?.lua;/ecofair/lua-resty-string/lib/?.lua;/ecofair/lua-resty-limit- traffic/lib/?.lua; /ecofair/lua-resty-iputils/lib/?.lua;;"; init_by_lua_file '/ecofair/init.lua'; server { listen 80; server_name localhost; 34

#charset koi8-r;

location /cgi-bin/ecofair-captcha { default_type 'text/html';

access_by_lua_file '/ecofair/recaptcha.lua'; }

#access_log logs/host.access.log main; location / {

default_type 'text/html';

access_by_lua_file '/ecofair/ecofair.lua';

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host;

proxy_pass http://websiteip; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }

Các thành phần code của các file lua đã được trình bày ở các phần trên.

CHƯƠNG 3: TRIỂN KHAI, THỬ NGHIỆM HỆ THỐNG.

Một phần của tài liệu Xây dựng giải pháp chống tấn công từ chối dịch vụ trên tầng ứng dụng cho websites (Trang 41 - 44)

Tải bản đầy đủ (PDF)

(60 trang)