صفحه اول > مقالات

 

 

مقدمه اي بر فايروال

فايروال وسيله اي است كه كنترل دسترسي به يك شبكه را بنابر سياست امنيتي شبكه تعريف مي كند.علاوه بر آن از آنجايي كه معمولا يك فايروال بر سر راه ورودي يك شبكه مي نشيند لذا براي ترجمه آدرس شبكه نيز بكار گرفته مي شود.

مشخصه هاي مهم يك فايروال قوي و مناسب جهت ايجاد يك شبكه امن عبارتند از:

1-  توانايي ثبت و اخطار :ثبت وقايع يكي از مشخصه هاي بسيار مهم يك فايروال به شمار  مي شود و به مديران شبكه اين امكان را مي دهد كه انجام حملات را كنترل كنند. همچنين مدير شبكه مي تواند با كمك اطلاعات ثبت شده به كنترل ترافيك ايجاد شده توسط كاربران مجاز بپردازد. در يك روال ثبت مناسب ، مدير مي تواند براحتي به بخشهاي مهم از اطلاعات ثبت شده دسترسي پيدا كند. همچنين يك فايروال خوب بايد بتواند علاوه بر ثبت وقايع، در شرايط بحراني، مدير شبكه را از وقايع مطلع كند و براي وي اخطار بفرستد.

2-  بازديد حجم بالايي از بسته هاي اطلاعات: يكي از تستهاي يك فايروال ، توانايي آن در بازديد حجم بالايي از بسته هاي اطلاعاتي بدون كاهش چشمگير كارايي شبكه است. حجم داده اي كه يك فايروال مي تواند كنترل كند براي شبكه هاي مختلف متفاوت است اما يك فايروال قطعا نبايد به گلوگاه شبكه تحت حفاظتش تبديل شود.عوامل مختلفي در سرعت پردازش اطلاعات توسط فايروال نقش دارند. بيشترين محدوديتها از طرف سرعت پردازنده و بهينه سازي كد نرم افزار بر كارايي فايروال تحميل مي شوند. عامل محدودكننده ديگر مي تواند كارتهاي واسطي باشد كه بر روي فايروال نصب مي شوند. فايروالي كه بعضي كارها مانند صدور اخطار ، كنترل دسترسي مبني بر URL و بررسي وقايع ثبت شده را به نرم افزارهاي ديگر مي سپارد از سرعت و كارايي بيشتر و بهتري برخوردار است.

3-  سادگي پيكربندي: سادگي پيكربندي شامل امكان راه اندازي سريع فايروال و مشاهده سريع خطاها و مشكلات است.در واقع بسياري از مشكلات امنيتي كه دامنگير شبكه هاي مي شود به پيكربندي غلط فايروال بر مي گردد. لذا پيكربندي سريع و ساده يك فايروال ، امكان بروز خطا را كم مي كند. براي مثال امكان نمايش گرافيكي معماري شبكه  و يا ابزراي كه بتواند سياستهاي امنيتي را به پيكربندي ترجمه كند ، براي يك فايروال بسيار مهم است.

4-  امنيت و افزونگي فايروال: امنيت فايروال خود يكي از نكات مهم در يك شبكه امن است.فايروالي كه نتواند امنيت خود را تامين كند ، قطعا اجازه ورود هكرها و مهاجمان را به ساير بخشهاي شبكه نيز خواهد داد. امنيت در دو بخش از فايروال ، تامين كننده امنيت فايروال و شبكه است:

الف- امنيت سيستم عامل فايروال : اگر نرم افزار فايروال بر روي سيستم عامل جداگانه اي كار مي كند، نقاط ضعف امنيتي سيستم عامل ، مي تواند نقاط ضعف فايروال نيز به حساب بيايد. بنابراين امنيت و استحكام سيستم عامل فايروال و بروزرساني آن از نكات مهم در امنيت فايروال است.

ب- دسترسي امن به فايروال جهت مقاصد مديريتي : يك فايروال بايد مكانيزمهاي امنيتي خاصي را براي دسترسي مديران شبكه در نظر بگيرد. اين روشها مي تواند رمزنگاري را همراه با روشهاي مناسب تعيين هويت بكار گيرد تا بتواند در مقابل نفوذگران تاب بياورد.

 

انواع فايروال

