اوبونتوگنو/لینوکس

مدیریت شبکه در اوبونتو

تصور یک سیستم اوبونتو که حداقل یک اتصال شبکه نداشته باشد دشوار است و تصور اینکه چگونه چنین سیستم ایزوله‌ای می‌تواند کاربرد عملی زیادی داشته باشد دشوارتر است. واقعیت ساده این است که اوبونتو برای ارائه خدمات در سطح سازمانی از طریق اتصالات شبکه و اینترنت طراحی شده است. بخش کلیدی یادگیری نحوه مدیریت یک سیستم اوبونتو شامل یادگیری نحوه پیکربندی و مدیریت رابط‌های شبکه نصب شده بر روی سیستم است.

این درس در نظر گرفته شده است تا مروری بر مدیریت شبکه در اوبونتو از جمله سرویس و ابزار NetworkManager به همراه برخی ابزارهای مفید دیگر ارائه دهد.

مقدمه‌ای بر NetworkManager

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

علاوه بر سرویسی که در پس زمینه اجرا می‌شود، NetworkManager ابزارهای زیر را نیز شامل می‌شود:

  • nmcli: ابزاری برای کار با NetworkManager از طریق خط فرمان. این ابزار زمانی مفید است که دسترسی به یک محیط گرافیکی در دسترس نباشد و همچنین می‌تواند در اسکریپت‌ها برای ایجاد تغییرات پیکربندی شبکه استفاده شود.
  • nmtui: یک رابط کاربری مبتنی بر متن برای مدیریت NetworkManager. این ابزار را می‌توان در هر پنجره ترمینال اجرا کرد و اجازه می‌دهد تا با انتخاب منو و وارد کردن داده‌ها، تغییرات ایجاد شود. در حالی که nmtui برای انجام وظایف اساسی مفید است، بسیاری از ویژگی‌های ارائه شده توسط ابزار nmcli را ندارد.
  • nm-connection-editor: یک ابزار مدیریت گرافیکی کامل که به اکثر گزینه‌های پیکربندی NetworkManager دسترسی دارد.
  • GNOME Settings: صفحه شبکه برنامه تنظیمات دسکتاپ گنوم امکان انجام کارهای اساسی مدیریت شبکه را می‌دهد.
  • Cockpit Network Settings: صفحه شبکه رابط وب Covkpit امکان انجام طیف وسیعی از وظایف مدیریت شبکه را می‌دهد.

اگرچه راه های مختلفی برای مدیریت محیط شبکه در یک سیستم اوبونتو وجود دارد، برای اهداف این درس، ما بر روی فرمان nmcli تمرکز خواهیم کرد. در حالی که ابزارهای گرافیکی مطمئنا زمانی مفید هستند که به محیط دسکتاپ دسترسی دارید یا Cockpit فعال شده است، درک رابط خط فرمان برای موقعیت‌هایی که خط فرمان تنها چیزی است که در دسترس است ضروری است. همچنین ابزارهای گرافیکی (شامل Cockpit) شامل تمامی قابلیت‌های ابزار nmcli نمی‌شود.

نصب و فعال کردن NetworkManager

اگر از ایمیج نصب دسکتاپ استفاده شده باشد، NetworkManager باید برای اکثر نصب‌های اوبونتو به‌طور پیش‌فرض نصب شود. از فرمان apt استفاده کنید تا متوجه شوید که آیا باید نصب شود یا خیر:

در صورت لزوم، بسته را به صورت زیر نصب کنید:

پس از نصب بسته، NetworkManager باید فعال شود تا هر بار که سیستم بوت می‌شود، شروع به کار کند:

در نهایت، سرویس را استارت کنید و وضعیت را بررسی کنید تا مطمئن شوید که راه‌اندازی موفقیت‌آمیز بوده است:

فرمان‌های اولیه nmcli

ابزار nmcli به عنوان بخشی از بسته NetworkManager نصب شده است و می‌تواند از خط فرمان با استفاده از سینتکس زیر اجرا شود:

