در CentOS7 شما نیاز دارید که با فایروال آشنا شوید.
در این مقاله ما می خواهیم درباره اضافه و حذف Rule های اساسی فایروال بحث کنیم. این Rule ها به شما اجازه می دهند به خدماتی که در حال اجرا بر روی سرورتان می باشد دسترسی داشته باشید.
هشدار : هنگامی که با یک سرور Remote کار می کنید و تنظیمات فایروال آن را مدیریت می کنید، باید مراقب باشید که از سرور خارج نشوید. مثلا اگر پورت 22 که مربوط به SSH می باشد را ببندید دیگر نمی توانید از طریق SSH به سرور دسترسی داشته باشید. برای این مواقع شما می توانید تگ دائمی (permanent flag) را حذف کنید که در صورت مواجه با همچین مشکلی با Reboot کردن سرور Rule هایی که ایجاد کرده اید حذف می شوند.
بطور کلی در نرم افزار فایروال سه منطقه وجود دارد Domain Profile ، Private Profile ، Public Profile .
منطقه Domain Profile برای زمانیکه کامپیوتر شما عضو دامنه یک شرکت بزرگ می باشد استفاده می شود. منطقه Private Profile برای یک شبکه خصوصی محلی استفاده می شود و منطقه Public Profil برای زمانی استفاده می شود که کامپیوتر شما عضو یک شبکه محلی عمومی باشد. در CentOS7 منطقه پیش فرض فایروال "Public" می باشد. شما می توانید این مسیر را به /etc/firewalld/firewalld.conf تغییر دهید. اما در حال حاضر ما با توجه به اهداف مقاله ما همان منطقه "Public" را در نظر میگیریم.
باز کردن پورت :
برای باز کردن پورت 80 (Http) در فایروال، شما می توانید از دستور زیر استفاده کنید.
firewall-cmd --permanent --zone=public --add-port=80/tcp
نکته : در دستور بالا با حذف تگ Permanent در صورت مواجه با مشکل با Reboot کردن سیستم Rule هایی که ایجاد کرده اید حذف می شوند.
با استفاده از دستور زیر می توانید تغییرات را در فایروال اعمال کنید:
firewall-cmd –reload
تایید Rule ها :
دستور زیر برای بررسی باز بودن پورت استفاده می شود، این دستور به سادگی با یک بله یا نه بازگشت داده می شود.
firewall-cmd --zone=public --query-port=80/tcp
ایجاد Rule ها با استفاده از نام سرویس ها :
متناوبا شما می توانید با استفاده از نام سرویس ها Rule ها را ایجاد کنید:
firewall-cmd --permanent --zone=public --add-service=http
اکنون می توانید با دستور زیر تغییرات را اعمال نمائید:
firewall-cmd –reload
بررسی پورت سرویس های باز شده:
firewall-cmd --zone=public --query-service=http
مثال های واقعی :
این مراحل یک ورودی دائم از پیکربندی فایروالتان ایجاد می کنید که ورودی اتصالات TCP به پورت 80 TCP از اینترنت را اجازه میدهد.
با استفاده از دستور "firewall-cmd --list-all"می توانید تنظیمات اخیر فایورال خود را مشاهده کنید.
مثال :
firewall-cmd --list-all public (default, active) interfaces: eth0 eth1 sources: services: ssh ports: 80/tcp masquerade: no forward-ports: icmp-blocks: rich rules:
برای حذف Rule یا سرویسی که اضافه کرده اید:
firewall-cmd --zone=public --remove-port=80/tcp
یا
firewall-cmd --zone=public --remove-service=http
سپس با استفاده از دستور زیر از اعمال تغییرات مطمئن شوید :
firewall-cmd –reload
فایروال اجازه می دهد که راحت و آسان قوانین فایروال در CentOS7 را مدیریت کنید. با کمی تمرین می تواند ابزاری مطمئن و امن برای حفظ زیر ساختهای خود داشته باشید.