عن المشروع
راما هو إطار عمل خدمي معياري للغة رست، مصمم لبناء عملاء وخوادم ووكلاء الشبكة ومزيج منها. ويؤكد على بنية صريحة وقابلة للتركيب حيث تُبنى حزمة الشبكة من الخدمات والطبقات والناقلات والبروتوكولات والحالة التي تركّبها بنفسك، مما يجعل شكل النظام مرئياً في الشيفرة.
تشمل القدرات الرئيسية:
- **الوكلاء**: عكسي، وإنهاء TLS، وHTTP(S)، وSOCKS5، وSNI، وMITM، وشفاف، وتشويه، ووكلاء الشبكة، إضافة إلى دعم بروتوكول HAProxy PROXY.
- **تطبيقات وواجهات الويب**: توجيه المسارات والمطابقات، ومعالجات غير متزامنة مع مستخرجات طلبات مُنمّطة وحالة مشتركة، واستجابات مُنمّطة HTML/JSON/بث، ونماذج ورفع ملفات، وأصول ثابتة، ووسيطات للمصادقة وCSRF وCORS والضغط والمهلات والتتبع.
- **العملاء وحزم الموصلات**: عملاء HTTP(S) غير متزامنين لـ HTTP/1.1 وHTTP/2 وHTTP/3 مع اكتشاف Alt-Svc، وعملاء WebSocket وgRPC وttRPC وFastCGI، وحزم موصلات مخصصة، ومجمعات اتصالات، ومحاكاة User-Agent بملفات تعريف متصفحات حقيقية.
- **الخوادم وضوابط الدخول**: خوادم HTTP/1.1 وHTTP/2 وHTTP/3، وWebSocket، وSSE، وgRPC، وttRPC، وناقلات TCP/UDP/QUIC/Unix، وإنهاء TLS بشهادات ديناميكية، وmTLS، وACME، وفحص البروتوكولات، والبصمات (JA3، JA4، PeetPrint، JA4H، Akamai HTTP/2).
- **بروتوكولات التطبيقات والبوابات**: WebSockets، وSSE، وDatastar، وgRPC، وttRPC، وFastCGI، وتغذيات RSS/Atom.
- **توجيه الوكلاء والاكتشاف**: مسارات صريحة، ووكلاء المنبع، وجلب/تقييم/توليد PAC، وقواعد التجاوز، وتخزين فشل المسارات مؤقتاً.
- **تكييف المحتوى**: عملاء/خوادم ICAP وطبقات تكييف HTTP.
- **وقت التشغيل والتشغيل البيني**: خدمات غير متزامنة، ومهايئات حجب اختيارية، وتشغيل متبادل مع Tower، وإيقاف تشغيل رشيق.
- **TLS والهوية**: Rustls، وBoringSSL، وإنهاء TLS، وشهادات ديناميكية، وmTLS، وACME، وتثبيت الشهادات.
- **فحص حركة المرور**: فحص البروتوكولات، والتقاط واعتراض HTTP/WebSocket/TLS، ووكيل MITM مع واجهة ويب، وتسجيل/إعادة تشغيل HAR، وتصدير curl.
- **معالجة البيانات**: إعادة كتابة HTML بالبث، واختيار وإعادة كتابة JSON/JSONPath بالبث، وJSON-LD.
- **المراقبة**: التتبع وOpenTelemetry، ومقاييس HTTP والنقل، وقياس وقت التشغيل.
- **البرمجة النصية المدمجة**: وقت تشغيل JavaScript لتقييم وتوليد PAC.
- **الشبكات منخفضة المستوى**: TCP، وUDP، وQUIC v1/v2، ومقابس Unix، وDNS، ووسيطات النقل، وتجميع الاتصالات.
- **تكاملات المنصات**: Apple Network Extension، وApple XPC، وLinux tproxy، وWindows WFP.
يتيح ملف `rama` التنفيذي CLI استخدام أجزاء من راما دون كتابة شيفرة رست، بما في ذلك تشغيل وكلاء HTTP(S)/SOCKS5 بوضع MITM وواجهة ويب، وعملاء HTTP/WebSocket، وتحليل DNS، وفحص TLS، وتقييم PAC، وخدمات الاختبار.
طُوّر الإطار بواسطة Plabayo ويُستخدم في الإنتاج لأمن الشبكات واستخراج البيانات وبوابات API والتوجيه. ويتطلب Rust 1.96 ويدعم Linux وmacOS وWindows كمنصات من المستوى الأول.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.