در سینتکس بالا، Object یکی از موارد کلی، شبکه، رادیو، اتصال، مانیتور، دستگاه یا عامل خواهد بود، که همه آنها را می‌توان به چند حرف از کلمه مخفف کرد (به عنوان مثال con، یا حتی فقط حرف c، برای ارتباط). به عنوان مثال، تمام فرمان‌های زیر اطلاعات کمک مربوط به شی دستگاه را خروجی می‌دهند:

برای بررسی وضعیت کلی NetworkManager در سیستم، از فرمان زیر استفاده کنید:

برای بررسی وضعیت دستگاه‌های نصب شده روی یک سیستم می‌توان از فرمان زیر استفاده کرد:

خروجی همچنین ممکن است با استفاده از گزینه -p (pretty) اصلاح شود تا خروجی برای انسان پسندیده‌تر شود:

برعکس، گزینه -t ممکن است برای کوتاه‌تر کردن خروجی و مناسب‌تر کردن خروجی برای پردازش خودکار استفاده شود:

از خروجی وضعیت می بینیم که سیستم دارای دو دستگاه فیزیکی نصب شده است، یکی اترنت و دیگری یک دستگاه WiFi.

ورودی‌های bridge (virbr) دستگاه‌های مجازی هستند که برای ارائه شبکه برای ماشین‌های مجازی استفاده می‌شوند (موضوع مجازی‌سازی در دروس آتی پوشش داده می‌شود). رابط Loopback یک دستگاه مجازی ویژه است که به سیستم اجازه می‌دهد با خود ارتباط برقرار کند و معمولا برای انجام عیب‌یابی شبکه استفاده می‌شود.

هنگام کار با NetworkManager، درک تفاوت بین یک دستگاه و یک اتصال مهم است. همانطور که در بالا توضیح داده شد، یک دستگاه یک دستگاه شبکه فیزیکی یا مجازی است در حالی که یک اتصال یک پیکربندی شبکه است که دستگاه به آن متصل می‌شود.

فرمان زیر اطلاعات مربوط به اتصالات پیکربندی شده در سیستم را نمایش می‌دهد:

از خروجی بالا، می‌بینیم که دستگاه WiFi (wlxc83a35cad517) به یک شبکه بی‌سیم به نام zoneone متصل است در حالی که دستگاه اترنت (eno1) به یک اتصال به نام Wired Connection 1 متصل است. NetworkManager علاوه بر zoneone، دو مورد را نیز فهرست کرده است. سایر اتصالات WiFi به نام zonetwo و zonethree که در حال حاضر هیچ یک از آن‌ها دستگاه متصل نیستند.

برای پیدا کردن آدرس IP اختصاص داده شده به یک اتصال، ابزار IP را می‌توان با گزینه آدرس استفاده کرد:

این را نیز می‌توان به اختصار بیان کرد:

فرمان ip اطلاعات تمام دستگاه‌های شناسایی شده در سیستم را خروجی می‌دهد. خروجی بالا نشان می‌دهد که به دستگاه WiFi آدرس IP 192.168.1.121 اختصاص داده شده است.

اگر فقط می‌خواستیم اتصالات فعال را لیست کنیم، دستور nmcli می‌توانست با گزینه -a استفاده شود:

برای تغییر اتصال دستگاه WiFi از zoneone به zonetwo، می‌توانیم فرمان زیر را اجرا کنیم:

-ask باعث می شود nmcli از کاربر بخواهد رمز عبور شبکه WiFi را وارد کند. برای قرار دادن رمز WiFi در خط فرمان (مخصوصا اگر فرمان در یک اسکریپت اجرا شود مفید است)، از گزینه رمز عبور استفاده کنید:

ابزار nmcli همچنین ممکن است برای اسکن شبکه‌های WiFi موجود به شرح زیر استفاده شود:

اتصال فعال فعلی را می‌توان به صورت زیر غیرفعال کرد:

به طور مشابه، یک اتصال غیرفعال را می‌توان در هر زمان بکاپ گرفت:

هنگامی که یک اتصال قطع می‌شود، NetworkManager به طور خودکار اتصال دیگری را جستجو می‌کند، آن را فعال می‌کند و به دستگاهی که اتصال قبلی به آن برقرار شده است اختصاص می‌دهد. برای جلوگیری از استفاده از اتصال در این شرایط، گزینه autoconnect را به صورت زیر غیرفعال کنید:

