Mango Shield(mango-waf):高性能 L7 DDoS 防御と WAF
概要
Mango Shield(mango-waf)は、Layer 7(HTTP/HTTPS)レイヤの DDoS 攻撃と一般的なウェブ攻撃を検出・防御する自己ホスト型のソリューションです。Go 言語で実装されており、複数ドメインを同時に保護できる設計、リアルタイムの DStat ダッシュボードによる可視化、CLI と API による運用管理、GeoLite2 による地理情報ベースの制御などが特徴です。VPS 上での一括導入手順が README に詳述されており、Docker イメージや設定ファイルを用いることで比較的簡単に試験・本番運用へ移行できます。
リポジトリの統計情報
- スター数: 50
- フォーク数: 15
- ウォッチャー数: 50
- コミット数: 7
- ファイル数: 26
- メインの言語: Go
主な特徴
- Layer 7(HTTP/HTTPS)に特化した高性能な DDoS 防御と WAF 機能を提供
- 複数ドメインの同時保護とドメイン単位の設定管理をサポート
- リアルタイム DStat ダッシュボードでトラフィックや攻撃状況を可視化
- CLI と API による運用管理、GeoLite2 による地理情報ベースの制御
技術的なポイント
Mango Shield は Go で書かれており、シングルバイナリで稼働させやすい設計が想定されます。README に「Cài đặt từ đầu (VPS mới)」「Cấu hình nhiều domain」「Các chế độ bảo vệ」「Quản lý bằng CLI」「Dashboard」「API Endpoints」などの項目が並んでいることから、一般的な自己ホスト型 WAF/DDoS 製品と同様に以下の要素で構成されていると読み取れます。
- アーキテクチャ:HTTP レイヤでのリクエスト検査パイプラインを持ち、IP やヘッダ、URI、レート(リクエスト/秒)など複数の指標で判定を行うことで L7 攻撃を緩和する設計と推察されます。Go の並列性(goroutine, channel等)を活用することで高スループットを目指している点が特徴です。
- GeoIP 制御:GeoLite2-City.mmdb を同梱しており、国・地域ベースでのアクセス制御やルール適用が可能です。ボットや攻撃元の地理的分布分析に利用できます。
- 管理・可視化:リアルタイム DStat ダッシュボードは、接続数・レート・ブロック数などのメトリクスを可視化し、運用者が即時対応できるようにします。さらに CLI と公開 API により自動化や他システムとの連携(例:CDN、ロードバランサ、SIEM)を想定した運用ができます。
- デプロイ:Dockerfile を含み、コンテナ化して簡易に配備できる一方、README は「VPS 新規導入」手順も明記しており、コンテナ非依存でのインストールもサポートしていることが伺えます。
- 拡張性とルール管理:複数ドメインを扱う仕様から、ドメインごとにルールセット・閾値・保護モード(監視/防御/チャレンジ等)を切り替えられる柔軟性が期待できます。API による動的ルール追加やブラックリスト/ホワイトリストの管理も可能と考えられます。
実装面では Go のエコシステム(net/http、TLS、JSON/HTTP API、バイナリ配布)を活用しており、低レイテンシでの処理やシンプルなデプロイ性がメリットです。一方、L7 防御は誤検知のリスクがあるため、ダッシュボードやログ、リプレイ機能によるチューニング・検証フローが重要になります。GeoIP データは定期更新が必要で、MMDB の更新手順を運用に組み込む点にも注意が必要です。
(技術的なポイントは上記の README と同梱ファイルから推察した実装方針と運用上の留意点をまとめています。)
プロジェクトの構成
主要なファイルとディレクトリ:
- .gitignore: file
- Dockerfile: file
- GeoLite2-City.mmdb: file
- LICENSE: file
- README.md: file
…他 21 ファイル
補足:
- GeoLite2-City.mmdb が含まれていることから GeoIP ベースのルール適用が可能
- Dockerfile によりコンテナ化した運用が可能で、VPS 手動導入手順も README に記載
- README に「API Endpoints」「Dashboard」「CLI」等の説明があり、運用性を重視した設計
まとめ
自己ホストで柔軟に運用できる L7 DDoS 対応 WAF。中小規模の VPS 運用に適した選択肢。
リポジトリ情報:
- 名前: mango-waf
- 説明: 🥭 Mango Shield Apex: High-performance L7 DDoS Protection & WAF with Real-time DStat Dashboard
- スター数: 50
- 言語: Go
- URL: https://github.com/hoangtuvungcao/mango-waf
- オーナー: hoangtuvungcao
- アバター: https://avatars.githubusercontent.com/u/206301327?v=4
READMEの抜粋:
🥭 Mango Shield v2.0
Hệ thống chống DDoS Layer 7 & WAF tự triển khai — Bảo vệ nhiều domain cùng lúc