PDA

View Full Version : پیاده سازی فایروال مبتدی



jaykob
جمعه 16 تیر 1391, 09:45 صبح
با سلام خدمت دوستان

من در رابطه با نوشتن فایروال در c# خیلی جستجو کردم داخل همین فروم هم به نتیجه قابل درکی برای من نرسیده بودند به همین جهت خواستم که از شما دوستان راهنمایی بگیرم .

اولین نکته اینه که کلا با c# می شه همچنین کاری رو کرد بعد در قسمت گسترش مشکل نداریم ؟ یعنی اینکه به دلیل اینکه داریم با لایه های پایین کار می کنیم c++ بهتر نمی تونه عمل کنه ؟ ولی در کل من ترجیح می دم اگه بشه با همون c# این کار رو بکنم مباحثی مثل اضافه کردن rule و drop , forward و کنترل ترافیک شبکه و ...

از دوستان و استاتید تقاضا می کنم که راهنمایی جامعی بکنن که اگر با C# کار کنم چه مباحثی رو باید یاد بگیرم و در غیر اینصورت چه کارهایی را باید انجام بدم .

با تشکر

Esmail Solhkhah
جمعه 16 تیر 1391, 21:16 عصر
برای این تیپ کارها زبانهای Native بهتره . البته میتونید هسته رو Native بنویسید و GUI رو با سی شارپ.

قبلا با یکی از دوستان یه همچین بحثی داشتیم.

[/URL][URL]http://barnamenevis.org/showthread.php?326862-%D9%86%D9%88%D8%B4%D8%AA%D9%86-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%DB%8C-%D9%81%D8%A7%DB%8C%D8%B1%D9%88%D8%A7%D9%84-%D9%86%D8%B1%D9%85-%D8%A7%D9%81%D8%B2%D8%A7%D8%B1%DB%8C (http://barnamenevis.org/showthread.php?326862-%D9%86%D9%88%D8%B4%D8%AA%D9%86-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%DB%8C-%D9%81%D8%A7%DB%8C%D8%B1%D9%88%D8%A7%D9%84-%D9%86%D8%B1%D9%85-%D8%A7%D9%81%D8%B2%D8%A7%D8%B1%DB%8C/page4)

موفق باشید.

jaykob
جمعه 16 تیر 1391, 21:37 عصر
برای این تیپ کارها زبانهای Native بهتره . البته میتونید هسته رو Native بنویسید و GUI رو با سی شارپ.

قبلا با یکی از دوستان یه همچین بحثی داشتیم.

[/URL][URL]http://barnamenevis.org/showthread.php?326862-%D9%86%D9%88%D8%B4%D8%AA%D9%86-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%DB%8C-%D9%81%D8%A7%DB%8C%D8%B1%D9%88%D8%A7%D9%84-%D9%86%D8%B1%D9%85-%D8%A7%D9%81%D8%B2%D8%A7%D8%B1%DB%8C (http://barnamenevis.org/showthread.php?326862-%D9%86%D9%88%D8%B4%D8%AA%D9%86-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%DB%8C-%D9%81%D8%A7%DB%8C%D8%B1%D9%88%D8%A7%D9%84-%D9%86%D8%B1%D9%85-%D8%A7%D9%81%D8%B2%D8%A7%D8%B1%DB%8C/page4)

موفق باشید.

سلام

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

پس نظر شما اینه که مثلا هسته رو با c++ بنویسیم و حالا رابط کاربری رو با C#
بعد من به یادگیری چه چیزهای دیگه ای دارم ؟
wfp روباید یاد بگیرم ؟ می دونم واسه فیلترینگ هست اما می شه توضیح بدید که API هست یا چیز دیگه ؟ من داخل C++ بهش دسترسی دارم ؟ یا باید اضافه بشه ؟ من واسه ویندوز سرور 2003 و 2008 می خوام با ورژن ها مشکلی نداره استفاده از WFP ؟
ریز تر اگر بگید که چی باید برم دنبالش که بتونم این کار رو انجام بدم ممنون می شم

با تشکر

