AbuseBox
अपने उपयोगकर्ताओं से पहले जानें कि आपका मेल सर्वर ब्लैकलिस्ट में है।
आपके द्वारा चलाए जा रहे IPs और डोमेन के लिए सेल्फ-होस्टेड मॉनिटरिंग: 24 DNS ब्लैकलिस्ट, SSL और डोमेन एक्सपायरी, SPF/DKIM/DMARC और अपटाइम, कुछ बदलने पर अलर्ट के साथ।
वेबसाइट | क्विक स्टार्ट | चेंजलॉग


क्विक स्टार्ट
git clone https://github.com/bekkaze/abusebox.git && cd abusebox
docker compose up -d
http://localhost:3000 खोलें और docker compose exec backend cat /app/data/initial_admin_password से प्राप्त पासवर्ड के साथ admin के रूप में साइन इन करें, फिर Settings में इसे बदलें। अधिक विकल्प Installation के अंतर्गत।
AbuseBox क्यों
- परिणाम जिन पर आप भरोसा कर सकते हैं। किसी ब्लैकलिस्ट पर भरोसा करने से पहले, AbuseBox उसे उसके परीक्षण पतों (RFC 5782) के विरुद्ध जाँचता है। जो सूची आपके रिज़ॉल्वर को अस्वीकार करती है, वह No answer दिखाती है, न कि झूठा "clean"। इसे आज़माएँ: Google DNS के माध्यम से, Spamhaus हर चीज़ के लिए "not listed" कहता है।
- हर लिस्टिंग की व्याख्या। Spamhaus SBL (एक स्पैम स्रोत) और PBL (एक अंतिम-उपयोगकर्ता रेंज) एक ही समस्या नहीं हैं। प्रत्येक लिस्टिंग अपने अर्थ और एक गंभीरता के साथ आती है, ताकि आप जान सकें कि पहले क्या ठीक करना है।
- मेल-सर्वर की सेहत एक ही जगह। 24 ब्लैकलिस्ट, AbuseIPDB, SSL और डोमेन समाप्ति, SPF/DKIM/DMARC ग्रेड, DMARC रिपोर्ट और अपटाइम।
- जो वास्तव में मायने रखता है उसके अनुसार क्रमबद्ध। प्रत्येक एसेट को 100 में से एक जोखिम स्कोर मिलता है, जो प्रत्येक ब्लैकलिस्ट के अपने रिटर्न कोड जिस गंभीरता को डिकोड करते हैं उसके अनुसार भारित होता है, इसलिए एक गंभीर लिस्टिंग तीन सजावटी लिस्टिंग्स से ऊपर रहती है। स्कोर अपना काम दिखाता है: हर कारक, उसने क्या योगदान दिया, और कुल में से कितना।
- आपको बताता है कि क्या बदला। निर्धारित जाँचें, एक गतिविधि लॉग, और ईमेल, Slack, Discord या webhook द्वारा अलर्ट जब कुछ सूचीबद्ध हो, सूची से हटे, डाउन हो या समाप्त होने वाला हो।
- आपका। स्व-होस्टेड, MIT लाइसेंस प्राप्त, कोई टेलीमेट्री नहीं, कोई सशुल्क टियर नहीं।
अगर AbuseBox आपको एक बाउंस से बचाता है, तो एक स्टार अन्य मेल ऑपरेटरों को इसे खोजने में मदद करता है।
विशेषताएँ
निगरानी
- IPs और डोमेन को एसेट के रूप में जोड़ें (एक-एक करके, 300 तक की सूची, या एक पूरा /24) और चुनें कि प्रत्येक पर कौन-सी जाँचें चलें
- वैश्विक या प्रति-एसेट अंतराल पर निर्धारित पुनः-जाँचें, साथ ही एक "check due assets now" बटन
- एक डैशबोर्ड जो उस पर खुलता है जिस पर कार्रवाई की आवश्यकता है, प्रत्येक एसेट के अपने निष्कर्षों से बने 0-100 जोखिम स्कोर द्वारा क्रमबद्ध
- प्रत्येक एसेट के लिए एक जोखिम स्कोर जिसके कारक अलग-अलग दिखाए गए हैं: ब्लैकलिस्ट, पहुँच-योग्यता, प्रमाणपत्र, डोमेन, ईमेल प्रमाणीकरण और प्रतिष्ठा
- हर परिवर्तन का एक गतिविधि लॉग, जाँचों के बीच क्या बदला इसके साथ जाँच इतिहास, और ब्लैकलिस्ट इतिहास चार्ट
- नई लिस्टिंग, हटाने, आउटेज, रिकवरी और समाप्ति चेतावनियों के लिए ईमेल, Slack, Discord या webhook द्वारा अलर्ट
जाँचें
- ब्लैकलिस्ट: 24 DNS ब्लैकलिस्ट, प्रत्येक लिस्टिंग को उसके अर्थ और एक गंभीरता के साथ डिकोड किया गया, और प्रत्येक सूची को उसके परीक्षण पतों के विरुद्ध सत्यापित किया गया
- AbuseIPDB: दुरुपयोग विश्वास स्कोर, रिपोर्ट, ISP और देश (मुफ़्त API कुंजी)
- SSL: वैधता, जारीकर्ता, समाप्ति, कवर किए गए नाम, और क्या TLS संस्करण और सिफर अभी भी स्वीकार्य हैं
- WHOIS: रजिस्ट्रार, तिथियाँ, नेम सर्वर और दुरुपयोग संपर्क, IPv6 या IPv4 पर
- DNS: A, AAAA, MX, TXT, CNAME, NS, SOA और PTR रिकॉर्ड
- SPF / DKIM / DMARC: A से F तक ग्रेड, कस्टम DKIM सेलेक्टर के साथ, साथ ही DMARC एग्रीगेट रिपोर्ट पार्सिंग। मेल सर्वर के अपने होस्टनेम को संभाला जाता है: उसका SPF वहाँ पढ़ा जाता है जहाँ वह प्रकाशित है, और जिस DMARC नीति और DKIM कुंजी से वह कवर है वे उस डोमेन पर पाई जाती हैं जिससे वह संबंधित है
- सर्वर स्थिति: DNS रिज़ॉल्यूशन, पोर्ट 80 और 443, HTTP स्थिति और प्रतिक्रिया समय
- बल्क और सबनेट जाँचें: एक साथ 300 तक लक्ष्य, या /24 में हर पता
दिन-प्रतिदिन
- प्रत्येक ब्लैकलिस्ट के हटाने वाले पृष्ठ के लिंक के साथ डीलिस्ट ट्रैकिंग
- टेबल या कार्ड दृश्य, जिसमें खोज, फ़िल्टर, सॉर्टिंग और पेजिंग सभी सर्वर पर की जाती हैं, इसलिए पेज एक वास्तविक क्रम का शीर्ष होता है चाहे आपके पास कितने भी एसेट हों
- प्रत्येक एसेट के लिए एक स्वामी, जिसे होस्टनेम, प्रकार और विवरण के साथ खोजा जा सकता है
- बल्क क्रियाएँ और CSV निर्यात
- कमांड पैलेट (Ctrl/Cmd + K), लाइट और डार्क थीम, एक मोबाइल लेआउट
- एडमिन भूमिकाओं वाले कई उपयोगकर्ता, वैकल्पिक इतिहास प्रतिधारण, और Swagger दस्तावेज़ों के साथ एक REST API
- एक सार्वजनिक त्वरित-जाँच पृष्ठ (दर सीमित) जिसके लिए किसी खाते की आवश्यकता नहीं; बाकी सब कुछ साइन-इन की आवश्यकता रखता है
इंस्टॉलेशन
Docker (अनुशंसित)
git clone https://github.com/bekkaze/abusebox.git
cd abusebox
cp backend/.env.example .env # optional: alerts, API keys, admin account
docker compose up -d # pulls the prebuilt images (add --build to build from source)
http://localhost:3000 खोलें और आप तैयार हैं।
पहला साइन-इन: उपयोगकर्ता admin है, और पहला स्टार्ट एक रैंडम पासवर्ड जनरेट करता है। इसे docker compose exec backend cat /app/data/initial_admin_password से पढ़ें; बैकएंड लॉग फ़ाइल का नाम बताता है लेकिन अब पासवर्ड स्वयं प्रिंट नहीं करता, इसलिए आप जो लॉग किसी के साथ साझा करते हैं, वह उन्हें अकाउंट नहीं सौंपता। साइन इन करने के तुरंत बाद इसे Settings में बदलें; ऐसा करने पर सहेजी गई प्रति हटा दी जाती है। इसे स्वयं चुनने के लिए, पहले स्टार्ट से पहले .env में DEFAULT_ADMIN_PASSWORD सेट करें। यदि डेटा पाथ लिखने योग्य नहीं है तो अकाउंट बिल्कुल नहीं बनाया जाता, और लॉग में पासवर्ड डालने के बजाय यही बताया जाता है।
UI किसी भी होस्टनेम पर उत्तर देता है, इसलिए आप इसे तुरंत किसी अन्य मशीन से खोल सकते हैं। इसे किसी ऐसे नेटवर्क पर उजागर करने से पहले जिस पर आप भरोसा नहीं करते, इसे अपने स्वयं के HTTPS रिवर्स प्रॉक्सी के पीछे रखें।
मैनुअल सेटअप
विस्तार के लिए क्लिक करें
पूर्वापेक्षाएँ: Python 3.11+, Node.js 20.19+, Yarn
बैकएंड:
cd backend
cp .env.example .env
pip install -r requirements.txt
uvicorn app.main:app --host 127.0.0.1 --port 8100 --reload
पहला स्टार्ट एक एडमिन पासवर्ड जनरेट करता है और उसे डेटाबेस के बगल में initial_admin_password के रूप में सहेजता है। यह टर्मिनल सटीक पथ बताता है।
फ्रंटएंड (नया टर्मिनल):
cd frontend
cp .env.example .env
yarn install
yarn dev
http://localhost:3000 खोलें।