رزفایل

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

رزفایل

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

تحقیق درباره امنیت در لینوکس

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

لینک دانلود و خرید پایین توضیحات

فرمت فایل word  و قابل ویرایش و پرینت

تعداد صفحات: 34

 

امنیت در لینوکس

لینوکس: امنیت، امنیت، امنیت

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

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

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

می‌توان ادعا کرد که تقریباً هیچ ویروسی برای لینوکس وجود ندارد و این درحالی است که سالیانه بیش از ۱۰۰۰ ویروس و کرم مختلف برای سیستم‌عامل ویندوز ایجاد می‌شود. این بخاطر عدم گسترده بودن لینوکس نیست، (حدود ۷۰ درصد از سایت‌های وب در جهان بر روی سیستم‌عامل لینوکس و سرویس‌دهنده‌ی وب آپاچی درحال اجرا هستند) بلکه بدلیل وجود حفره‌های امنیتی متعدد ویندوز و سیاست انحصارگرایی مایکروسافت است. یعنی چه؟ مایکروسافت طوری رفتار و سیاست‌گذاری کرده است که مشتریان خود را تنها به محصولات خودش عادت دهد. بسیاری از کاربران ویندوز از اینترنت اکسپلورر و آتلوک برای مرور وب و پست الکترونیک استفاده می‌کنند. من به عنوان یک ویروس‌نویس، می‌دانم که اگر ویروسی را برای کاربران ویندوز بنویسم، بر روی کامپیوترهای ۹۰ درصد آنها اثر خواهد کرد. چون اکثراً از IE و Outlook استفاده می‌کنند. ولی در لینوکس چطور؟ در لینوکس شما طیف وسیعی از انتخاب و عدم اجبار دارید. من از مرورگر موزیلا استفاده می‌کنم. دوستی دارم که Konqueror را ترجیح می‌دهد. دیگری از Opera استفاده می‌کند. من از Kmail استفاده می‌کنم. دوستم از Evolution، دیگری از Pine و بعدی از Mutt و برادرم هم از Mozilla Mail. من فقط می‌توانم برای یکی از اینها ویروس بنویسم چون روی بقیه کار نخواهد کرد و عملاً میزان اثر آن اندک خواهد بود. ضمناً هیچیک از ویروس‌هایی که برای ویندوز نوشته شده‌اند، بر روی لینوکس کار نمی‌کنند.

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

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

در سیستمهای مبتنی بر یونیکس مثل لینوکس هر کاربری که مالک یا ایجادکننده‌ی یک فایل یا دایرکتوری باشد خواهد توانست با تعین سطوح دسترسی فایل یا دایرکتوری مربوطه برای دیگر کاربران یا گروههای کاربری آنان را از امکان خواندن و ایجاد تغییر و یا اجرای فایل اجرایی محروم یا بهره‌مند سازد.

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

بطور کلی سه سطح دسترسی برای هر فایل یا دایرکتوری تعریف می‌شود که عبارتست از:

