انتشار Nebula 1.5، سیستمی برای ایجاد شبکه های همپوشانی P2P

انتشار پروژه Nebula 1.5 در دسترس است و ابزارهایی برای ایجاد شبکه های پوششی امن ارائه می دهد. این شبکه می‌تواند از چندین تا ده‌ها هزار میزبان جدا از هم جغرافیایی که توسط ارائه‌دهندگان مختلف میزبانی می‌شوند، متحد کند و یک شبکه مجزا جدا شده در بالای شبکه جهانی تشکیل دهد. این پروژه در Go نوشته شده و تحت مجوز MIT توزیع شده است. این پروژه توسط Slack، که یک پیام رسان شرکتی به همین نام توسعه می دهد، تأسیس شد. از Linux، FreeBSD، macOS، Windows، iOS و Android پشتیبانی می کند.

گره ها در شبکه سحابی به طور مستقیم با یکدیگر در حالت P2P ارتباط برقرار می کنند - اتصالات مستقیم VPN به صورت پویا ایجاد می شوند زیرا داده ها باید بین گره ها منتقل شوند. هویت هر میزبان در شبکه توسط یک گواهی دیجیتال تایید می شود و اتصال به شبکه نیاز به احراز هویت دارد - هر کاربر گواهی تایید آدرس IP در شبکه Nebula، نام و عضویت در گروه های میزبان را دریافت می کند. گواهینامه ها توسط یک مرجع صدور گواهی داخلی امضا می شوند، توسط سازنده شبکه در تاسیسات آن مستقر می شوند و برای تأیید اعتبار میزبان هایی که حق اتصال به شبکه همپوشانی را دارند استفاده می شوند.

برای ایجاد یک کانال ارتباطی تایید شده و ایمن، Nebula از پروتکل تونل خود بر اساس پروتکل تبادل کلید Diffie-Hellman و رمز AES-256-GCM استفاده می کند. اجرای پروتکل بر اساس اولیه های آماده و اثبات شده ارائه شده توسط Noise Framework است که در پروژه هایی مانند WireGuard، Lightning و I2P نیز استفاده می شود. گفته می شود این پروژه تحت یک ممیزی امنیتی مستقل قرار گرفته است.

برای کشف سایر گره ها و هماهنگ کردن اتصالات به شبکه، گره های "فانوس دریایی" ویژه ای ایجاد می شوند که آدرس های IP جهانی آنها ثابت و برای شرکت کنندگان شبکه شناخته شده است. گره های شرکت کننده به یک آدرس IP خارجی محدود نمی شوند، آنها توسط گواهی ها شناسایی می شوند. دارندگان هاست نمی توانند به تنهایی در گواهی های امضا شده تغییراتی ایجاد کنند و بر خلاف شبکه های IP سنتی، نمی توانند به سادگی با تغییر آدرس IP وانمود کنند که میزبان دیگری هستند. هنگامی که یک تونل ایجاد می شود، هویت میزبان با یک کلید خصوصی فردی تأیید می شود.

به شبکه ایجاد شده محدوده مشخصی از آدرس های اینترانت اختصاص داده می شود (مثلاً 192.168.10.0/24) و آدرس های داخلی با گواهی های میزبان مرتبط هستند. گروه‌ها را می‌توان از شرکت‌کنندگان در شبکه همپوشانی تشکیل داد، به‌عنوان مثال، برای سرورها و ایستگاه‌های کاری جداگانه، که قوانین فیلترینگ ترافیک جداگانه برای آنها اعمال می‌شود. مکانیسم های مختلفی برای دور زدن مترجم آدرس (NAT) و فایروال ها ارائه شده است. امکان سازماندهی مسیریابی از طریق شبکه همپوشانی ترافیک از میزبان های شخص ثالثی که بخشی از شبکه Nebula نیستند (مسیر ناامن) وجود دارد.

از ایجاد دیوارهای آتش برای جداسازی دسترسی و فیلتر کردن ترافیک بین گره ها در شبکه پوشش سحابی پشتیبانی می کند. ACL با اتصال برچسب برای فیلتر کردن استفاده می شود. هر میزبان در شبکه می تواند قوانین فیلترینگ خود را بر اساس هاست ها، گروه ها، پروتکل ها و پورت های شبکه تعریف کند. در این مورد، هاست ها نه با آدرس های IP، بلکه توسط شناسه های میزبان امضا شده دیجیتالی فیلتر می شوند، که بدون به خطر انداختن مرکز صدور گواهی که هماهنگ کننده شبکه است، نمی توان آنها را جعل کرد.

در نسخه جدید:

  • یک پرچم "-raw" به دستور print-cert اضافه کرد تا نمایش PEM گواهی را چاپ کند.
  • پشتیبانی از معماری جدید لینوکس riscv64 اضافه شده است.
  • یک تنظیم آزمایشی remote_allow_ranges اضافه کرد تا لیست میزبان‌های مجاز را به زیرشبکه‌های خاص متصل کند.
  • گزینه pki.disconnect_invalid برای بازنشانی تونل ها پس از خاتمه اعتماد یا انقضای طول عمر گواهی اضافه شد.
  • گزینه unsafe_routes اضافه شد. .metric برای اختصاص وزن به یک مسیر خارجی خاص.

منبع: opennet.ru

اضافه کردن نظر