Skip to content
ეს გვერდი შეიქმნა და ითარგმნა ხელოვნური ინტელექტის დახმარებით. თუ შეამჩნევთ უზუსტობას, გთხოვთ, დაგვეხმარეთ გაუმჯობესებაში. GitHub-ზე რედაქტირება

ადმინ UI

PRX-WAF ბინარაში ჩასმულ Vue 3 + Tailwind CSS ადმინ-dashboard-ს შეიცავს. ის ჰოსტების, წესების, სერთიფიკატების, უსაფრთხოების მოვლენებისა და cluster-ის სტატუსის მართვის გრაფიკულ ინტერფეისს გვაძლევს.

ადმინ UI-ში შეხვედა

ადმინ UI API სერვერს კონფიგურირებულ მისამართზე ემსახურება:

http://localhost:9527

ნაგულისხმევი სერთიფიკატები: admin / admin

WARNING

ნაგულისხმევი პაროლი პირველი შესვლის შემდეგ დაუყოვნებლივ შეცვალე. წარმოებ-გარემოებისთვის TOTP ორ-ფაქტორიანი ავთენტიფიკაციის ჩართვა.

ავთენტიფიკაცია

ადმინ UI ავთენტიფიკაციის ორ მექანიზმს მხარს უჭერს:

მეთოდიაღწერა
JWT ტოკენი/api/auth/login-ის გავლით მოპოვებული, ბრაუზერის localStorage-ში შენახული
TOTP (სურვილისამებრ)ორ-ფაქტორიანი ავთენტიფიკაციისთვის დროზე-დაფუძნებული ერთ-ჯერადი პაროლი

შესვლის API

bash
curl -X POST http://localhost:9527/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username": "admin", "password": "admin"}'

პასუხი:

json
{
  "token": "eyJ...",
  "refresh_token": "..."
}

TOTP-ჩართული ანგარიშებისთვის totp_code ველის შეტანა:

json
{"username": "admin", "password": "admin", "totp_code": "123456"}

Dashboard-ის სექციები

ჰოსტები

დაცული დომენებისა და მათი upstream backend-ების მართვა:

  • ჰოსტების დამატება, რედაქტირება და წაშლა
  • WAF-ის დაცვის ჰოსტ-მიხედვით ჩართვა-გამორთვა
  • ჰოსტ-მიხედვით ტრაფიკ-სტატისტიკის ნახვა

წესები

ყველა წყაროდან გამოვლენის წესების მართვა:

  • OWASP CRS, ModSecurity, CVE და მომხმარებლის წესების ნახვა
  • ცალკეული წესების ჩართვა-გამორთვა
  • კატეგორიის, სიმძიმის და წყაროს მიხედვით ძებნა-ფილტრაცია
  • წესების იმპორტი და ექსპორტი

IP წესები

IP-ზე დაფუძნებული allow და block სიების მართვა:

  • IP მისამართების ან CIDR დიაპაზონების დამატება
  • allow/block ქმედებების დაყენება
  • აქტიური IP წესების ნახვა

URL წესები

URL-ზე დაფუძნებული გამოვლენის წესების მართვა:

  • URL შაბლონების regex-მხარდაჭერით დამატება
  • block/log/allow ქმედებების დაყენება

უსაფრთხოების მოვლენები

გამოვლენილი შეტევების ნახვა და ანალიზი:

  • რეალურ დროში მოვლენ-feed
  • ჰოსტის, შეტევ-ტიპის, წყაროს IP-ისა და დროის დიაპაზონის მიხედვით ფილტრაცია
  • მოვლენების JSON ან CSV-ად ექსპორტი

სტატისტიკა

ტრაფიკისა და უსაფრთხოების მეტრიკების ნახვა:

  • მოთხოვნა წამში
  • შეტევ-განაწილება ტიპის მიხედვით
  • ყველაზე შეტევილი ჰოსტები
  • ყველაზე წყარო IP-ები
  • პასუხ-კოდ-განაწილება

SSL სერთიფიკატები

TLS სერთიფიკატების მართვა:

  • აქტიური სერთიფიკატებისა და ვადის გასვლის თარიღების ნახვა
  • ხელით სერთიფიკატების ატვირთვა
  • Let's Encrypt-ის ავტო-განახლებ-სტატუსის მონიტორინგი

WASM Plugin-ები

WebAssembly plugin-ების მართვა:

  • ახალი plugin-ების ატვირთვა
  • ჩატვირთული plugin-ებისა და მათი სტატუსის ნახვა
  • plugin-ების ჩართვა-გამორთვა

Tunnels

Reverse tunnels-ის მართვა:

  • WebSocket-ზე დაფუძნებული tunnels-ის შექმნა და წაშლა
  • Tunnel-სტატუსისა და ტრაფიკის მონიტორინგი

CrowdSec

CrowdSec ინტეგრაციის სტატუსის ნახვა:

  • LAPI-ის აქტიური გადაწყვეტილებები
  • AppSec ინსპექტირების შედეგები
  • კავშირ-სტატუსი

შეტყობინებები

Alert-არხების კონფიგურაცია:

  • Email (SMTP)
  • Webhook
  • Telegram

რეალურ დროში მონიტორინგი

ადმინ UI WebSocket endpoint-ს (/ws/events) live უსაფრთხოების მოვლენ-სტრიმინგისთვის უკავშირდება. მოვლენები რეალურ დროში გამოჩნდება შეტევების გამოვლენისა და ბლოკვის მიხედვით.

WebSocket-ს პროგრამულადაც შეიძლება დაკავშირება:

javascript
const ws = new WebSocket("ws://localhost:9527/ws/events");
ws.onmessage = (event) => {
  const data = JSON.parse(event.data);
  console.log("Security event:", data);
};

უსაფრთხოების გამაგრება

ადმინ-წვდომის IP-ით შეზღუდვა

ადმინ UI-სა და API-ის წვდომის სანდო ქსელებამდე შეზღუდვა:

toml
[security]
admin_ip_allowlist = ["10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"]

Rate Limiting-ის ჩართვა

ადმინ API-ის brute-force შეტევებიდან დასაცავად:

toml
[security]
api_rate_limit_rps = 100

CORS-ის კონფიგურაცია

ადმინ API-ზე წვდომ-origin-ების შეზღუდვა:

toml
[security]
cors_origins = ["https://admin.example.com"]

ტექნოლოგიური სტეკი

კომპონენტიტექნოლოგია
FrontendVue 3 + Tailwind CSS
BuildVite
StatePinia
HTTP ClientAxios
ChartsChart.js
EmbeddingAxum-ის მიერ გაშვებული სტატიკური ფაილები

ადმინ UI-ის საწყისი კოდი საცავში web/admin-ui/-ში მდებარეობს.

შემდეგი ნაბიჯები

Released under the Apache-2.0 License.