پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1

پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
ادامه داستان در مورد ZeroTier، از تئوری بیان شده در مقاله "سوئیچ اترنت هوشمند برای سیاره زمین"، به تمرینی می پردازم که در آن:

  • بیایید یک کنترلر شبکه خصوصی ایجاد و پیکربندی کنیم
  • بیایید یک شبکه مجازی ایجاد کنیم
  • بیایید گره ها را پیکربندی و به آن متصل کنیم
  • بیایید اتصال شبکه بین آنها را بررسی کنیم
  • اجازه دهید دسترسی به رابط کاربری گرافیکی کنترلر شبکه را از خارج مسدود کنیم

کنترلر شبکه

همانطور که قبلا ذکر شد، برای ایجاد شبکه های مجازی، مدیریت آنها و همچنین اتصال گره ها، کاربر به یک کنترلر شبکه نیاز دارد که یک رابط گرافیکی (GUI) برای آن به دو صورت وجود دارد:

گزینه های ZeroTier GUI

  • یکی از توسعه‌دهنده ZeroTier، به‌عنوان راه‌حل عمومی ابری SaaS با چهار طرح اشتراک، از جمله رایگان، اما محدود در تعداد دستگاه‌های مدیریت‌شده و سطح پشتیبانی، موجود است.
  • دومی از یک توسعه‌دهنده مستقل است که از نظر عملکرد تا حدودی ساده شده است، اما به عنوان یک راه‌حل منبع باز خصوصی برای استفاده در محل یا منابع ابری موجود است.

در تمرینم از هر دو استفاده کردم و در نتیجه به دومی بسنده کردم. دلیل این امر هشدارهای سازنده بود.

کنترل‌کننده‌های شبکه به عنوان مقامات صدور گواهی برای شبکه‌های مجازی ZeroTier عمل می‌کنند. فایل های حاوی کلیدهای مخفی کنترلر باید به دقت محافظت شده و به طور ایمن بایگانی شوند. مصالحه آنها به مهاجمان غیرمجاز اجازه می دهد تا پیکربندی های شبکه جعلی ایجاد کنند و از دست دادن آنها منجر به از دست دادن توانایی کنترل و مدیریت شبکه می شود و در واقع آن را غیرقابل استفاده می کند."

پیوند به مستندات

و همچنین نشانه هایی از پارانویای امنیت سایبری خودتان :) 

  • حتی اگر Cheburnet بیاید، هنوز باید به کنترلر شبکه خود دسترسی داشته باشم.
  • فقط من باید از کنترلر شبکه استفاده کنم. در صورت لزوم، ارائه دسترسی به نمایندگان مجاز شما؛
  • باید امکان محدود کردن دسترسی به کنترل کننده شبکه از خارج وجود داشته باشد.

در این مقاله، من نمی‌دانم که به طور جداگانه درباره نحوه استقرار یک کنترل‌کننده شبکه و رابط کاربری گرافیکی آن در منابع فیزیکی یا مجازی در محل صحبت کنم. و همچنین 3 دلیل برای این وجود دارد: 

  • نامه های بیشتری از برنامه ریزی شده وجود خواهد داشت
  • در مورد این قبلا گفت در GitHab توسعه دهنده رابط کاربری گرافیکی
  • موضوع مقاله در مورد چیز دیگری است

بنابراین با انتخاب مسیر کمترین مقاومت، در این داستان از یک کنترلر شبکه با رابط کاربری گرافیکی مبتنی بر VDS که توسط از قالب، با مهربانی توسط همکاران من از RuVDS توسعه یافته است.

راه اندازی اولیه

پس از ایجاد سرور از قالب مشخص شده، کاربر از طریق مرورگر با دسترسی به https:// به کنترلر Web-GUI دسترسی پیدا می کند. : 3443

پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
به‌طور پیش‌فرض، سرور از قبل دارای یک گواهینامه TLS/SSL است که از پیش تولید شده است. این برای من کافی است، زیرا دسترسی به آن را از بیرون مسدود می کنم. برای کسانی که مایل به استفاده از انواع دیگر گواهینامه هستند، وجود دارد دستورالعمل نصب و راه اندازی در GitHab توسعه دهنده رابط کاربری گرافیکی.

زمانی که کاربر برای اولین بار وارد سیستم می شود ورود با ورود و رمز عبور پیش فرض - مدیر سایت и کلمه عبور:

پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
پیشنهاد می کند رمز عبور پیش فرض را به یک رمز عبور سفارشی تغییر دهید

پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
من این کار را کمی متفاوت انجام می دهم - رمز عبور یک کاربر موجود را تغییر نمی دهم، اما یک رمز عبور جدید ایجاد می کنم - ایجاد کاربر.

من نام کاربر جدید را تنظیم کردم - نام کاربری:
من یک رمز عبور جدید تنظیم کردم - رمز عبور جدید را وارد کنید
رمز عبور جدید را تایید می کنم - رمز عبور را دوباره وارد کنید:

شخصیت هایی که وارد می کنید به حروف بزرگ و کوچک حساس هستند - مراقب باشید!

کادر تأیید برای تأیید تغییر رمز عبور در ورود بعدی - تغییر رمز عبور در ورود بعدی: من جشن نمیگیرم 

برای تایید داده های وارد شده، را فشار دهید گذاشتن رمز عبور:

پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
سپس: من دوباره وارد سیستم می شوم - خروج از سیستم / ورود، از قبل تحت اعتبار کاربر جدید است:

پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
بعد، به تب کاربران می روم - کاربران و کاربر را حذف کنید مدیر سایتبا کلیک بر روی نماد سطل زباله واقع در سمت چپ نام او.

پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
در آینده می‌توانید رمز عبور کاربر را با کلیک کردن روی نام او یا روی تنظیم رمز عبور تغییر دهید.

ایجاد یک شبکه مجازی

برای ایجاد یک شبکه مجازی، کاربر باید به تب مراجعه کند افزودن شبکه. از نقطه کاربر این کار از طریق صفحه قابل انجام است صفحه اصلی - صفحه اصلی Web-GUI که آدرس ZeroTier این کنترلر شبکه را نمایش می دهد و حاوی پیوندی به صفحه لیست شبکه های ایجاد شده از طریق آن است.

پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
در صفحه افزودن شبکه کاربر یک نام به شبکه تازه ایجاد شده اختصاص می دهد.

پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
هنگام اعمال داده های ورودی - ایجاد شبکه کاربر به صفحه ای با لیستی از شبکه ها هدایت می شود که شامل: 

نام شبکه - نام شبکه در قالب یک لینک، با کلیک بر روی آن می توانید آن را تغییر دهید 
شناسه شبکه - شناسه شبکه
جزئیات - به صفحه ای با پارامترهای شبکه دقیق پیوند دهید
راه اندازی آسان - پیوند به صفحه برای راه اندازی آسان
اعضا - پیوند به صفحه مدیریت گره

پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
برای راه اندازی بیشتر لینک را دنبال کنید راه اندازی آسان. در صفحه ای که باز می شود، کاربر محدوده ای از آدرس های IPv4 را برای شبکه در حال ایجاد مشخص می کند. این را می توان به طور خودکار با فشار دادن یک دکمه انجام داد ایجاد آدرس شبکه یا به صورت دستی با وارد کردن ماسک شبکه در قسمت مربوطه CIDR.

پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
هنگام تأیید ورود موفقیت آمیز داده ها، باید با استفاده از دکمه برگشت به صفحه فهرست شبکه ها بازگردید. در این مرحله، راه اندازی شبکه اصلی را می توان کامل در نظر گرفت.

