Firewall In Mikrotik - نسخه قابل چاپ +- Parsi Coders (http://parsicoders.com) +-- انجمن: Network & Internet section (http://parsicoders.com/forumdisplay.php?fid=138) +--- انجمن: Mikrotik (http://parsicoders.com/forumdisplay.php?fid=91) +--- موضوع: Firewall In Mikrotik (/showthread.php?tid=144) |
Firewall In Mikrotik - Reza Moghadam - 05-02-2011 سلام خدمت دوستان عزیزم ... توی این تاپیک هم سعی میکنم خیلی مختصر در مورد فایروال میکروتیک توضیح دهم تا از عملکرد آن مطلع شوید . در میکروتیک چندین Chain وجود دارد . Input بسته هایی که به آدرس خود میکروتیک وارد میشوند ... Forward بسته هایی که از خود میکروتیک عبور میکنند ... Outpout بسته هایی که از میکروتیک تولید میشوند و خارج میشوند ... در نوشتن رول در میکروتیک به صورت دستور شرطی در زبان های برنامه نویسی عمل میکنیم . اگر ( شرط برقرار شود ) آنگاه .... این شرط ها در رول ها همان فیلد هایی میباشند که ما در یک رول داریم مثل : Src-Address آدرس مبدا بسته ( آدرس فرستنده بسته ) Dst-Address آدرس مقصد بسته ( آدرس گیرنده بسته ) Protocol پروتکل مورد نظر ( TCP , UDP , GRE , ... Src-Port پورت مبدا Dst-Port پورت مقصد Any-Port هر پورتی ( رنج پورت های مورد نظر ) In. Interface اینترفیسی که بسته ها از آنها وارد میکروتیک میشود Out. Interface اینترفیسی که بسته ها از میکروتیک خارج میشود Packet Mark بسته هایی با مارک مورد نظر Connection Mark بسته هایی با مارک کانکشن های مورد نظر Routing Mark بسته هایی با مارک روتینگ مورد نظر Connection Type نوع های کانکشن مورد نظر ( شامل برخی پروتکل ها که با NAT شدن مشکل دارند ) Connection State بسته ایی با وضعیت کاکشن مورد نظر ما چندین Connection State متفاوت داریم که شامل : New کانکشن های جدید در حال اجرا شدن Invalid کانکشن های غیر معتبر و باطل شده Related زیر کانکشن ها ، مثلا برای اجرای یک وب پیج یک کامکشن زده میشود و بعد از آن یک کانکشن جدید شکل گرفته میشود تا معبر باشد ( به کانکشم های دیگر نیاز دارد ) مثل پروتکل FTP که از پورت 20 و 21 استفاده میکند ... Established کانکشن هایی که در حال جاضر اجرا میباشند . نکته : از Connection State ها برای بهینه کردن فایروالینگ استفاده میکنیم . این مورد را با مثال میگویم : فرض کنید شما یک رول مینویسید که تمامی بسته های TCP 80 را مارک کند تا صفحات وب را مچ کند ، در این زمان ما بسته های وب را با کانکشن استیت های مختلف داریم مثل New , Established , Related , Invalid و همه این ها وقتی توسط فایروال بخواهند مچ شوند باز زیادی را برای میکروتیک و CPU متحمل میشود . به همین خاطر اگر به عمق قضیه نگاه کنید ، ما فقط قصد داریم بسته های وب را که میخواهند جدیدا شکل بگیرند را مچ کنیم به همین خاطر رول خودمان را بهینه میکنیم ، به این شکل که فایروال فقط بسته های وبی را که در حال شکل گیری هستند ( New State ) را چک کند . در نهایت بعد از مچ شدن یک یا چند شرط مورد نظر ، دارای Action های متفاوت میباشم که آنها هم یک عملی را انحام میدهند و شامل : Accept بسته ها قبول شوند Add Dst To Address List آدرس مقصد بسته را در یک لیست آدرس ذخیره کند Add Src To Address List آدرس مبدا بسته را در لیست آدرس ذخیره کند Drop بسته ها را حذف کند . Jump به یک Chain دیگر منتقل شود Log در صورت مچ شدهن بسته ، یک لوگ ثبت شود ، ( اگر این رول در ابتدا لیست باشد و بسته ایی مچ شود ، به رول دیگر نمیرود ) Passtrouth همانند Log میباشد با این تفاوت که در صورتی که لوگ را ثبت میکند ، به رول های دیگر هم برای مچ کردن میرود Reject علنی بسته رو از بین میبره :دی Return به Chain اصلی بر میگردد Tarpit برو بچه های دیتا تو بعضی روز های خواص ، اینترنت را توی این حالت قرار میدهند تا ما یکمی حال کنیم ! :دی باعص میشود بسته های به مقصد نرسد و در اصل آنقدر سرعت را پایین می آورد که کانکشن به گونه ایی Hold میشود . مثلا اگه برای بستهای وب این اکشن را انتخاب کنیم ، در باز کردن پیچ مشکل پیدا خواهیم کرد و با پیفام Connection Reset مواجه میشودیم و 10000 سال پیج باز نمیشه ! :دی نکته : به جز 3 Chain اصلی که از قبل تعریف شده میباشند ، میتوانیم Chain های جدید را خودمان طراحی کنیم . در صورتی که Chain جدید طراحی کردیم ، برای ارسال بسته ای به آن ، از 2 اکشن Jump و Return استفاده میکنیم . کاربرد آن : برای یهینه سازی در قایروالینگ یک سری چین ها را خودمان تعریف میکنیم تا بروی بسته ها مچ شود ... مثل : در حالت عادی میایم یک رول مینویسم که بسته های TCP را مچ کند ، به همین خاطر تمامی رول ها برای بسته چک میشود . برا بهینه کردن ، یک Chain فقط برای پروتکل های TCP میسازیم ، پس فقط بستهای TCP به آن Chain اراسل میشوند و مچ میشوند . بدین شکل لود به صورت چشمگیری پایین می آید . در صورتی که سوالی رد این زمینه داشتید طرح کنید تا پاسخ دهم ... با آرزوی موفقیت رضا مقدم |