فایروال چیست و چطور کار می کند؟

فایروال سیستمی است که برای تامین امنیت شبکه مورد استفاده قرار می گیرد و با فیلتر سازی شبکه ورودی و خروجی بر اساس قوانین از پیش تعریف شده بر اساس نیاز کاربر مورد استفاده قرار می گیرد. در کل باید در نظر داشته باشید که فایروال می تواند ارتباطات غیر مجاز شبکه را از بین برده و برای ارتباطات مجاز مشکلی ایجاد نخواهد کرد. در نظر داشته باشید که در بیشتر زیرساخت های مربوط به سرور، فایروال به عنوان یک لایه امنیتی شناخته می شود که به صورت ضروری باید مورد استفاده قرار گیرد. در واقع می توان گفت که دیواره آتش می تواند از بروز دسترسی هکر ها به سرور جلوگیری کرده و از بروز تخریب در سرور های شبکه و اینترنت نیز جلوگیری می کند لازم به ذکر هست که لایه های امنیتی در هاست ابری چابکان به جدیدترین تکنولوژی روز دنیا بروزرسانی شده است.

ما در این مقاله قصد داریم در خصوص نحوه کار Firewall با شما صحبت داشته باشیم و همچنین محصولات نرم افزاری و سخت افزاری مانند iptables و FirewallD را به شما معرفی خواهیم کرد. در خصوص بسته های TCP و انواع فایروال ها اطلاعاتی را به شما ارائه خواهیم کرد تا در نهایت بتوانید با دیواره آتش، کاربرد و نحوه کارکرد آن اطلاعات لازم را به دست بیاورید.

بسته های TCP شبکه

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

ترافیک شبکه یا TCP به عنوان بستری برای انتقال بسته ها به شمار می رود و از هدر رفت و گم شدن بسته ها در شبکه جلوگیری می کند. این اطلاعات می تواند شامل داده هایی مانند آدرس های مبداء و مقصد باشد و همچنین اطلاعات مربوط به توالی بسته ها را در خود جای می دهد. داده ها و بارگذاری آن ها در این پروتکل انجام می شود. اطلاعات کنترل برای هر بسته به ما کمک می کند تا از تحویل آن ها به درستی اطمینان داشته باشیم و همچنین عناصر موجود را بر اساس قوانین فایروال ارائه می کند.

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

با انواع فایروال بیشتر آشنا شوید

در این قسمت از مقاله قصد داریم در خصوص سه نوع اصلی فایروال شبکه اطلاعاتی را در اختیار شما قرار دهیم که شامل فیلتر کردن بسته بدون وضعیت، حالت و لایه برنامه می شود.

فیلتر کردن بسته ها یا فایروال های بدون حالت برای بررسی هر بسته در شبکه به صورت مجزا مورد استفاده قرار می گیرند. به این صورت می توانیم انتظار داشته باشیم که وضعیت اتصال برای این دسته از فایروال ها از اهمیتی برخوردار نیست و فقط به صورت انحصاری بسته ها را به صورت جداگانه از لحاظ مجاز یا غیر مجاز بودن مورد بررسی قرار می دهند.

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

دیواره های آتشی که برنامه ها را تجزیه و تحلیل می کنند، زمان انتقال داده یک گام جلوتر بوده و روند اجرای قوانین شبکه را چک کرده و با لیست قوانین اعمال شده مطابقت می دهند. در واقع این سری از فایروال ها برای سرویس ها و برنامه های کاربردی بیشتر مورد استفاده قرار می گیرند و مبتنی بر پروکسی کار می کنند.

علاوه بر سه روش نرم افزاری که در تمامی سرور ها و سیستم عامل های مدرن مورد استفاده قرار می گیرد، به صورت سخت افزاری نیز مانند روتر ها، از وسایل سخت افزاری استفاده می کنیم. ما در ادامه بیشتر در خصوص فایروال های نرم افزاری اطلاعاتی را در اختیار شما قرار خواهیم داد و در صورت لزوم در خصوص محصولات سخت افزاری نیز با شما صحبت می کنیم.

فایروال چکار می کند؟

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

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

  1. پذیرش ترافیک در ورودی جدید و ایجاد شده به رابط عمومی شبکه در پورت 80 و 443 انجام می شود که مربوط به ترافیک HTTP و HTTPS می شود.
  2. ترافیک ورودی را از آدرس های IP به پورت 22 مربوط به SSH انتقال داده شود.
  3. ترافیک ورودی جدید و ثابت از محدوده IP به رابط شبکه خصوصی در پورت 22 مربوط به SSH منتقل شود.

اگر توجه داشته باشید، به عنوان اولین کلمه در هر یک از مثال های بیان شده، پذیرفتن یا رد شدن یا افت دیده می شود و در واقع می توان گفت که این مسئله به عنوان عملی شناخته می شود که می تواند مشخص کند که فایروال باید در چه صورتی ترافیک شبکه را انجام دهد. پذیرش در فایروال را می توان به معنای اجازه داده به ورود ترافیک تعبیر کرد و رد کردن به معنای مسدود کردن مسیر به شمار می رود و خطای غیر قابل دسترسی را نشان می دهد. مابقی قوانین می تواند شامل شرایطی شود که هر بسته باید آن ها را به صورت خصوصی داشته باشد.

همانطور که مشخص است، ترافیک شبکه با لیستی از قوانین مربوطه که در فایروال بیان شده است باید مطابقت داشته باشد. به طور کلی می توان گفت که اگر یک قانون تطبیق داده شود، اقدامات مرتبط به ترافیک شبکه اعمال می شود. مثلا در صورتی که یک کارمند حسابداری در شبکه بخواهد اتصالی از جنس SSH داشته باشد، باید به قانون شماره 3 رجوع شود. بر اساس قانون 2 این ارتباط مسدود می شود و در نهایت مدیر سیستم یا ادمین باید بپذیرد که این دسترسی ایجاد شود.