اتصال گره های شبکه

  1. ابتدا باید سرویس ZeroTier One بر روی گره ای که کاربر می خواهد به شبکه متصل شود نصب شود.

    ZeroTier One چیست؟ZeroTier One سرویسی است که روی لپ‌تاپ‌ها، رایانه‌های رومیزی، سرورها، ماشین‌های مجازی و کانتینرها اجرا می‌شود و اتصالات را به یک شبکه مجازی از طریق یک پورت شبکه مجازی، شبیه به سرویس گیرنده VPN، فراهم می‌کند. 

    پس از نصب و راه اندازی سرویس، می توانید با استفاده از آدرس های 16 رقمی به شبکه های مجازی متصل شوید. هر شبکه به عنوان یک پورت شبکه مجازی روی سیستم ظاهر می شود که درست مانند یک پورت اترنت معمولی عمل می کند.
    پیوندهای توزیع ها و همچنین دستورات نصب را می توان یافت در صفحه سازنده.

    می توانید سرویس نصب شده را از طریق یک ترمینال خط فرمان (CLI) با حقوق مدیر/روت مدیریت کنید. در Windows/MacOS همچنین با استفاده از یک رابط گرافیکی. در Android/iOS فقط با استفاده از رابط کاربری گرافیکی.

  2. بررسی موفقیت آمیز بودن نصب سرویس:

    CLI:

    zerotier-cli status

    یافته ها: 

    200 info ebf416fac1 1.4.6 ONLINE
    رابط کاربری گرافیکی:

    خود این واقعیت که برنامه در حال اجرا است و وجود یک خط با شناسه Node با آدرس گره در آن.

  3. اتصال یک گره به شبکه:

    CLI:

    zerotier-cli join <Network ID>

    یافته ها: 

    200 join OK

    رابط کاربری گرافیکی:

    ویندوز: روی نماد کلیک راست کنید ZeroTier One در سینی سیستم و انتخاب مورد - به شبکه بپیوندید.

    پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
    سیستم عامل مکینتاش: برنامه را اجرا کنید ZeroTier One در منوی نوار، اگر قبلاً راه اندازی نشده باشد. روی نماد ⏁ کلیک کرده و انتخاب کنید به شبکه بپیوندید.

    Android/iOS: + (به اضافه تصویر) در برنامه

    پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
    در فیلدی که ظاهر می شود، کنترلر شبکه مشخص شده در رابط کاربری گرافیکی را وارد کنید شناسه شبکهو فشار دهید عضویت/افزودن شبکه.

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

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

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

    پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
    با استفاده از دکمه تغییرات را ذخیره کنید تازه کردن.

  5. بررسی وضعیت اتصال گره به شبکه:
    برای بررسی وضعیت اتصال در خود گره، اجرا کنید:
    CLI:

    zerotier-cli listnetworks

    یافته ها:

    200 listnetworks <nwid> <name> <mac> <status> <type> <dev> <ZT assigned ips>
    200 listnetworks 2da06088d9f863be My_1st_VLAN be:88:0c:cf:72:a1 OK PRIVATE ethernet_32774 10.10.10.2/24

    رابط کاربری گرافیکی:

    وضعیت شبکه باید خوب باشد

    برای اتصال گره های باقی مانده، عملیات 1-5 را برای هر یک از آنها تکرار کنید.

بررسی اتصال شبکه گره ها

من این کار را با اجرای دستور انجام می دهم پینگ در دستگاه متصل به شبکه ای که در حال حاضر مدیریت می کنم.

پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1
در اسکرین شات کنترلر Web-GUI می توانید سه گره متصل به شبکه را مشاهده کنید:

  1. ZTNCUI - 10.10.10.1 - کنترلر شبکه من با رابط کاربری گرافیکی - VDS در یکی از DCهای RuVDS. برای کار معمولی نیازی به اضافه کردن آن به شبکه نیست، اما من این کار را انجام دادم زیرا می خواهم دسترسی به رابط وب را از بیرون مسدود کنم. بیشتر در این مورد بعدا. 
  2. MyComp - 10.10.10.2 - کامپیوتر کار من یک کامپیوتر فیزیکی است
  3. پشتیبان گیری - 10.10.10.3 - VDS در DC دیگر.