فرمان زیر ممکن است برای به دست آوردن اطلاعات اضافی در مورد یک اتصال خاص استفاده شود. این شامل مقادیر فعلی برای تمام ویژگی‌های اتصال است:

همه این ویژگی‌ها را می‌توان با استفاده از nmcli با گزینه modify با استفاده از سینتکس زیر تغییر داد:

کار با پروفایل اتصال (Connection Profile)

تا اینجا ما استفاده از اتصالات را بدون توضیح نحوه پیکربندی یک اتصال بررسی کرده‌ایم. پیکربندی یک اتصال به عنوان پروفایل اتصال نامیده می‌شود و در فایلی در دایرکتوری /etc/NetworkManager/system-connections ذخیره می‌شود که محتوای آن ممکن است به شرح زیر باشد:

هر یک از فایل‌ها یک فایل پیکربندی رابط است که حاوی مشخصات اتصال برای اتصال مربوطه است.

به عنوان مثال، محتویات ارتباط فرضی منطقه‌ای را در نظر بگیرید:

این فایل حاوی اطلاعات اولیه در مورد اتصال، از جمله نوع (WiFi)، و کلید رمز عبور SSID و WPA برای شبکه WiFi است. برای هر دو IPV4 و IPV6، ویژگی روش روی خودکار تنظیم شده است (به عبارت دیگر آدرس IP برای اتصال به صورت پویا با استفاده از DHCP به دست می‌آید). تغییرات در پروفایل اتصال را می توان با اصلاح این فایل و فرمان به nmcli برای بارگذاری مجدد فایل های پیکربندی اتصال اعمال کرد:

پروفایل های اتصال جدید را می‌توان به صورت دستی یا به صورت خودکار توسط nmcli ایجاد کرد. به عنوان مثال، فرض کنید یک دستگاه شبکه جدید روی سیستم نصب شده است. هنگامی که این اتفاق می‌افتد، سرویس NetworkManager سخت‌افزار جدید را شناسایی کرده و یک دستگاه برای آن ایجاد می‌کند. در مثال زیر، نام enp0s8 به دستگاه جدید اختصاص داده شده است:

NetworkManager به طور خودکار دستگاه را شناسایی کرد، آن را فعال کرد و آن را به اتصالی به نام “Wired Connection 2” اختصاص داد. این یک اتصال پیش‌فرض است که ما هیچ کنترل پیکربندی روی آن نداریم زیرا هیچ فایل پیکربندی رابطی برای آن در /etc/NetworkManager/systemconnections وجود ندارد. مراحل بعدی حذف اتصال Wired Connection 2 و استفاده از nmcli برای ایجاد یک اتصال جدید و اختصاص آن به دستگاه است. فرمان حذف یک اتصال به صورت زیر است:

در مرحله بعد، nmcli را می‌توان برای ایجاد یک پروفایل اتصال جدید که با یک آدرس IP ثابت یا یک آدرس IP پویا که از یک سرور DHCP به دست آمده است، پیکربندی شده استفاده کرد. برای ایجاد یک پروفایل اتصال پویا با نام dyn_ip، از فرمان زیر استفاده می‌شود:

پس از ایجاد اتصال، فایلی به نام dyn_ip به دایرکتوری /etc/ NetworkManager/system-connections اضافه می‌شود و به صورت زیر خوانده می‌شود:

بررسی وضعیت دستگاه اکنون باید تایید کند که دستگاه enp0s8 اکنون از پروفایل اتصال dyn_ip استفاده می‌کند:

در این مرحله شایان ذکر است که دستگاه enp0s3 همچنین از یک پروفایل اتصال پیش‌فرض استفاده می‌کند که هیچ فایل رابطی برای تغییر تنظیمات اتصال برای آن وجود ندارد. مراحل مشابهی که برای ایجاد پروفایل dyn_ip استفاده می‌شود را می‌توان برای دستگاه enp0s3 نیز استفاده کرد. به عنوان مثال، برای ایجاد یک اتصال به نام static_ip یک آدرس IP ثابت (در این مورد ۱۹۲٫۱۶۸٫۱٫۲۰۰) اختصاص داده شده به دستگاه enp0s3، از فرمان زیر استفاده می شود (در نظر داشته باشید که اگر از راه دور از طریق Wired به سیستم متصل شده باشید. رابط اتصال ۱ اتصال را از دست خواهید داد):

