
iNTERCEPT، منصة مجانية ومفتوحة المصدر توحد أفضل أدوات استخبارات الإشارات في واجهة واحدة سهلة الوصول.
ادعم مطور هذا المشروع مفتوح المصدر
منصة استخبارات الإشارات
واجهة مستندة إلى الويب لأدوات الراديو المُعرَّفة بالبرمجيات.
git clone https://github.com/smittix/intercept.git
cd intercept
./setup.sh # القائمة التفاعلية (التشغيل الأول يطلق معالج الإعداد)
sudo ./start.sh
في التشغيل الأول، يطلق setup.sh معالجًا موجَّهًا يكتشف نظام التشغيل الخاص بك، ويتيح لك اختيار ملفات تعريف التثبيت، ويُعد بيئة Python، ويقوم اختياريًا بتكوين متغيرات البيئة وPostgreSQL.
في عمليات التشغيل اللاحقة، يفتح قائمة تفاعلية:
قائمة إعداد INTERCEPT
════════════════════════════════════════
1) تثبيت / إضافة الوحدات
2) فحص صحة النظام
3) إعداد قاعدة البيانات (سجل ADS-B)
4) تحديث الأدوات
5) مكوّن البيئة
6) إلغاء التثبيت / التنظيف
7) عرض الحالة
0) خروج
الخادم الإنتاجي مقابل خادم التطوير: يكتشف
start.shتلقائيًا gunicorn + gevent ويشغل خادم إنتاج باستخدام greenlets المتعاونة — يتعامل مع عدة عملاء SSE/WebSocket دون حظر. يتراجع إلى خادم Flask التطويري إذا لم يكن gunicorn مثبتًا. للتطوير المحلي السريع، لا يزال بإمكانك استخدامsudo -E venv/bin/python intercept.pyمباشرةً.
اختر ما تريد تثبيته أثناء المعالج أو عبر خيار القائمة 1:
يمكن دمج ملفات تعريف متعددة (مثل إدخال 1 3 للمجموعة الأساسية + الطقس).
./setup.sh --non-interactive # تثبيت كامل بدون واجهة (نفس السلوك القديم)
./setup.sh --profile=core,weather # تثبيت ملفات تعريف محددة
./setup.sh --health-check # فحص صحة النظام والخروج
./setup.sh --postgres-setup # تشغيل إعداد PostgreSQL والخروج
./setup.sh --menu # فرض القائمة التفاعلية
git clone https://github.com/smittix/intercept.git
cd intercept
docker compose --profile basic up -d --build
ملاحظة: يتطلب Docker الوضع المتميز للوصول إلى أجهزة USB SDR. يتم تمرير أجهزة SDR عبر
/dev/bus/usb.
للإصدارات متعددة المعماريات (amd64 + arm64 لـ Raspberry Pi)، راجع build-multiarch.sh — فهو يتعامل مع التجميع المتقاطع ودفع السجل في خطوة واحدة.
استخدم مكوّن البيئة (خيار القائمة 5) لتعيين أي متغير INTERCEPT_* بشكل تفاعلي. يتم حفظ الإعدادات في ملف .env يقوم start.sh بتحميله تلقائيًا عند بدء التشغيل.
يمكنك أيضًا إنشاء أو تحرير .env يدويًا:
# .env (يُحمَّل تلقائيًا بواسطة start.sh)
INTERCEPT_PORT=5050
INTERCEPT_ADSB_AUTO_START=true
INTERCEPT_DEFAULT_LAT=51.5074
INTERCEPT_DEFAULT_LON=-0.1278
تستمر ميزة سجل ADS-B في حفظ رسائل الطائرات في PostgreSQL للتحليل طويل المدى.
الإعداد التلقائي (التثبيت المحلي):
./setup.sh --postgres-setup
# أو استخدم خيار القائمة 3: إعداد قاعدة البيانات
سيؤدي هذا إلى تثبيت PostgreSQL إذا لزم الأمر، وإنشاء قاعدة البيانات/المستخدم/الجداول، وكتابة إعدادات الاتصال إلى .env.
Docker:
docker compose --profile history up -d
قم بتعيين متغيرات البيئة التالية (في .env):
INTERCEPT_ADSB_HISTORY_ENABLED=true
INTERCEPT_ADSB_DB_HOST=adsb_db
INTERCEPT_ADSB_DB_PORT=5432
INTERCEPT_ADSB_DB_NAME=intercept_adsb
INTERCEPT_ADSB_DB_USER=intercept
INTERCEPT_ADSB_DB_PASSWORD=intercept
لتخزين بيانات Postgres على وحدة تخزين خارجية، قم بتعيين PGDATA_PATH (القيمة الافتراضية: ./pgdata):
PGDATA_PATH=/mnt/usbpi1/intercept/pgdata
ثم افتح /adsb/history للوحة التقارير.
تحقق من اكتمال التثبيت وعمله بشكل صحيح:
./setup.sh --health-check
# أو استخدم خيار القائمة 2
يتحقق من الأدوات المثبتة، وأجهزة SDR، وتوفر المنافذ، والأذونات، وبيئة Python الافتراضية، وتكوين .env، والاتصال بـ PostgreSQL.
بعد بدء التشغيل، افتح http://localhost:5050 في متصفحك.
بيانات الاعتماد الافتراضية: admin / admin — قم بتغييرها في config.py (ADMIN_USERNAME / ADMIN_PASSWORD) قبل عرض التطبيق على الشبكة.
تعمل معظم الميزات مع دونغل RTL-SDR أساسي (RTL2832U + R820T2).
| ❗ ألا تستخدم جهاز RTL-SDR؟ |
|---|
| يدعم Intercept أي جهاز يدعمه SoapySDR. ومع ذلك، يجب أن يكون لديك الوحدة الصحيحة لجهازك مثبتة! على سبيل المثال إذا كان لديك جهاز SDRPlay، فستحتاج إلى تثبيت soapysdr-module-sdrplay. |
| ❗ استخدام GPS |
|---|
| يلزم gpsd للحصول على الموقع في الوقت الفعلي. يتحقق Intercept تلقائيًا من تشغيل gpsd في الخلفية عند عرض أي خرائط. |
انضم إلى خادم Discord الخاص بنا
تم تطوير هذا المشروع باستخدام الذكاء الاصطناعي كشريك في البرمجة، يجمع بين التوجيه البشري والتنفيذ بمساعدة الذكاء الاصطناعي. الهدف: جعل الراديو المُعرَّف بالبرمجيات أكثر سهولة من خلال توفير واجهة نظيفة وموحدة لأدوات SDR الشائعة.
هذا البرنامج مخصص للأغراض التعليمية والاختبار المصرح به فقط.
رخصة Apache 2.0 - راجع LICENSE
من إعداد smittix - GitHub
rtl-sdr | multimon-ng | rtl_433 | dump1090 | AIS-catcher | acarsdec | direwolf | rtlamr | dumpvdl2 | aircrack-ng | Leaflet.js | SatDump | Celestrak | Priyom.org
| # | ملف التثبيت | الأدوات |
|---|
| 1 | SIGINT الأساسية | rtl_sdr, multimon-ng, rtl_433, dump1090, acarsdec, dumpvdl2, ffmpeg, gpsd |
| 2 | البحرية والراديو | AIS-catcher, direwolf |
| 3 | الطقس والفضاء | SatDump, radiosonde_auto_rx |
| 4 | أمن الترددات اللاسلكية | aircrack-ng, HackRF, BlueZ, hcxtools, Ubertooth, SoapySDR |
| 5 | SIGINT الكاملة | كل ما سبق |
| 6 | مخصص | قائمة اختيار لكل أداة |
| الجهاز | الغرض | السعر |
|---|
| RTL-SDR | مطلوب لجميع ميزات SDR | ~25-35 دولارًا |
| محول WiFi | يجب أن يدعم وضع التجسس (المراقبة) | ~20-40 دولارًا |
| محول Bluetooth | مسح الأجهزة (عادةً ما يكون مدمجًا) | - |
| GPS | أي وحدة GPS مدعومة من لينكس | ~10 دولارات |