کانفیگ FirewallD در CentOS

۵خرداد ۱۳۹۶
۶۰
کانفیگ FirewallD در CentOS

همانطور که می‌دانید فایروال FirewallD جایگزین iptables در CentOS 7 و بسیاری از لینوکس‌های نسل جدید شده است. در مقاله قبلی به معرفی فایروال FirewallD پرداختیم و در این مطلب از سری آموزش‌های FirewallD با کانفیگ FirewallD در CentOS در خدمت شما خواهیم بود.

این فایروال که نسخه داینامیک iptables بشمار می‌رود از تنظیمات بسیار خوب و ساده‌ای برخوردار است و برای تنظیم آن شما می‌توانید از دستور firewall-cmd و یا محیط گرافیکی آن استفاده کنید.

در ابتدا شایان ذکر است که این فایروال دارای zone ها و تنظیمات زیادی است و در این مطلب به نحوه تنظیم zone ، پورت فورواردینگ ، کار کردن با سرویس ها و حذف و اضافه کردن پورت ها در خدمت شما خواهیم بود.

کانفیگ FirewallD در CentOS

ست کردن کانفیگ FirewallD در CentOS

برای وارد کردن و اعمال دستورات FirewallD به 2 شکل می‌توان اقدام کرد.

Permanent : هنگامی که از permanent در دستورات خود استفاده می‌کنید ، دستورات در فایل XML فایروال وارد شده ولی تا زمانی که فایروال را reload نکنید یا سیستم ریبوت نشود ، اعمال نمی گردد.

RunTime : هنگامی که دستوری را بدون هیچ سوییچی جهت ست کردن وارد کنید، دستور بلادرنگ اجرا شده ولی پس از Reload و یا ریبوت CentOS حذف می‌گردد.

به عنوان مثال برای اضافه کردن سرویس http در FirewallD به صورت Permanent به شکل زیر دستور وارد می‌شود.

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

حال پس از وارد کردن دستور اول به صورت Permanent ، برای اجرای آن باید دستور زیر را وارد کنید.

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

نکته مهم: هنگام Reload کردن فایروال برای چند لحظه تمام تنظیمات وارد شده برای فایروال متوقف شده و دوباره شروع بکار می‌کنند. ترجیحاً در صورت ترافیک زیاد بر روی سرور دستور را به صورت RunTime و Permanent وارد کنید تا تنظیم شما اعمال شده و پس از ریبوت CentOS همچنان پا برجا باقی بماند.

Zone های FirewallD

zone ها به عنوان یک ساختار از پیش تنظیم شده می‌باشند و شما می توانید آنها را نسبت به شرایط امنیتی و قرار گیری سرور در اینترنت یا شبکه داخلی و یا … انتخاب نمایید.

هر یک از Zone ها برای یک شبکه خاص تنظیم شده‌اند و ترافیک را نسبت به آن تنظیمات کنترل می‌کنند.

Zone پیش فرض در ابتدای فعال سازی فایروال Public می باشد.

Zone ها همچنین می‌توانند بر روی کارت شبکه‌های مختلف تنظیم شوند و هر کارت شبکه و ترافیک آن توسط قوانین یک Zone کنترل شود.

برای دیدن Zone فعال در FirewallD دستور زیر را وارد کنید.

برای تغییر Zone پیشفرض می‌توانید از دستور زیر استفاده نمایید.

برای دیدن کارت شبکه و Zone فعال بر روی آن از دستور زیر استفاده می‌شود.

همچنین برای دیدن تمام تنظیمات Zone مورد نظر از دستور زیر می‌توان بهره برد.

خروجی دستور بالا مشابه تصویر زیر خواهد بود.

کانفیگ FirewallD در CentOS - خروجی دستور تنظیمات zone

با توجه به خروجی در تصویر بالا ، نشان می‌دهد IPv4 و IPv6 در این zone فعال است و پورت‌های 80 ، 2222 و 2323 باز می باشند.

همچنین این Zone بر روی اینترفیس eno16777728 فعال می باشد.

برای دریافت تنظیمات تمام zone ها دستور زیر کاربردی است.

کار با سرویس‌های FirewallD

FirewallD برای سادگی کار مدیران لینوکسی ، تنظیمات سرویس‌هایی را از پیش کانفیگ کرده و شما تنها نیاز است که از نام آنها استفاده کنید تا تنظیمات بر zone مورد نظر اعمال شود.

همچنین شما می‌توانید به دلخواه خود سرویس را معرفی کنید.

فایل تنظیمات تمام سرویس‌ها از پیش تعیین شده در دایرکتوری usr/lib/firewalld/services/ و سرویس‌هایی که کاربران تعریف می‌کنند در دایرکتوری etc/firewalld/services/ قرار دارند.

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

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

Allow و Deny کردن پورت و پروتکل دلخواه در FirewallD

برای دسترسی دادن به یک پورت به مانند پورت 12345 به شکل زیر اقدام کنید.

همچنین برای حذف پورت 12345 که در دستور قبل دسترسی داده شد ، از دستور زیر استفاده می‌گردد.

تفاوت دو دستور قبل تنها در کلمات add و remove است که به ترتیب یک پورت را اضافه و یا حذف می‌کنند.

port forwarding در فایروال FirewallD

برای فوروارد کردن یک پورت به پورتی دیگر همانند دستور زیر می‌توان اقدام کرد.

در مثال بالا پورت 80 به پورت 12345 فوروارد شده است.

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

ابتدا قابلیت masquerade را با دستور زیر در zone مورد نظر فعال کنید.

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

در مثال بالا پورت 80 به پورت 8080 در سرور 192.168.1.1 فوروارد شده است.

در نهایت برای حذف دستور پورت فوروارد بالا از دستور زیر استفاده کنید.

در این آموزش نحوه باز و بستن پورت ها ، اضافه کردن و حذف سرویس ها و همچنین port Forwarding را در FirewallD فرا گرفتید.

در مقالات بعدی به تنظیمات پیشرفته کانفیگ FirewallD در CentOS و آموزش دستورات Rich Rules می‌پردازیم.

امیدواریم آموزش کانفیگ FirewallD در CentOS برای شما مفید واقع شده باشد.

اشتراک گذاری

آبتین حیدرآبادیان

نظرات کاربران

مهدی

۷ خرداد ۱۳۹۶

آذرانلاین عالییههه به همین شکل پیش برید

پاسخ دادن

ارسال نظر

نشانی ایمیل شما منتشر نخواهد شد.
تمام حقوق برای آذرآنلاین محفوظ می باشد.
enamad