Mọi thứ hoạt động bình thường đến khi có chuyện xảy ra.
Edge Guardian đọc log của bạn để làm hai việc: chặn traffic xấu — scanner, brute‑force, khai thác — ngay tại tường lửa, và theo dõi sức khỏe từng site (5xx, độ trễ, lưu lượng), cảnh báo ngay khi có gì xuống cấp. Dashboard miễn phí. Một binary tĩnh. Cài bằng một dòng.
Mọi server công khai đều bị tấn công liên tục.
Vừa có IP là bot bắt đầu dò — tìm trang admin bị bỏ quên, secret rò rỉ và mật khẩu SSH yếu. Các công cụ chống lại đều bắt bạn chọn giữa quá rườm rà và quá nặng.
fail2ban
Nhẹ và đã được kiểm chứng — nhưng chỉ thấy một host, phụ thuộc nặng vào luật regex, và trở nên vướng víu ngay khi bạn có nhiều hơn một máy. Không có dashboard.
CrowdSec
Mạnh, có blocklist cộng đồng — nhưng bạn phải học agent, local API, bouncer và collection. Còn cái console đẹp đẽ? Đó là phần trả phí.
Hai việc, từ một luồng đọc log.
Cùng một luồng bắt kẻ tấn công và cho bạn biết khi một site gặp sự cố. Chặn traffic xấu, và biết ngay khoảnh khắc có gì hỏng — không cần công cụ thứ hai, database hay agent.
Chặn traffic xấu.
Scanner, brute‑force, dò khai thác và flood — đối chiếu với cửa sổ trượt rồi drop ngay ở kernel qua nftables. Tái phạm bị phạt nặng dần.
- Scanner HTTP, brute‑force SSH, chữ ký khai thác, bad bot, lạm‑dụng tần suất, quét cổng & honeypot
- Chặn nftables tự‑hết hạn; phạt leo thang với kẻ tái phạm
- Nhập blocklist FireHOL & Spamhaus; allowlist CIDR để bạn không bao giờ tự‑khóa
- Chế độ dry‑run — phát hiện & cảnh báo mà không chặn, để bạn tin tưởng trước khi bật
Thấy khi một site hỏng.
Cùng access log đó nuôi một bảng sức khỏe: tỷ lệ lỗi, độ trễ và lưu lượng theo từng‑site. Cảnh báo khi site xuống cấp hoặc sập — và báo lại khi hồi phục.
- Tỷ lệ 5xx, độ trễ p95 & tần suất request theo từng site, trên trang
/sites - Cảnh báo xuống cấp / sập / hồi phục kèm sustained + cooldown — không spam
- Dashboard nhúng miễn phí: dải Sentinel, sổ ban, feed trực tiếp
- Trả lời “có gì sai không?” — không bao giờ “ai đang xem gì” (không phải analytics)
Đủ để thực sự vận hành một server.
Đường dẫn scanner
Regex trên URI request — các cú dò .php/.env/wp‑login mà một stack sạch không bao giờ phục vụ. Chặn ngay từ lần đầu.
Brute‑force
Đếm lần đăng nhập thất bại từ auth.log / journald. Chống chèn để một username dàn dựng không thể đổ tội cho IP vô can.
Chữ ký tấn công
SQLi, path traversal, dò RCE & Log4Shell trong URI. Mặc định tắt, neo chặt để giữ false positive gần như bằng không.
Bad‑bot UA
Chặn các user‑agent scanner đã biết — sqlmap, nikto, nuclei, masscan, wpscan — vốn chẳng có lý do chính đáng nào gọi tới bạn.
Lạm dụng tần suất
Đếm mọi request theo IP và chặn kiểu flood DoS‑lite. Ngưỡng‑cao và biết allowlist nên client thật vẫn qua.
Quét cổng
Đếm số cổng đích khác nhau theo IP qua log nftables. Dồn một cổng không phải quét; quét nhiều cổng mới là.
Cổng mồi
Chạm vào cổng mồi là bị chặn ngay. Tín hiệu chất lượng cao nhất — không có lý do hợp lệ nào để gõ cửa.
Site healthnew
Tỷ lệ 5xx, độ trễ p95 & tần suất request theo từng‑site — các site được phát hiện từ nginx -T. Cảnh báo khi xuống cấp / sập / hồi phục, kèm trang /sites.
nftables bansescalating
Drop ngay ở kernel qua set có timeout. Tái phạm bị phạt nặng hơn: một ngày, một tuần, một tháng, vĩnh viễn.
Blocklist công khai
Nhập FireHOL & Spamhaus DROP vào một interval set của nftables — chặn các dải xấu‑đã‑biết trước cả khi chúng chạm tới bạn.
Telegram & Email
Thời gian thực cho mọi lần chặn và mọi cảnh báo sức khỏe, tới tất cả kênh cùng lúc. Email qua Resend. Quốc gia & ASN khi bật GeoIP.
GeoIP ngoại tuyến
Quốc gia, vùng & ISP từ file MMDB cục bộ — chạy với bộ dữ liệu sapics miễn phí, không cần tài khoản MaxMind.
Allowlist & dry‑run
Allowlist CIDR cho văn phòng, VPN & giám sát của bạn. Dry‑run để quan sát vài ngày trước khi bật chặn thật.
Error lognew
Mọi request 4xx/5xx ở một nơi — host, đường dẫn, status, IP, user‑agent và nguồn GeoIP — lọc và phân trang trên trang /errors.
Auto‑updatenew
Một systemd timer tùy chọn giữ binary luôn mới từ GitHub releases — chỉ‑binary, restart an toàn. Mặc định tắt.
Một luồng đọc. Hai nhánh.
Mỗi dòng tỏa ra hai lần: nhánh bảo mật khớp traffic xấu rồi chặn; nhánh sức khỏe đếm status, độ trễ và tần suất theo từng‑site, cảnh báo khi có sự cố. Thêm một detector chỉ là một parser và một ngưỡng — không bao giờ phải viết lại.
Đọc log
Log nginx, sshd & kernel — đọc một lần, tỏa ra cả hai nhánh.
Phát hiện
Phân tích IP nguồn, đối chiếu với cửa sổ trượt + ngưỡng.
Allowlist?
Các dải CIDR của bạn không bao giờ bị động tới. Tuyến phòng thủ cuối chống tự‑khóa.
Chặn
Thêm vào set nftables kèm timeout. Drop trên mọi cổng, tức thì.
Thông báo
Cả lần chặn và cảnh báo sức khỏe — Telegram, email, feed dashboard & dải Sentinel.
Thấy ai đang tấn công bạn — và cái gì đang hỏng.
Một thiết bị đo điềm tĩnh, im lặng đến khi có chuyện. Khi dải Sentinel bật đỏ, hoặc một site chuyển xuống cấp, nó có nghĩa thật. Có sẵn trong binary miễn phí — không Grafana, không paywall.
Chạy và canh gác trong một phút.
Khởi động ở dry‑run, nên nó quan sát mà không chặn đến khi bạn sẵn sàng. Rồi đổi một dòng.
Một dòng
Nhận diện kiến trúc, cài binary + systemd unit, và khởi tạo nftables.
# Linux, needs nftables + root curl -fsSL https://raw.githubusercontent.com/sondt/edge-guardian/main/install.sh \ | sudo bash
.deb / .rpm
Gói native cho amd64 & arm64. Config là conffile — an toàn qua các lần nâng cấp.
# Debian / Ubuntu sudo apt install ./edge-guardian_0.4.4_linux_amd64.deb # RHEL / Rocky / Fedora sudo dnf install ./edge-guardian_0.4.4_linux_amd64.rpm
Docker
Bảo vệ tường lửa host qua network namespace của host.
docker run -d --name edge-guardian \ --network host --cap-add NET_ADMIN \ -v /etc/edge-guardian:/etc/edge-guardian \ ghcr.io/sondt/edge-guardian
So sánh thế nào.
| Edge Guardian | fail2ban | CrowdSec | |
|---|---|---|---|
| Single static binary | Yes | — | — |
| One‑line install | Yes | pkg | script + repo |
| Dashboard in the free tier | Yes | — | paid / DIY Grafana |
| HTTP + SSH + port‑scan + honeypot | Yes | via rules | scenarios |
| Exploit + bad‑bot + rate‑abuse | Yes | DIY rules | scenarios |
| Per‑site health monitoring | Yes | — | — |
| nftables‑native enforcement | Yes | backend | bouncer |
| Public blocklist import | Yes | — | community |
| No external service to run | Yes | Yes | local API |
Trả lời thẳng.
Edge Guardian là gì?
Edge Guardian là một người bảo vệ cạnh mã nguồn mở, miễn phí, một binary cho Linux. Từ một luồng đọc log, nó làm hai việc: bảo mật — phát hiện scanner, brute-force và khai thác, rồi chặn IP nguồn tại tường lửa nftables — và sức khỏe biên — theo dõi tỷ lệ 5xx, độ trễ và tần suất request của từng site, cảnh báo khi site xuống cấp hoặc sập. Nó cảnh báo qua Telegram hoặc email và đi kèm dashboard local tích hợp.
Edge Guardian khác fail2ban và CrowdSec ở điểm nào?
fail2ban nặng về regex, chỉ thấy một host và không có dashboard. CrowdSec mạnh nhưng cần agent, local API, bouncer và collection — còn dashboard là tính năng trả phí. Edge Guardian là một binary tĩnh duy nhất, cài một dòng, dashboard miễn phí kèm theo, và còn theo dõi sức khỏe site — không chỉ bảo mật.
Edge Guardian phát hiện những gì?
Đường dẫn scanner HTTP, brute-force SSH, chữ ký khai thác (SQLi, path traversal, dò RCE, Log4Shell), bad bot theo User-Agent (sqlmap, nikto, nuclei, masscan), flood lạm dụng tần suất / DoS-lite, quét cổng (số cổng đích khác nhau theo IP), và chạm cổng honeypot. Nó cũng có thể nhập blocklist công khai như FireHOL và Spamhaus.
Nó có theo dõi sức khỏe site, chứ không chỉ tấn công?
Có. Cùng access log đó nuôi một nhánh sức khỏe, tổng hợp phân bố status, tỷ lệ lỗi 5xx, tần suất request và độ trễ p95 theo từng site, và cảnh báo (kèm sustained + cooldown để tránh nhiễu) khi site xuống cấp hoặc sập — và báo lại khi hồi phục. Nó cố ý không làm web analytics: nó trả lời “có gì sai không?”, chứ không phải “ai đang xem gì?”.
Edge Guardian có miễn phí không?
Có. Edge Guardian miễn phí và mã nguồn mở theo giấy phép Apache-2.0 — gồm cả dashboard và phần theo dõi sức khỏe.
Edge Guardian cần gì để chạy?
Một server Linux có nftables (Debian 11+, Ubuntu 20.04+, RHEL 9+ hoặc tương đương) và quyền root hoặc CAP_NET_ADMIN. Không cần database, không agent, không dịch vụ ngoài.
Cài Edge Guardian thế nào?
Chạy trình cài một dòng (curl -fsSL .../install.sh | sudo bash), cài gói .deb hoặc .rpm, hoặc chạy image Docker. Edge Guardian khởi động ở chế độ dry-run nên nó quan sát và cảnh báo trước khi chặn.
Drop it on a box.
Forget about scanners.
Miễn phí, mã nguồn mở, và được làm ra để không vướng chân bạn đến khi thật sự có chuyện.