سیاست های پیش فرض فایروال

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

تصور کنید که یک دیواره آتش بدون هرگونه سیاست های پیش فرض ارائه شود. در صورتی که یک رایانه در خارج از سرور SSH را ارائه دهد. ترافیک وارد شده حذف می گردد چرا که با شرایط و قوانین مطابقت نخواهد داشت.

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

ترافیک ورودی و خروجی

ترافیک شبکه از دید یک سرور می تواند ورودی و خروجی باشد و از این روی فایروال باید بتواند قوانین مجزایی را برای ترافیک ورودی و خروجی در نظر داشته باشد تا بتواند به طور کامل از شبکه محافظت نماید. با ترافیکی که از دیگر سرور ها وارد می شود، باید مانند ترافیک ورودی رفتار شود و ترافیک خروجی، ترافیکی خواهد بود که از سوی سرور تحت حفاظت دیواره آتش ارسال می شود. با وجود این مسئله، مجموعه قوانینی که به صورت خروجی در نظر می گیرد، از بروز ارتباطات ناخواسته جلوگیری می شود و همچنین در صورتی که یک فایل مخرب اجرا شود، جلوی آن گرفته می شود.

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

قوانین خروجی فایروال را چطور تعیین کنیم؟

تصور کنید که فایروال شما به صورت پیش فرض تنظیم شده است تا بتواند ترافیک خروجی را حذف نماید. در این صورت قوانین پذیرش ورودی بدون تکمیل قوانین خروجی بی فایده خواهد بود.

برای این که بتوانیم قوانین فایروال ورودی شماره یک و سه را تکمیل کنیم، باید قوانین امکان برقراری ارتباط مناسب از طریق آدرس ها و پورت ها را تنظیم کنیم. باید در نظر داشته باشید که قوانین فایروال به صورت خروجی باید به درستی تنظیم شود. در ادامه در این خصوص بیشتر در این خصوص با شما صحبت خواهیم داشت :

  1. پذیرش ترافیک خروجی ایجاد شود و به پورت های 80 و 443 مربوط به HTTP و HTTPS انجام شود.
  2. پذیرش ترافیک خروجی ایجاد شود به رابط شبکه خصوصی به پورت 22 مربوط به SSH ارسال شود.

با توجه به این مسئله باید در نظر داشته باشید که قاعده ای برای ترافیکی ورودی حذف شده نداریم و سرور نیازی به برقراری یا تایید اتصال آن وجود ندارد.

ابزارهای نرم افزاری فایروال را بیشتر بشناسید

در قسمت های قبلی نحوه عملکرد یک دیواره آتش را بررسی کردیم. در ادامه برخی از ابزارهای نرم افزاری رایج را بررسی خواهیم کرد که می تواند به ما در راه اندازی یک فایروال کمک کنند. در واقع این ابزار به شما در محافظت بیشتر از شبکه کمک شایانی خواهد داشت.

Iptables

Iptables را می توان به عنوان یک فایروال استاندارد دانست که تقریبا در تمامی توزیع های لینوکس قرار داده شده است و در واقع یک قسمت برای فیلتر شبکه در سطح هسته می باشد. در واقع می تواند پشته شبکه لینوکس را دستکاری نماید. با تطبیق به هر بسته ای که از رابط شبکه عبور می کند، مجموعه ای از قوانین کار می کند.

UFW

UFW مخفف کلمه Uncompiled Firewall شناخته می شود. یک رابط Iptables به شمار می رود و برای ساده سازی فرآیند پیکربندی به شمار می رود و فایروال می تواند طراحی بسیار دقیقی را داشته باشد.

FirewallD

به عنوان یک راه حل برای پیش فرض سازی فایروال در سرور های CentOS7 شاخته می شود. از این ابزار به همراه Iptables برای تنظیم Netfilter نیز استفاده می شود.

File2ban

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

نتیجه گیری

با توجه به تمامی مسائل بیان شده حالا شما باید بدانید که اصولا یک فایروال چیست و چطور کار می کند. در نظر داشته باشید که فایروال ها امروزه به یکی از مهم ترین بخش های شبکه شناخته می شوند و تمامی مسائل بیان شده در این مقاله در واقع به نوعی یک مقدمه بر مبحث فایروال به شمار می رود. دیواره آتش به صورت سخت افزاری و نرم افزاری عملکرد دارد و ما در این مقاله سعی داشتیم که به صورت نرم افزاری این سرویس را بیشتر به شما معرفی کنیم که قطعا می تواند برای شما مفید واقع شود. در صورتی که یک شبکه دارید و به صورت اختصاصی از آن استفاده می کنید، در صورتی که به اینترنت متصل است شما حتما باید از فایروال ها به صورت اختصاصی استفاده داشته باشید. در صورتی که سوالی در این خصوص داشته باشید نیز می توانید با کارشناسان این حوزه در ارتباط باشید و اطلاعات لازم را در این خصوص به دست بیاورید.

امروزه استفاده از فایروال ها به صورت کاملا حرفه ای طراحی می شوند و در تمامی سرویس های چابکان اعم از فضای ذخیره سازی (هاست بکاپ)، میزبانی آسان و دیتابیس ابری نیز فعال می باشند و امکانات بسیاری را شامل می شود که در این مقاله برخی از سرویس ها و اطلاعات مربوط را به شما معرفی کردیم که قطعا می تواند برای شما به عنوان یک ادمین شبکه یا دانشجوی این حوزه مفید واقع شود.

دیدگاه خود را بنویسید:

آدرس ایمیل شما نمایش داده نخواهد شد.

فوتر سایت