فایل static_ip مربوطه به صورت زیر خوانده می‌شود:

فرمان add یک اتصال جدید ممکن است کمی تغییر کند تا آدرس های ثابت IPv4 و IPv6 را نیز اختصاص دهد:

ویرایش تعاملی

این ابزار علاوه بر استفاده از nmcli با گزینه‌های خط فرمان، یک حالت تعاملی نیز دارد که می‌تواند برای ایجاد و تغییر پروفایل‌های اتصال استفاده شود. رونوشت زیر، برای مثال، حالت تعاملی را نشان می‌دهد که برای ایجاد یک اتصال اترنت جدید به نام demo_con استفاده می‌شود:

رونوشت زیر، از سوی دیگر، پروفایل اتصال static_ip ایجاد شده قبلی را برای استفاده از یک آدرس IP ثابت متفاوت با آدرسی که در ابتدا مشخص شده بود، تغییر می‌دهد:

پس از اصلاح یک اتصال موجود، به یاد داشته باشید که به NetworkManager دستور دهید تا پروفایل‌های پیکربندی را مجددا بارگیری کند:

هنگام استفاده از حالت تعاملی، دانستن این نکته مفید است که یک سیستم راهنمای داخلی گسترده برای یادگیری نحوه استفاده از ابزار موجود است. با تایپ کمک یا ? در اعلان nmcli >:

پیکربندی مجوزهای NetworkManager

NetworkManager علاوه بر آسان‌تر کردن مدیریت شبکه‌ها در اوبونتو، اجازه می‌دهد تا مجوزهایی (پرمیژن‌هایی) برای اتصالات مشخص شود. برای مثال، فرمان زیر یک پروفایل اتصال را به حساب‌های root و کاربری به نام‌های john و caitlyn محدود می‌کند:

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

علاوه بر این، فقط کاربرانی که مجوز دارند می‌توانند تغییراتی در وضعیت یا پیکربندی اتصال ایجاد کنند.

خلاصه

مدیریت شبکه در اوبونتو توسط سرویس NetworkManager انجام می‌شود. NetworkManager یک شبکه را متشکل از دستگاه‌ها و اتصالات رابط شبکه می‌بیند. یک دستگاه شبکه می‌تواند یک اترنت فیزیکی یا دستگاه WiFi یا یک دستگاه مجازی باشد که توسط مهمان ماشین مجازی استفاده می‌شود. اتصالات نشان‌دهنده شبکه‌ای است که دستگاه‌ها به آن متصل می‌شوند و توسط پروفایل‌های اتصال پیکربندی می‌شوند. یک پروفایل پیکربندی، در میان تنظیمات دیگر، مشخص می‌کند که آیا اتصال یک آدرس IP ثابت یا پویا، آدرس IP هر دروازه‌ای که توسط شبکه استفاده می‌شود و اینکه آیا اتصال باید به طور خودکار هر بار که سیستم راه‌اندازی می‌شود برقرار شود یا خیر، مشخص می‌کند.

NetworkManager را می توان با استفاده از تعدادی ابزار مختلف از جمله ابزارهای خط فرمان nmcli و nmtui، ابزار گرافیکی nm-connection-editor و بخش تنظیمات شبکه در رابط وب Cockpit مدیریت کرد. به طور کلی، ابزار خط فرمان nmcli بیشترین ویژگی‌ها و انعطاف‌پذیری را ارائه می‌دهد.

منبع: answertopia.com

فرشید نوتاش حقیقت

همیشه نیازمند یک منبع آموزشی فارسی در حوزه نرم‌افزارهای آزاد/ متن‌باز و سیستم‌عامل گنو/لینوکس بودم. از این رو این رسالت رو برای خودم تعریف کردم تا رسانه «محتوای باز» رو بوجود بیارم.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.

دکمه بازگشت به بالا