بنابراین، از رایانه کاری خود، در دسترس بودن گره های دیگر را با دستورات بررسی می کنم:

ping 10.10.10.1

Pinging 10.10.10.1 with 32 bytes of data:
Reply from 10.10.10.1: bytes=32 time=14ms TTL=64
Reply from 10.10.10.1: bytes=32 time=4ms TTL=64
Reply from 10.10.10.1: bytes=32 time=7ms TTL=64
Reply from 10.10.10.1: bytes=32 time=2ms TTL=64

Ping statistics for 10.10.10.1:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 2ms, Maximum = 14ms, Average = 6ms

ping 10.10.10.3

Pinging 10.10.10.3 with 32 bytes of data:
Reply from 10.10.10.3: bytes=32 time=15ms TTL=64
Reply from 10.10.10.3: bytes=32 time=4ms TTL=64
Reply from 10.10.10.3: bytes=32 time=8ms TTL=64
Reply from 10.10.10.3: bytes=32 time=4ms TTL=64

Ping statistics for 10.10.10.3:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 4ms, Maximum = 15ms, Average = 7ms

کاربر حق دارد از ابزارهای دیگری برای بررسی در دسترس بودن گره ها در شبکه، چه در سیستم عامل داخلی و چه از قبیل NMAP، Advanced IP Scanner و غیره استفاده کند.

ما دسترسی به رابط کاربری گرافیکی کنترلر شبکه را از بیرون مخفی می کنیم.

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

برای انجام این کار، باید از طریق SSH به VDSی که کنترلر در آن قرار دارد متصل شوید و با استفاده از دستور، فایل پیکربندی را باز کنید:

nano /opt/key-networks/ztncui/.env

در فایل باز شده، پس از خط "HTTPS_PORT=3443" حاوی آدرس درگاهی که GUI در آن باز می شود، باید یک خط اضافی با آدرسی که GUI در آن باز می شود اضافه کنید - در مورد من HTTPS_HOST=10.10.10.1 است. .XNUMX. 

بعد فایل را ذخیره می کنم

Сtrl+C
Y
Enter 

و دستور را اجرا کنید:

systemctl restart ztncui

و تمام، اکنون رابط کاربری گرافیکی کنترلر شبکه من فقط برای گره های شبکه 10.10.10.0.24 در دسترس است.

به جای یک نتیجه گیری 

اینجاست که می خواهم قسمت اول راهنمای عملی ایجاد شبکه های مجازی بر اساس ZeroTier را به پایان برسانم. به امید دریافت دیدگاههای شما. 

در ضمن برای گذراندن زمان تا انتشار قسمت بعدی که در آن به شما می گویم چگونه یک شبکه مجازی را با یک شبکه فیزیکی ترکیب کنید، چگونه یک حالت "جنگجوی جاده" را سازماندهی کنید و چیزهای دیگر، پیشنهاد می کنم امتحان کنید. سازماندهی شبکه مجازی خود با استفاده از یک کنترلر شبکه خصوصی با رابط کاربری گرافیکی مبتنی بر VDS از بازار به بعد کاربران آنلاین حاضر در سایت " RUVDS. علاوه بر این، برای همه مشتریان جدید یک دوره آزمایشی رایگان وجود دارد - 3 روز!

PS آره! تقریبا فراموش کردم! با استفاده از دستوری در CLI این گره می توانید یک گره را از شبکه حذف کنید.

zerotier-cli leave <Network ID>

200 leave OK

یا دستور Delete در رابط کاربری گرافیکی مشتری روی گره.

-> معرفی. بخش تئوری. سوئیچ اترنت هوشمند برای سیاره زمین
-> راهنمای عملی ساخت شبکه های مجازی. قسمت 1
-> راهنمای عملی ساخت شبکه های مجازی. قسمت 2

پشتیبانی شده توسط ZeroTier. راهنمای عملی ساخت شبکه های مجازی. قسمت 1

منبع: www.habr.com

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