
أداة عالية الأداء لمراقبة شفافية الشهادات (CT) مكتوبة بلغة Rust. بث فوري للشهادات SSL/TLS الصادرة حديثًا من سجلات CT. تطبيق بلغة Rust لـ certstream-server مع أداء محسّن وكفاءة في استخدام الذاكرة.
خادم Certstream مكتوب بلغة Rust. يراقب سجلات شفافية الشهادات (CT) ويبث شهادات SSL/TLS الصادرة حديثًا عبر WebSocket وServer-Sent Events (SSE).
يجمع Certstream الشهادات من سجلات شفافية الشهادات ويبثها في الوقت الفعلي. هذا التنفيذ متوافق مع عملاء Certstream الحاليين ويدعم كلاً من سجلات RFC 6962 وstatic-CT.
الميزات الرئيسية:
تتوفر وثائق API الكاملة وأمثلة العملاء ومرجع الإعدادات وملاحظات الاستضافة الذاتية على certstream.dev.
هل تريد البث دون تشغيل خادم؟ هناك واجهة CertStream API مجانية مستضافة على wss://api.certstream.dev/.
ملفات Linux الثنائية الجاهزة هي إصدارات musl ثابتة. تتضمن أرشيفات الإصدارات مجموعات تحقق SHA-256.
# Linux and macOS, x86_64 and arm64; verifies the checksum before installing
curl -fsSL https://raw.githubusercontent.com/reloading01/certstream-server-rust/main/install.sh | sh
# Homebrew
brew install reloading01/tap/certstream-server-rust
# Cargo
cargo install certstream-server-rust
# Docker
docker run -d -p 8080:8080 ghcr.io/reloading01/certstream-server-rust:latest
مستودعات apt وrpm الموقّعة، وDocker Compose، وخيارات المثبّت مشمولة في وثائق الاستضافة الذاتية.
لا يلزم أي إعداد. يكتشف الخادم سجلات CT تلقائيًا، ويقدّم WebSocket على المنفذ 8080، ويحفظ موضعه بحيث تستأنف عمليات إعادة التشغيل بدلًا من إعادة تشغيل سجل السجلات.
جميع الإعدادات اختيارية. تتجاوز متغيرات البيئة قيم YAML، وتتجاوز قيم YAML القيم الافتراضية المدمجة. كل متغير ومفتاح YAML مُدرج في مرجع الإعداد.
| المتغير | الافتراضي | الوصف |
|---|---|---|
CERTSTREAM_PORT | 8080 | منفذ HTTP/WebSocket |
CERTSTREAM_SSE_ENABLED | false | تفعيل SSE |
CERTSTREAM_API_ENABLED | false | تفعيل REST API |
CERTSTREAM_AUTH_ENABLED | false | اشتراط رموز bearer (CERTSTREAM_AUTH_TOKENS) |
CERTSTREAM_CONNECTION_LIMIT_ENABLED | false | تفعيل حدود الاتصال العامة ولكل IP |
CERTSTREAM_CT_LOG_STATE_FILE | certstream_state.json | ملف موضع سجل CT |
| نقطة النهاية | البث |
|---|---|
ws://host:8080/ | Lite |
ws://host:8080/full-stream | بيانات كاملة مع DER والسلسلة |
ws://host:8080/domains-only | أسماء النطاقات فقط |
http://host:8080/sse | SSE، عند التفعيل (?stream=full أو ?stream=domains) |
/health، /health/deep، /metrics | فحوصات السلامة ومقاييس Prometheus |
/api/stats، /api/logs، /api/cert/{hash} | REST API، عند التفعيل |
تقبل نقاط نهاية البث معاملات الاستعلام domain وissuer للتصفية من جانب الخادم. راجع الوثائق لتنسيقات الرسائل، ومخرجات الإصدار 2، وتصدير النطاقات.
راجع RELEASE_NOTES.md لسجل الإصدارات.
تقارير الأخطاء، وغرائب سجلات CT، وطلبات السحب مرحّب بها. راجع CONTRIBUTING.md لمعرفة كيفية البناء والاختبار وإرسال تغيير.
إن وضع نجمة على المستودع أو مشاركته يساعد المشروع على أن يُكتشف. يمكنك أيضًا رعايته على GitHub.
MIT. راجع LICENSE.