Esmail Solhkhah
شنبه 17 تیر 1391, 00:00 صبح
پس نظر شما اینه که مثلا هسته رو با C++‎ بنویسیم و حالا رابط کاربری رو با C#‎

البته اگه با ++C کار کردید بهتره هم هسته هم GUI رو با استفاده از اون پیاده سازی کنید.



بعد من به یادگیری چه چیزهای دیگه ای دارم ؟

نمیدونم چقدر با مفاهیم اینترنال شبکه آشنا هستید (جسارت نباشه ولی پیش نیاز مفاهیم شبکه هست ، البته اگه آشنایی دارید که هیچ)

آشنایی با ساختار سیستم عامل (کتاب Windows Internals ویرایش 4 بیس قضیه و ویرایش 5 هم مفاهیم جدید در سیستم عاملهای Vista به بالا رو توضیح داده)



می دونم واسه فیلترینگ هست اما می شه توضیح بدید که API هست یا چیز دیگه ؟

API و سرویس در دوسطح User و Kernel


من داخل C++‎ بهش دسترسی دارم ؟ یا باید اضافه بشه ؟
با یه کامپایلر معمولی نه ، نیاز به Library ها و فایلهای سرآیند این پلتفرم دارید که با نصب SDK شما میتونید از اونا استفاده کنید. هرچند DLL های اون رو هم میتونید استفاده کنید.
معروفترینش FWPUCLNT.DLL

برای کار در سطح کرنل نیاز به نصب WDK (http://msdn.microsoft.com/en-us/windows/hardware/gg487428) خواهید داشت .


من واسه ویندوز سرور 2003 و 2008 می خوام با ورژن ها مشکلی نداره استفاده از WFP ؟
از Vista به بعد رو ساپورت میکنه.


ریز تر اگر بگید که چی باید برم دنبالش که بتونم این کار رو انجام بدم ممنون می شم

برای WFP فعلا مرجع فقط MSDN (http://msdn.microsoft.com/en-us/library/windows/desktop/aa366510%28v=vs.85%29.aspx)
یه نمونه خوب (http://www.codeproject.com/Articles/29026/Firewall-using-Vista-s-Windows-Filtering-Platform) برای شروع کار هم هست که با استفاده از User Mode API کار کرده در حد آشنایی با مفاهیم اولیه خوبه

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

موفق باشید.

jaykob
شنبه 17 تیر 1391, 07:41 صبح
خیلی ممنون از پاسخ کاملتون که ریز به ریز توضیح دادید

من این WFP رو نمی تونم جدا به طور مثال روی windows 2003 نصب کنم که بتونم ازش استفاده کنم ؟ چون من می خوام روی این ورژن ها کار کنم ممنون می شم یک راهکار کامل به من بدید که روی این ورژن های سیستم عامل مشکل نخورم برام نصب هر چیزی به عنوان همره حتی اگر حجم زیادی داشته باشه ایرادی نداره مهم برام انجام این کار هستش

اون کتاب هایی رو هم که فرمودید لطف می کنید اگر لینک های دانلودش رو واسم پیام خصوصی کنید ممنون می شم

با تشکر

Direlap
شنبه 17 تیر 1391, 12:25 عصر
خوب ببخشید که دارم تو تاپیک شما این سوالو میپرسم . دیدم بحث مرتبطیه بپرسم .

اگه کسی بخواد تمام کاراشو با همین سی شارپ انجام بده چکاری باید انجام بده ؟ حتی اگه برنامش ضعیف هم باشه عیبی نداره فقط با این سی شارپ نوشته بشه .

ممنونم .

homan1374
شنبه 17 تیر 1391, 17:39 عصر
شما نمیتونید با #C فایروال،آنتی ویروس،درایو،سیستم عامل و....از این قبیل برنامه ها بنویسید...این چنین برنامه هایی نیاز دارن به طور مستقیم با سیستم در ارتباط باشن چنین برنامه هایی رو با زبان های برنامه نویسی سیستمی مثل ++C/C و یا اسمبلی مینویسن....سی شارپ یک زبان برنامه نویسی کاربری هست و برای نوشتن برنامه های کاربردی(وب و دسکتاپ) استفاده میشه...