انواع مختلف فايروال كم و بيش كارهايي را كه اشاره كرديم ، انجام مي دهند، اما روش انجام كار توسط انواع مختلف ، متفاوت است كه اين امر منجر به تفاوت در كارايي و سطح امنيت پيشنهادي فايروال مي شود.بر اين اساس فايروالها را به 5 گروه تقسيم مي كنند.

1-  فايروالهاي سطح مدار (Circuit-Level): اين فايروالها به عنوان يك رله براي ارتباطات TCP عمل مي كنند. آنها ارتباط TCP را با رايانه پشتشان قطع مي كنند و خود به جاي آن رايانه به پاسخگويي اوليه مي پردازند.تنها پس از برقراري ارتباط است كه اجازه مي دهند تا داده به سمت رايانه مقصد جريان پيدا كند و تنها به بسته هاي داده اي مرتبط اجازه عبور مي دهند. اين نوع از فايروالها هيچ داده درون بسته هاي اطلاعات را مورد بررسي قرار نمي دهند و لذا سرعت خوبي دارند. ضمنا امكان ايجاد محدوديت بر روي ساير پروتكلها ( غير از TCP) را نيز نمي دهند.

2-  فايروالهاي پروكسي سرور : فايروالهاي پروكسي سرور به بررسي بسته هاي اطلاعات در لايه كاربرد مي پردازد. يك پروكسي سرور درخواست ارائه شده توسط برنامه هاي كاربردي پشتش را قطع مي كند و خود به جاي آنها درخواست را ارسال مي كند.نتيجه درخواست را نيز ابتدا خود دريافت و سپس براي برنامه هاي كاربردي ارسال مي كند. اين روش با جلوگيري از ارتباط مستقيم برنامه با سرورها و برنامه هاي كاربردي خارجي امنيت بالايي را تامين مي كند. از آنجايي كه اين فايروالها پروتكلهاي سطح كاربرد را     مي شناسند ، لذا مي توانند بر مبناي اين پروتكلها محدوديتهايي را ايجاد كنند. همچنين آنها مي توانند با بررسي محتواي بسته هاي داده اي به ايجاد محدوديتهاي لازم بپردازند. البته اين سطح بررسي مي تواند به كندي اين فايروالها بيانجامد. همچنين از آنجايي كه اين فايروالها بايد ترافيك ورودي و اطلاعات برنامه هاي كاربردي كاربر انتهايي را پردازش كند، كارايي آنها بيشتر كاهش مي يابد. اغلب اوقات پروكسي سرورها از ديد كاربر انتهايي شفاف نيستند و كاربر مجبور است تغييراتي را در برنامه خود ايجاد كند تا بتوان داين فايروالها را به كار بگيرد.هر برنامه جديدي كه بخواهد از اين نوع فايروال عبور كند ، بايد تغييراتي را در پشته پروتكل فايروال ايجاد كرد.

3-  فيلترهاي Nosstateful packet : اين فيلترها روش كار ساده اي دارند. آنها بر مسير يك شبكه مي نشينند و با استفاده از مجموعه اي از قواعد ، به بعضي بسته ها اجازه عبور مي دهند و بعضي ديگر را بلوكه مي كنند. اين تصميمها با توجه به اطلاعات آدرس دهي موجود در پروتكلهاي لايه شبكه مانند IP و در بعضي موارد با توجه به اطلاعات موجود در پروتكلهاي لايه انتقال مانند سرآيندهاي TCP و UDP اتخاذ مي شود. اين فيلترها زماني مي توانند به خوبي عمل كنند كه فهم خوبي از كاربرد سرويسهاي مورد نياز شبكه جهت محافظت داشته باشند. همچنين اين فيلترها مي توانند سريع باشند چون همانند پروكسي ها عمل نمي كنند و اطلاعاتي درباره پروتكلهاي لايه كاربرد ندارند.

