عن المشروع
itsUP هو تجمع بنية تحتية منزلية مبني بلغة Python يُدير خدمات Docker بشكل أوتوماتيكي مع التركيز على النشرات بدون توقف والأمان.
إدارة حلقة شبكية كاملة تشمل resolver DNS، وproxy عكسي Traefik، وأعمال الحاويات—كلها تُنسق من هيكل مجلدات قائم على المشاريع. كل مشروع خدمة يملك ملف docker-compose.yml خاص به وملف إعدادات، مما يحافظ على البنية ككود مرتبة وقابلة للإدارة الإصدارية.
القدرات الرئيسية:
- **نشرات بدون توقف**: يستخدم docker rollout لتوسيع الحاويات، والانتظار لاجتياز اختبارات الصحة، ثم استبدال النسخ القديمة. كشف التغيرات الذكي يتخطى النشرات عند عدم وجود تغيير.
- **بروكسي مُدار**: يُنشئ إعدادات Traefik مع SO_REUSEPORT لتحديثات سلسة. يدعم إنهاء TLS، ومرور TLS، وتوجيه TCP/UDP، وربط منافذ المضيف.
- **مراقب أمان الحاويات**: يكشف عن الحاويات المخترقة عبر ربط استعلامات DNS بالاتصالات المباشرة بالمواقع IP. يتكامل مع OpenSnitch لحظر iptables اختياري.
- **فخ DNS**: يوجه جميع حركة DNS عبر dnsmasq مع سجلات لكشف التهديدات.
- **نسخ احتياطي أوتوماتيكي**: نسخ S3 ليلي مع استعادة مجدولة.
- **ذكاء التهديدات**: تقارير يومية عبر تكامل API AbuseIPDB.
- **خادم OpenVPN**: دعم VPN مدمج مع وصول SSH.
واجهة CLI هي itsup_cli، مع أوامر للـ init وapply وvalidate وإدارة dns/proxy/svc/monitor. أنظمة timers Systemd تتعامل مع بدء التشغيل والإغلاق الليلي والنسخ الاحتياطي وفحوصات الصحة على Linux. على macOS، توفر agents launchd نفس الأتمتة.
المتطلبات تشمل Docker مع plugin rollout، وuv لإدارة تبعيات Python، وتوجيه المنافذ لمرفقات 80/443، ونطاق DNS wild card. الإعدادات تستخدم SOPS/age لتشفير الأسرار مع مستودعات git منفصلة للمشاريع والأسرار.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.