۱ - (Read permission (r یا مجوز خواندن: مجوز خواندن محتوای یک فایل را به یک کاربر می‌دهد و برای دایرکتوریها امکان لیست کردن محتویات داخل دایرکتوری را برای کاربر فراهم می‌سازد.

۲ – (Write permission (wیا مجوز ایجاد تغییرات: امکان ایجاد تغییرات در محتوای فایلها را به کاربر اهدا می‌کند. برای دایرکتوریها این گرینه امکان ایجاد فایل جدید در دایرکتوری یا حذف فایلهای موجود در آن را برای کاربر مهیا می‌سازد حتی اگر این کاربر یا گروه کاربری مالک یا ایجادکننده‌ی اصلی فایل یا دایرکتوری نباشد.

۳ –( eXecute permission (x یا مجوز اجرا: این مجوز در مورد فایلهای اجرایی امکان اجرای فایل را به یک کاربر می‌دهد و در مورد یک دایرکتوری این گزینه امکان ورود به داخل دایرکتوری را به کاربر یا گروه خاص می‌دهد. توجه داشته باشید که این گزینه را با گزینه Read‌ اشتباه نگیرید، چون صرفاً با داشتن مجوز execute‌ و بدون داشتن مجوز read کاربر یا گروه می‌تواند وارد دایرکتوری خاصی شوند ولی امکان خواندن محتویات داخلی آن دایرکتوری بهیچ عنوان برایشان فراهم نخواهد بود.

همیشه ترکیبی از سطوح سه‌گانه مجوزهای فوق‌الذکر قابل استفاده است؛ برای مثال شما در صورت مالکیت یک فایل می‌توانید دسترسی به آنرا صرفاً برای شخص خود تعریف و سایر کاربران و گروهها را ازدیدن یا اجرا و ایجاد تغییر در آن محدود نمایید.

نکته: یک کاربر حتی می‌تواند یک فایل یا دایرکتوری را که مالک و ایجاد کننده‌ی اصلی آن خود اوست برای کاربران دیگر قابل دسترسی و برای خودش غیر قابل دسترسی تعریف کند که به این صورت حتی خودش از کلیه مزایای فایل مربوطه محروم خواهد شد و در آینده هم قادر نخواهد بود تا با ایجاد تغییر مجدداً به آن فایل یا دایرکتوری دسترسی پیدا


دانلود با لینک مستقیم


تحقیق درباره امنیت در لینوکس

تحقیق درباره توزیع کننده های مختلف لینوکس

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

لینک دانلود و خرید پایین توضیحات

فرمت فایل word  و قابل ویرایش و پرینت

تعداد صفحات: 38

 

آشنایی با سیستم عامل لینوکس

RHCE >>>> Red hat Certified Engineer

RHEL >>>> Red hat Enterprise Linux

Fedora is a linux & open source community integration effort.

توزیع کننده های مختلف لینوکس:

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

RedHat

این نسخه به این دلیل که دارای انعطاف زیادی بوده جزء مشهورترین نسخه های لینوکس بوده و دارای طرفداران زیادی می باشد.

این نسخه می تواند هم به عنوان ایستگاه کاری و هم به عنوان سرور استفاده شود.و نصب آن بسیار آسان است.

Mandrake

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

SuSE

این نسخه به آسانی نصب می شودو سخت افزارهای زیادی را به طور خودکار می شناسد. با برنامه های جانبی زیادی ارائه می شود و بسیاری از کاربران حرفه ای از این نسخه استفاده می کنند.

Lindows OS

این نسخه شباهت زیادی به ویندوز دارد و از برنامه های Windows Office نیز پشتیبانی می کندو برای افرادی می باشد که عادت بسیاری به ویندوز دارند.

Fedora

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

Debian

این نسخه برای افراد و شرکتهای مفید است که نیاز به امنیت بالا دارند. برای ایجاد این نسخه از لینوکس افراد زیادی در سرتاسر جهان همکاری دارند.

Knoppix

Knoppix که به صورت یک cd راه انداز میباشدو از روی cd بوت شده و احتیاجی به نصب ندارد. بیشتر قطعات را به صورت خودکار می شناسد.

Slack ware

این نسخه از کرنل 2.4 و از کتابخانه C نسخه 2.2.5استفاده می کندو نصب آسانی داردو دارای برنامه های کاربردی فراوانی می باشد.

Turbo Linux

این نسخه یکی از اعضای United Linux می باشد و برای تجاری و برنامه نویسی پیشنهاد می شود.

شل و مفهوم آن:

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

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

شل انواع گوناگونی دارد مثل BASH –CSH – KSH-TCSHو... برای آگاهی از شلهای موجود در لینوکس می توان دستور زیر را تایپ کرد.

Cat /etc/shells$

هسته سیستم عامل لینوکس

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

 

Kernel.1 : مسؤلیت آن مدیریت بر سخت افزار است. مثل کنترل و تغییرات.

System Service.2 : وظیفه مدیریت حافظه و خدمات را بر عهده دارد.

: Program.3 command prompt دستورات و فرمانها

یکی از خصوصیات سیستم عامل لینوکس open source بودن آن است ، مثل Fedora و Red hat و .....

Fedora یک انجمن برای open souce کردن لینوکس می باشد.

ویژگیهای لینوکس:

: Multi user.1 بیش از یک user میتواند log on شود.

Multi tasking.2: یک کاربر میتواند بیش از یک برنامه یا پردازش اجرایی را همزمان داشته باشد.

3.high security: امنیت بالا

انواع نصب ها برای سیستم عامل لینوکس:

1. text : متنی.

2. gu1 : گرافیکی.

3. N/W : network based

طریقه نصب در مد متنی در ادامه گفته شده است و طریقه نصب گرافیگی به همراه جزوه ضمیمه می باشد.

نکته : برای اینکه بتوانیم linux را در مد گرافیکی نصب کنیم احتیاج به Ram بالاتر از 128 داریم.

لینوکس دارای 7 مد می باشد. 6 مد آن متنی و 1 مد گرافیکی است. که برای متنی 2GB فضا و برای گرافیکی 4GB فضا لازم است.

نکاتی برای نصب لینوکس:

قبل از نصب باید Hard disk خود را آماده کنیم. اگر مثلا فقط کل هارد دیسک را به دو درایو تقسیم کرده ایم ،باید یک درایو را خالی کرده و آن مقدار از حافظه را بدون فرمت کنیم. که برای این کار میتوان از نرم افزار partition magic استفاده کرد.

 

برای نصب لینوکس باید مراحل نصب را به 3 مرحله تقسیم کنیم:

1. /swap : که مقدار آن باید 2 برابر Ram باشد.

IDE : Integrated Device Electronics (Device Identities)

H.D.D:

Linux

1. primary master>>>> /dev/hda

2. primary slave >>>> /dev/hdb

3. secondary master >> /dev/hdc

4. secondary slave >>> /dev/hdd

5. CD-Rom >>> /dev/cd rom

6. printer port >>>> /dev/lp0

7. floppy drive >>>> /dev/fd0 (fd1)

8. USB >>>> /dev/usb0

فرض کنیم بروی سیستم تنها یک هارد داریم و سیستم آن را به عنوانhda بشناسد. حال برای پارتیشن بندی کردن این هارد باید توجه کنیم که یک device در لینوکس حداکثر می تواند تا 4 Primary Partition داشته باشد لذا پارتیشن های منطقی همیشه از 5 شروع می شود. یعنی حتی اگر تعداد primary partition ها کمتر از4 باشد باز لینوکس پارتیشن منطقی را از شماره 5 شروع می کند.

قبل از نصب باید به نکات زیر توجه کرد:

اگر ویندوز را نصب کنیم ، بعد می توانیم لینوکس را نصب کنیم.ولی برعکس نمی شود.

Win98 >> Win xp >> Win server >> linux

برای نصب باید با حروف کوجک بنویسیم.

system administrator ما root می باشد.

GNOME و KDE به عنوان دو استاندارد رومیزی لینوکس مطرح هستند.

GNU: مجموعه ای از نرم افزار مبتنی بر سیستم عامل unix که بنیاد نرم افزار تجاری FSF از آن حمایت میکند. هر کسی میتواند هزینه توزیع و پشتیبانی این مجموعه را دریافت کند اما حق ندارد از اصلاح و توزیع آن توسط دیگری جلوگیری کند.

KDE: بعضی برنامه های کاربردی مانند Kmail ، Email و Konqueror را برای ما فراهم می کند. در واقع نوعی محیط رومیزی بازکد که اساسا آنها را برای ایستگاههای کاری در نظر گرفته بودند و هم اکنون برای linux توسعه یافته است. KDE تامین کننده یک رابط گرافیکی کاربر و چندین کاربر اساسی دیگر است که در ویندوز هم وجود دارد.

مراحل نصب لینوکس:(نصب متنی)

cd شماره 1 را داخل کامپیوتر قرار داده و اجازه میدهیم که به صورت Boot بالا بیاید.

در صفحه اصلی 3 گزینه را می بینیم.

گزینه اول برای نصب لینوکس در مد گرافیکی که اگر میخاهیم باید Enter را بزنیم.

گزینه دوم برای نصب لینوکس در مد متنی که اگر می خواهیم باید در پایین بنویسیم: boot: text و enter را بزنیم.


دانلود با لینک مستقیم


تحقیق درباره توزیع کننده های مختلف لینوکس

تحقیق درباره نصب لینوکس

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

لینک دانلود و خرید پایین توضیحات

فرمت فایل word  و قابل ویرایش و پرینت

تعداد صفحات: 64

 

چکیده:

در این تحقیق شما Red Hat linux را نصب خواهید کرد.

شاید با نصب یک سیستم عامل بر روی کامپیوتر خود آشنا نباشید در این صورت نگران نباشید نصب سیستم عامل Red Hat linux ماهیتا ساده واستفاده از ‌آن آسان می باشد و نیز ما شما را در انجام این کار یاری می دهیم.

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

مقدمه:‌

ابتدا « ابتدا تو را نادیده می گیرند، سپس مسخره ات می کنند و بعد با تو می جنگند. ولی در نهایت پیروزی از آن توست »

«گاندی»

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

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

هنگامیکه خبر استفاده از سیستم عامل Linux را در دولت آلمان شنیدیم و اینکه مایکروسافت حاضر به تخفیف 90% شده تا سیستم عامل Linux توسط دولت آلمان انتخاب نگردد. واقعا شوکه شدیم .

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

تحقیق Red ltat linux9 با هدف راهنمایی و کمک برای نصب Red ltat linux نوشته شده است. در این تحقیق به نحوی جالب و سرگرم کننده نصب Red ltat linux را خواهید آموخت همچنین اطلاعاتی در مورد لینوکس کسب خواهید کرد.

تاریخچه:

آغاز داستان :‌

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

و این چیزی نبود جز فقدانی عمیق در حیطه سیستم های عامل.

داس، امپراطوری کامپیوترهای شخصی را در دست داشت. سیستم عامل بی استخوانی که با قیمت 50000 دلار از یک هکر سیاتلی توسط بیل گیتز ( Bill Gates ) خریداری شده بود و با یک استراتژی تجاری هوشمند، به تمام گوشه های جهان رخنه کرده بود. کاربران PC انتخاب دیگری نداشتند. کامپیوترهای اپل مکینتاش بهتر بودند. ولی قیمتهای نجومی، آنها را از دسترس اکثر افراد خارج می ساخت.

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

بنظر می رسید این راه حل به صورت سیستم عامل MINIX ارائه شد. این سیستم عامل ، که از ابتدا توسط اندرو اس، تاننباوم ( Andrew S. Tanenbaum) پروفسور هلندی، نوشته شده بود به منظور تدریس عملیات داخلی یک سیستم عامل واقعی بود این سیستم عامل برای اجرا روی پردازنده های 8086 اینتل طراحی شده بود و بزودی بازار را اشباع کرد.

بعنوان یک سیستم عامل، MINIX خیلی خوب نبود. ولی مزیت اصلی آن، در دسترس بودن کد منبع آن بود. هر کس که کتاب سیستم عامل تاننباوم را تهیه می کرد، به 12000 خط کد نوشته شده به زبان C و اسمبلی نیز دسترسی پیدا می کرد.

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


دانلود با لینک مستقیم


تحقیق درباره نصب لینوکس

مونو تحولی در برنامه‌نویسی تحت لینوکس

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

لینک دانلود و خرید پایین توضیحات

فرمت فایل word  و قابل ویرایش و پرینت

تعداد صفحات: 8

 

مونو ؛ تحولی در برنامه‌نویسی تحت لینوکس

دات‌نت محدود به نوع خاصی از برنامه‌ها نیست، از این چارچوب می‌توان برای تولید برنامه‌های تحت ویندوز، تحت وب، سرویس‌های مبتنی بر وب و ... استفاده کرد.

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

در شماره‌های‌ قبل، به معرفی یک IDE متن‌باز به نام لازاروس پرداختیم که در واقع، جایگزینی برای دلفی در لینوکس محسوب می‌شد. اما از آنجا که تکنولوژی .NET، بحث روز علم برنامه‌نویسی است، تلاش‌های زیادی نیز از سوی حامیان دنیای اپن‌سورس برای پیاده‌سازی این تکنولوژی در سیستم‌عامل لینوکس انجام شده است. در این مقاله، به بررسی پروژه‌ Mono یا به عبارت دیگر، همان دات‌نت تحت لینوکس خواهیم پرداخت.

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

اما این تعریفی نیست که بیشتر کاربران از .Net دارند. آنچه معمولا به دات‌نت اطلاق می‌شود، برنامه‌نویسی در چارچوب یا FrameWork دات‌نت است. یکی از بزرگ‌ترین مزیت‌های چارچوب دات‌نت، مسئله‌ مستقل از زبان بودن آن است. برنامه‌های کاربردی در چارچوب دات‌نت، می‌توانند به هر زبانی که از این frameWork پشتیبانی می‌کند، نوشته شوند.

این امر، به واسطه‌ وجود یک زبان میانی (IL) فراهم شده است. در هنگام برنامه‌نویسی خارج از چارچوب دات‌نت، کد نوشته شده مستقیما به کد قابل فهم برای CPU کامپایل می‌شود، اما در دات‌نت، برنامه به هر زبانی که نوشته شده باشد، در مرحله‌ اول، به این زبان میانی ترجمه‌ می‌گردد (که در بین تمام زبان‌های این چارچوب مشترک است).

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

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

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

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

البته مهم‌ترین کمبود دات‌نت همین مسئله بود؛ این که فقط به یک سیستم‌عامل تعلق داشت، هرچند مستقل از معماری پردازگر بود. مشکلی که در حال حاضر توسط پروژه‌ Mono در حال مرتفع شدن است. مونو تنها پروژه‌ای نیست که قصد دارد دات‌نت را برای سایر سیستم‌عامل‌ها پیاده‌سازی کند، اما در حال حاضر می‌توان به عنوان کامل‌ترین و امیدوارکننده‌ترین پروژه از آن نام برد.

هدف مونو پیاده‌سازی متن‌بازی از دات‌نت مایکروسافت است. مونو دارای کتابخانه‌ای از کلاس‌ها و توابع است که به سرعت رو به تکمیل شدن می‌رود و نیز کامپایلری برای زبان C دارد و در کنار IDE ویژه‌ خود (MonoDevelop)، ابزار مناسبی را برای برنامه‌نویسی در چارچوب دات‌نت فراهم می‌آورد. توسعه‌دهندگان این پروژه اعلام کرده‌اند که به زودی برای بیشتر زبان‌هایی که نسخه‌ تحت دات‌نت دارند، کامپایلرهایی را ارائه خواهند کرد.

علاوه بر سیستم‌عامل لینوکس، نسخه‌هایی از مونو برای مکینتاش، یونیکس و سولاریس ارائه شده است. این پروژه‌ از سوی کمپانی Novell پشتیبانی مالی و فنی می‌شود. ناول با فعالیت در پروژه‌ مونو، دو هدف را دنبال می‌کند. اول افزایش میزان قابلیت تولید نرم‌افزار، و مهم‌تر از آن، کمک به برنامه‌نویسان دات‌نت تحت ویندوز برای توسعه برنامه‌هایشان در سایر سیستم‌عامل‌ها.


دانلود با لینک مستقیم


مونو تحولی در برنامه‌نویسی تحت لینوکس

تحقیق درمورد مهمترین نقاط آسیب پذیر یونیکس و لینوکس

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

لینک دانلود و خرید پایین توضیحات

فرمت فایل word  و قابل ویرایش و پرینت

تعداد صفحات: 58

 

مهمترین نقاط آسیب پذیر یونیکس و لینوکس ( بخش اول ) سیستم عامل، یکی از عناصر چهار گانه در یک سیستم کامپیوتری است که دارای نقشی بسیار مهم و حیاتی در نحوه مدیریت منابع سخت افزاری و نرم افزاری است . پرداختن به مقوله  امنیت سیستم های عامل ، همواره از بحث های مهم در رابطه با ایمن سازی اطلاعات در یک سیستم کامپیوتری بوده که امروزه با گسترش اینترنت ، اهمیت آن مضاعف شده است . بررسی و آنالیز امنیت در سیستم های عامل می بایست با ظرافت و در چارچوبی کاملا" علمی و با در نظر گرفتن تمامی واقعیت های موجود ، انجام تا از یک طرف تصمیم گیرندگان مسائل استراتژیک در یک سازمان قادر به انتخاب مستند و منطقی یک سیستم عامل باشند و از طرف دیگر امکان نگهداری و پشتیبانی آن با در نظر گرفتن مجموعه تهدیدات موجود و آتی  ، بسرعت و بسادگی میسر گردد .اکثر کرم ها و سایر حملات موفقیت آمیز در اینترنت ، بدلیل وجود نقاط آسیب پذیر در تعدادی  اندک  از سرویس های سیستم  های عامل متداول است . مهاجمان ، با فرصت طلبی خاص خود از روش  های متعددی بمنظور سوء استفاده از نقاط ضعف امنیتی شناخته شده ، استفاده نموده  و در این راستا ابزارهای  متنوع ، موثر و گسترده ای را بمنظور نیل به اهداف خود ، بخدمت می گیرند . مهاجمان ، در این رهگذر متمرکز بر سازمان ها و موسساتی می گردند که هنوز مسائل موجود امنیتی ( حفره ها و نقاط آسیب پذیر ) خود را برطرف نکرده و بدون هیچگونه تبعیضی آنان را بعنوان هدف ، انتخاب می نمایند . مهاجمان بسادگی و بصورت مخرب ،  کرم هائی نظیر : بلستر ، اسلامر و Code Red را در شبکه  منتشر می نمایند. آگاهی از مهمترین نقاط آسیب پذیر در سیستم های  عامل ، امری ضروری است . با شناسائی و آنالیز اینگونه نقاط آسیب پذیر توسط کارشناسان امنیت اطلاعات ، سازمان ها و موسسات قادر به استفاده از مستندات علمی تدوین شده بمنظور برخورد منطقی با مشکلات موجود و ایجاد یک لایه حفاظتی مناسب می باشند. در مجموعه مقالاتی که ارائه خواهد شد ، به بررسی مهمترین نقاط آسیب پذیر یونیکس و لینوکس خواهیم پرداخت . در این راستا ، پس از معرفی هر یک از نقاط آسیب پذیر ، علت وجود ضعف امنیتی ، سیستم های عامل در معرض تهدید ، روش های  تشخیص آسیب پذیری سیستم و نحوه مقابله و یا پیشگیری در مقابل هر یک از نقاط آسیب پذیر ، بررسی می گردد .همزمان با  ارائه مجموعه مقالات مرتبط با  یونیکس ( پنج مقاله ) ، به بررسی مهمترین نقاط آسیب پذیر در ویندوز  ، طی مقالات جداگانه ای خواهیم پرداخت .همانگونه که اشاره گردید ، اغلب تهدیدات و حملات ، متاثر از وجود نقاط آسیب پذیر در سیستم های عامل بوده که زمینه تهاجم را برای مهاجمان فراهم می آورد .  شناسائی و آنالیز نقاط آسیب پذیر در هر یک از سیستم های عامل ، ماحصل  تلاش و پردازش دهها کارشناس امنیتی ورزیده در سطح جهان است و می بایست مدیران سیستم و شبکه در یک سازمان بسرعت با آنان آشنا و اقدامات لازم را انجام دهند.نقاط آسیب پذیر موجود در هر سیستم عامل  که در ادامه به آنان اشاره می گردد ، سندی پویا و شامل دستورالعمل های لازم بمنظور برخورد مناسب با هر یک از نقاط آسیب پذیر و لینک هائی به سایر اطلاعات مفید و تکمیلی مرتبط با ضعف امنیتی است .

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

BIND Domain Name System

Remote Procedure Calls (RPC)

Apache Web Server

General UNIX Authentication Accounts with No Passwords or Weak Passwords

Clear Text Services

Sendmail

Simple Network Management Protocol (SNMP)

Secure Shell (SSH)

Misconfiguration of Enterprise Services NIS/NFS

Open Secure Sockets Layer (SSL)

در بخش اول این مقاله ، به بررسی BIND Domain Name System  وRemote Procedure Calls   (موارد یک و دو)  ، خواهیم پرداخت .

اولین نقطه آسیب پذیر : BIND Domain Name System  نرم افزار BIND ) Berkeley Internet Name Domain) ، در مقیاس گسترده ای و بمنظور پیاده سازی DNS)Domain Name Service) ، استفاده می گردد. BIND ، سیستمی حیاتی است که از آن بمنظور تبدیل اسامی میزبان ( نظیر : www.srco.ir ) به آدرس IP ریجستر شده ،استفاده می گردد .با توجه به استفاده وسیع از BIND  و جایگاه حیاتی آن در یک شبکه کامپیوتری ، مهاجمان آن را بعنوان یک هدف مناسب بمنظور انجام حملات ، خصوصا"  از نوع DoS)Denila Of  Service) انتخاب و حملات متنوعی را در ارتباط با آن انجام داده اند. حملات فوق،از کارافتادن سرویس DNS و عدم دستیابی به اینترنت برای سرویس های مربوطه و میزبانان را می تواند بدنبال داشته باشد. با اینکه پیاده کنندگان BIND ، تلاشی مستمر را از گذشته تا کنون بمنظور برطرف نمودن نقاط آسیب پذیر انجام داده اند ، ولی هنوز تعداد زیادی از نقاط آسیب پذیر قدیمی ، بدرستی پیکربندی نشده و سرویس دهندگان آسیب پذیر در آن باقی مانده است .عوامل متعددی در بروز اینگونه حملات نقش دارد: عدم آگاهی لازم مدیران سیستم در خصوص ارتقاء امنیتی سیستم هائی که بر روی آنان Bind deamon  بصورت غیر ضروری  اجراء می گردد و پیکربندی نامناسب فایل ها ، نمونه هائی از عوامل فوق بوده و  می تواند زمینه  یک تهاجم از نوع DoS  ، یک Buffer Overflow و یا  بروز اشکال در DNS Cache  را بدنبال داشته باشد.از جمله مواردیکه اخیرا" در رابطه با ضعف امنیتی  BIND کشف شده است مربوط به یک تهاجم از نوع DoS است . مقاله CERT Advisory CA-2002-15  جزئیات بیشتری را در این رابطه ارائه می نماید. از دیگر حملات اخیر ، تهاجمی  از نوع Buffer Overflow است . مقاله CERT Advisory CA-2002-19  جزئیات بیشتری را در این رابطه در اختیار قرار می دهد. درتهاجم فوق ، یک مهاجم از نسخه آسیب پذیر پیاده سازی  توابع Resolver مربوط به DNS 


دانلود با لینک مستقیم


تحقیق درمورد مهمترین نقاط آسیب پذیر یونیکس و لینوکس