اجازه دهید دسترسی به رابط کاربری گرافیکی کنترلر شبکه را از خارج مسدود کنیم
کنترلر شبکه
همانطور که قبلا ذکر شد، برای ایجاد شبکه های مجازی، مدیریت آنها و همچنین اتصال گره ها، کاربر به یک کنترلر شبکه نیاز دارد که یک رابط گرافیکی (GUI) برای آن به دو صورت وجود دارد:
گزینه های ZeroTier GUI
یکی از توسعهدهنده ZeroTier، بهعنوان راهحل عمومی ابری SaaS با چهار طرح اشتراک، از جمله رایگان، اما محدود در تعداد دستگاههای مدیریتشده و سطح پشتیبانی، موجود است.
دومی از یک توسعهدهنده مستقل است که از نظر عملکرد تا حدودی ساده شده است، اما به عنوان یک راهحل منبع باز خصوصی برای استفاده در محل یا منابع ابری موجود است.
در تمرینم از هر دو استفاده کردم و در نتیجه به دومی بسنده کردم. دلیل این امر هشدارهای سازنده بود.
کنترلکنندههای شبکه به عنوان مقامات صدور گواهی برای شبکههای مجازی ZeroTier عمل میکنند. فایل های حاوی کلیدهای مخفی کنترلر باید به دقت محافظت شده و به طور ایمن بایگانی شوند. مصالحه آنها به مهاجمان غیرمجاز اجازه می دهد تا پیکربندی های شبکه جعلی ایجاد کنند و از دست دادن آنها منجر به از دست دادن توانایی کنترل و مدیریت شبکه می شود و در واقع آن را غیرقابل استفاده می کند."
و همچنین نشانه هایی از پارانویای امنیت سایبری خودتان :)
حتی اگر Cheburnet بیاید، هنوز باید به کنترلر شبکه خود دسترسی داشته باشم.
فقط من باید از کنترلر شبکه استفاده کنم. در صورت لزوم، ارائه دسترسی به نمایندگان مجاز شما؛
باید امکان محدود کردن دسترسی به کنترل کننده شبکه از خارج وجود داشته باشد.
در این مقاله، من نمیدانم که به طور جداگانه درباره نحوه استقرار یک کنترلکننده شبکه و رابط کاربری گرافیکی آن در منابع فیزیکی یا مجازی در محل صحبت کنم. و همچنین 3 دلیل برای این وجود دارد:
نامه های بیشتری از برنامه ریزی شده وجود خواهد داشت
در مورد این قبلا گفت در GitHab توسعه دهنده رابط کاربری گرافیکی
موضوع مقاله در مورد چیز دیگری است
بنابراین با انتخاب مسیر کمترین مقاومت، در این داستان از یک کنترلر شبکه با رابط کاربری گرافیکی مبتنی بر VDS که توسط از قالب، با مهربانی توسط همکاران من از RuVDS توسعه یافته است.
راه اندازی اولیه
پس از ایجاد سرور از قالب مشخص شده، کاربر از طریق مرورگر با دسترسی به https:// به کنترلر Web-GUI دسترسی پیدا می کند. : 3443
بهطور پیشفرض، سرور از قبل دارای یک گواهینامه TLS/SSL است که از پیش تولید شده است. این برای من کافی است، زیرا دسترسی به آن را از بیرون مسدود می کنم. برای کسانی که مایل به استفاده از انواع دیگر گواهینامه هستند، وجود دارد دستورالعمل نصب و راه اندازی در GitHab توسعه دهنده رابط کاربری گرافیکی.
زمانی که کاربر برای اولین بار وارد سیستم می شود ورود با ورود و رمز عبور پیش فرض - مدیر سایت и کلمه عبور:
پیشنهاد می کند رمز عبور پیش فرض را به یک رمز عبور سفارشی تغییر دهید
من این کار را کمی متفاوت انجام می دهم - رمز عبور یک کاربر موجود را تغییر نمی دهم، اما یک رمز عبور جدید ایجاد می کنم - ایجاد کاربر.
من نام کاربر جدید را تنظیم کردم - نام کاربری:
من یک رمز عبور جدید تنظیم کردم - رمز عبور جدید را وارد کنید:
رمز عبور جدید را تایید می کنم - رمز عبور را دوباره وارد کنید:
شخصیت هایی که وارد می کنید به حروف بزرگ و کوچک حساس هستند - مراقب باشید!
کادر تأیید برای تأیید تغییر رمز عبور در ورود بعدی - تغییر رمز عبور در ورود بعدی: من جشن نمیگیرم
برای تایید داده های وارد شده، را فشار دهید گذاشتن رمز عبور:
سپس: من دوباره وارد سیستم می شوم - خروج از سیستم / ورود، از قبل تحت اعتبار کاربر جدید است:
بعد، به تب کاربران می روم - کاربران و کاربر را حذف کنید مدیر سایتبا کلیک بر روی نماد سطل زباله واقع در سمت چپ نام او.
در آینده میتوانید رمز عبور کاربر را با کلیک کردن روی نام او یا روی تنظیم رمز عبور تغییر دهید.
ایجاد یک شبکه مجازی
برای ایجاد یک شبکه مجازی، کاربر باید به تب مراجعه کند افزودن شبکه. از نقطه کاربر این کار از طریق صفحه قابل انجام است صفحه اصلی - صفحه اصلی Web-GUI که آدرس ZeroTier این کنترلر شبکه را نمایش می دهد و حاوی پیوندی به صفحه لیست شبکه های ایجاد شده از طریق آن است.
در صفحه افزودن شبکه کاربر یک نام به شبکه تازه ایجاد شده اختصاص می دهد.
هنگام اعمال داده های ورودی - ایجاد شبکه کاربر به صفحه ای با لیستی از شبکه ها هدایت می شود که شامل:
نام شبکه - نام شبکه در قالب یک لینک، با کلیک بر روی آن می توانید آن را تغییر دهید شناسه شبکه - شناسه شبکه جزئیات - به صفحه ای با پارامترهای شبکه دقیق پیوند دهید راه اندازی آسان - پیوند به صفحه برای راه اندازی آسان اعضا - پیوند به صفحه مدیریت گره
برای راه اندازی بیشتر لینک را دنبال کنید راه اندازی آسان. در صفحه ای که باز می شود، کاربر محدوده ای از آدرس های IPv4 را برای شبکه در حال ایجاد مشخص می کند. این را می توان به طور خودکار با فشار دادن یک دکمه انجام داد ایجاد آدرس شبکه یا به صورت دستی با وارد کردن ماسک شبکه در قسمت مربوطه CIDR.
هنگام تأیید ورود موفقیت آمیز داده ها، باید با استفاده از دکمه برگشت به صفحه فهرست شبکه ها بازگردید. در این مرحله، راه اندازی شبکه اصلی را می توان کامل در نظر گرفت.
اتصال گره های شبکه
ابتدا باید سرویس ZeroTier One بر روی گره ای که کاربر می خواهد به شبکه متصل شود نصب شود.
ZeroTier One چیست؟ZeroTier One سرویسی است که روی لپتاپها، رایانههای رومیزی، سرورها، ماشینهای مجازی و کانتینرها اجرا میشود و اتصالات را به یک شبکه مجازی از طریق یک پورت شبکه مجازی، شبیه به سرویس گیرنده VPN، فراهم میکند.
پس از نصب و راه اندازی سرویس، می توانید با استفاده از آدرس های 16 رقمی به شبکه های مجازی متصل شوید. هر شبکه به عنوان یک پورت شبکه مجازی روی سیستم ظاهر می شود که درست مانند یک پورت اترنت معمولی عمل می کند.
پیوندهای توزیع ها و همچنین دستورات نصب را می توان یافت در صفحه سازنده.
می توانید سرویس نصب شده را از طریق یک ترمینال خط فرمان (CLI) با حقوق مدیر/روت مدیریت کنید. در Windows/MacOS همچنین با استفاده از یک رابط گرافیکی. در Android/iOS فقط با استفاده از رابط کاربری گرافیکی.
بررسی موفقیت آمیز بودن نصب سرویس:
CLI:
zerotier-cli status
یافته ها:
200 info ebf416fac1 1.4.6 ONLINE
رابط کاربری گرافیکی:
خود این واقعیت که برنامه در حال اجرا است و وجود یک خط با شناسه Node با آدرس گره در آن.
اتصال یک گره به شبکه:
CLI:
zerotier-cli join <Network ID>
یافته ها:
200 join OK
رابط کاربری گرافیکی:
ویندوز: روی نماد کلیک راست کنید ZeroTier One در سینی سیستم و انتخاب مورد - به شبکه بپیوندید.
سیستم عامل مکینتاش: برنامه را اجرا کنید ZeroTier One در منوی نوار، اگر قبلاً راه اندازی نشده باشد. روی نماد ⏁ کلیک کرده و انتخاب کنید به شبکه بپیوندید.
Android/iOS: + (به اضافه تصویر) در برنامه
در فیلدی که ظاهر می شود، کنترلر شبکه مشخص شده در رابط کاربری گرافیکی را وارد کنید شناسه شبکهو فشار دهید عضویت/افزودن شبکه.
اختصاص آدرس IP به هاست
اکنون به کنترلر شبکه برمی گردیم و در صفحه با لیست شبکه ها پیوند را دنبال کنید اعضا. اگر تصویری مشابه این تصویر را روی صفحه مشاهده کردید، به این معنی است که کنترلر شبکه شما درخواستی برای تایید اتصال به شبکه از گره متصل دریافت کرده است.
در این صفحه همه چیز را فعلاً همانطور که هست رها می کنیم و پیوند را دنبال می کنیم تخصیص IP به صفحه اختصاص دادن آدرس IP به گره بروید:
پس از تعیین آدرس، روی دکمه کلیک کنید پشت به صفحه لیست گره های متصل بازگردید و نام را تنظیم کنید - نام عضو و چک باکس را برای مجوز دادن به گره در شبکه علامت بزنید - مجاز. به هر حال، این چک باکس یک چیز بسیار راحت برای قطع / اتصال از شبکه میزبان در آینده است.
با استفاده از دکمه تغییرات را ذخیره کنید تازه کردن.
بررسی وضعیت اتصال گره به شبکه:
برای بررسی وضعیت اتصال در خود گره، اجرا کنید:
CLI:
برای اتصال گره های باقی مانده، عملیات 1-5 را برای هر یک از آنها تکرار کنید.
بررسی اتصال شبکه گره ها
من این کار را با اجرای دستور انجام می دهم پینگ در دستگاه متصل به شبکه ای که در حال حاضر مدیریت می کنم.
در اسکرین شات کنترلر Web-GUI می توانید سه گره متصل به شبکه را مشاهده کنید:
ZTNCUI - 10.10.10.1 - کنترلر شبکه من با رابط کاربری گرافیکی - VDS در یکی از DCهای RuVDS. برای کار معمولی نیازی به اضافه کردن آن به شبکه نیست، اما من این کار را انجام دادم زیرا می خواهم دسترسی به رابط وب را از بیرون مسدود کنم. بیشتر در این مورد بعدا.
MyComp - 10.10.10.2 - کامپیوتر کار من یک کامپیوتر فیزیکی است
پشتیبان گیری - 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 در رابط کاربری گرافیکی مشتری روی گره.