4-  فيلترهاي ٍStateful Packet : اين فيلترها بسيار باهوشتر از فيلترهاي ساده هستند. آنها تقريبا تمامي ترافيك ورودي را بلوكه مي كنند اما مي توانند به ماشينهاي پشتشان اجازه بدهند تا به پاسخگويي بپردازند. آنها اين كار را با نگهداري ركورد اتصالاتي كه ماشينهاي پشتشان در لايه انتقال ايجاد مي كنند، انجام مي دهند.اين فيلترها ، مكانيزم اصلي مورد استفاده جهت پياده سازي فايروال در شبكه هاي مدرن هستند.اين فيلترها مي توانند رد پاي اطلاعات مختلف را از طريق بسته هايي كه در حال عبورند ثبت كنند. براي مثال شماره پورت هاي TCP و UDP مبدا و مقصد، شماره ترتيب TCP و پرچمهاي TCP. بسياري از فيلترهاي جديد Stateful مي توانند پروتكلهاي لايه كاربرد مانند FTP و HTTP را تشخيص دهند و لذا مي تواننداعمال كنترل دسترسي را با توجه به نيازها و سرعت اين پروتكلها انجام دهند.

5-  فايروالهاي شخصي : فايروالهاي شخصي ، فايروالهايي هستند كه بر روي رايانه هاي شخصي نصب مي شوند.آنها براي مقابله با حملات شبكه اي طراحي شده اند. معمولا از برنامه هاي در حال اجرا در ماشين آگاهي دارند و تنها به ارتباطات ايجاد شده توسط اين برنامه ها اجازه مي دهند كه به كار بپردازند نصب يك فايروال شخصي بر روي يك PC بسيار مفيد است زيرا سطح امنيت پيشنهادي توسط فايروال شبكه را افزايش مي دهد. از طرف ديگر از آنجايي كه امروزه بسياري از حملات از درون شبكه حفاظت شده انجام  مي شوند ، فايروال شبكه نمي تواند كاري براي آنها انجام دهد و لذا يك فايروال شخصي بسيار مفيد خواهد بود. معمولا نيازي به تغيير برنامه جهت عبور از فايروال شخصي نصب شده (همانند پروكسي) نيست.

 

موقعيت يابي براي فايروال

محل و موقعيت نصب فايروال همانند انتخاب نوع صحيح فايروال و پيكربندي كامل آن ، از اهميت ويژه اي برخوردار است. نكاتي كه بايد براي يافتن جاي مناسب نصب فايروال در نظر گرفت عبارتند از :

ü       موقعيت و محل نصب از لحاظ توپولوژيكي : معمولا مناسب به نظر مي رسد كه فايروال را در درگاه ورودي/خروجي شبكه خصوصي نصب كنيم. اين امر به ايجاد بهترين پوشش امنيتي براي شبكه خصوصي با كمك فايروال از يك طرف و جداسازي شبكه خصوصي از شبكه عمومي از طرف ديگر كمك مي كند.

ü       قابليت دسترسي و نواحي امنيتي : اگر سرورهايي وجود دارند كه بايد براي شبكه عمومي در دسترس باشند ، بهتر است آنها را بعد از فايروال و در ناحيه DMZ قرار دهيد. قرار دادن اين سرورها در شبكه خصوصي وتنظيم فايروال جهت صدور اجازه به كاربران خارجي براي دسترسي به اين سرورها برابر خواهد بود با هك شدن شبكه داخلي. چون شما خود مسير هكرها را در فايروال باز كرده ايد. در حالي كه با استفاده از ناحيه DMZ ، سرورهاي قابل دسترسي براي شبكه عمومي از شبكه خصوصي شما بطور فيزيكي جدا هستند، لذا اگر هكرها بتوانند به نحوي به اين سرورها نفوذ كنند بازهم فايروال را پيش روي خود دارند.

ü       مسيريابي نامتقارن : بيشتر فايروالهاي مدرن سعي مي كنند اطلاعات مربوط به اتصالات مختلفي را كه از طريق آنها شبكه داخلي را به شبكه عمومي وصل كرده است، نگهداري كنند. اين اطلاعات كمك مي كنند تا تنها بسته هاي اطلاعاتي مجاز به شبكه خصوصي وارد شوند. در نتيجه حائز اهميت است كه نقطه ورود و خروج تمامي اطلاعات به/از شبكه خصوصي از طريق يك فايروال باشد.

ü       فايروالهاي لايه اي : در شبكه هاي با درجه امنيتي بالا بهتر است از دو يا چند فايروال در مسير قرار گيرند. اگر اولي با مشكلي روبرو شود، دومي به كار ادامه مي دهد.معمولا بهتر است دو يا چند فايروال مورد استفاده از شركتهاي مختلفي باشند تا در صورت وجود يك اشكال نرم افزاري يا حفره امنيتي در يكي از آنها ، سايرين بتوانند امنيت شبكه را تامين كنند.