افزودن یک سرور کلاینت جدید به شبکه ابری خصوصی از طریق cloud-config

16/12/2023 |
Loading...

مقدمه: این آموزش توضیح می‌دهد که چگونه یک سرور کلاینت جدید به یک شبکه ابری خصوصی با گیتوی میزبانی‌شده خود اضافه کنید. در زمان ایجاد سرور، از یک اسکریپت cloud-config استفاده می‌کنیم که یک مسیر جدید به سرور اضافه می‌کند تا تمام ترافیک خروجی به گیتوی میزبانی‌شده (10.0.0.1) ارسال شود. گیتوی میزبانی‌شده سپس این ترافیک را به گیتوی میزبانی‌شده شما منتقل می‌کند. شما به رابط عمومی (بدون آدرس IP عمومی) یا پیکربندی هرگونه مسیر ثابت به گیتوی میزبانی‌شده خود نیاز ندارید. اگر گیتوی شما یک سرور DNS داشته باشد، توسط سرور جدید شما استفاده خواهد شد.

پیش‌نیازها:

  • گیتوی میزبانی‌شده در شبکه ابری خصوصی شما

اصطلاحات مثال:

  • شبکه خصوصی: 10.1.0.0/24
  • گیتوی میزبانی‌شده: 10.1.0.1
  • سرورهای DNS: 185.12.64.3 و 185.12.64.4

مرحله 1 - آماده‌سازی پیکربندی "netplan"

ما می‌خواهیم cloud-config یک فایل (/etc/netplan/51-netcfg.yaml) ایجاد کند تا یک مسیر پیش‌فرض تنظیم کند.

فایل پیکربندی netplan را با استفاده از ویرایشگر متن مورد نظر خود ایجاد یا ویرایش کنید:

network: version: 2 ethernets: ens10: dhcp4: true routes: - to: 0.0.0.0/0 via: 10.1.0.1

در این پیکربندی:

  • ens10 نام رابط شبکه خصوصی شما است.
  • ما باید تمام ترافیک خروجی را به گیتوی میزبانی‌شده (10.1.0.1) ارسال کنیم.

مرحله 2 - آماده‌سازی پیکربندی "resolved"

در این مثال، ما از سرورهای DNS جایگزین استفاده می‌کنیم، اما شما می‌توانید از سرورهای DNS دیگر نیز استفاده کنید. فایل /etc/systemd/resolved.conf را تغییر دهید:

فایل /etc/systemd/resolved.conf را ویرایش کنید:

[Resolve] DNS=185.12.64.3 185.12.64.4

مرحله 3 - ساخت اسکریپت Cloud-Config

حالا باید هر دو پیکربندی از دو مرحله اول را در یک اسکریپت cloud-config ترکیب کنیم. پس از نوشته شدن دو فایل، اسکریپت cloud-config سرور را راه‌اندازی مجدد می‌کند.

یک اسکریپت cloud-config ایجاد کنید، برای مثال، cloud-config.yaml، و محتوای زیر را اضافه کنید:

#cloud-config write_files: - path: /etc/netplan/51-netcfg.yaml permissions: '0644' content: | network: version: 2 ethernets: ens10: dhcp4: true routes: - to: 0.0.0.0/0 via: 10.1.0.1 - path: /etc/systemd/resolved.conf content: | [Resolve] DNS=185.12.64.3 185.12.64.4 runcmd: - reboot

این اسکریپت شامل هر دو پیکربندی netplan و resolved است. این پیکربندی‌ها را نوشته و سپس سرور را راه‌اندازی مجدد می‌کند.

مرحله 4 - ایجاد یک سرور جدید

کنسول ارائه‌دهنده میزبانی ابری را باز کنید و یک سرور جدید اوبونتو 22.04 ایجاد کنید. سرور را فقط به شبکه خصوصی خود اضافه کنید و مطمئن شوید که هیچ رابط عمومی وجود ندارد.

از اسکریپت cloud-config ایجاد شده در "مرحله 3" استفاده کنید. هرگونه تغییر لازم را برای محیط خود اعمال کنید و آن را در جعبه متن پیکربندی "Cloud config" در فرآیند ایجاد سرور جایگذاری کنید. سرور خود را ایجاد کنید و کمی زمان برای راه‌اندازی مجدد آن صبر کنید.

مرحله 5 - تأیید پیکربندی شما

اگر اتصال VPN به گیتوی میزبانی‌شده خود دارید، باید بتوانید از طریق SSH به سرور ایجاد شده وارد شوید.

اگر نه، می‌توانید از کنسول VNC در رابط کاربری ارائه‌دهنده میزبانی ابری استفاده کنید.

سرور DNS را تأیید کنید:

resolvectl status

باید سرور DNS پیکربندی‌شده خود را مشاهده کنید.

مسیر پیش‌فرض را تأیید کنید:

ip route

باید یک مسیر پیش‌فرض مشاهده کنید:

default via 10.1.0.1 dev ens10 proto static onlink

نتیجه‌گیری: شما با موفقیت یک سرور جدید با cloud-config پیکربندی کرده‌اید تا از گیتوی میزبانی‌شده به عنوان مسیر پیش‌فرض برای ترافیک خروجی استفاده کند و از سرورهای DNS خود استفاده کند. این تنظیمات به سرور شما اجازه می‌دهد تا از طریق گیتوی میزبانی‌شده به شبکه خصوصی متصل شود بدون نیاز به رابط عمومی یا مسیرهای ثابت.

دریافت پیشنهادات و تخفیف‌های ویژه!

از جدیدترین تخفیف‌ها، آفرها و پیشنهادات ویژه باخبر شوید.

Update cookies preferences