مقایسه سرورهای لینوکس و ویندوز

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

در صورت استفاده از زبانهای برنامه نویسی وب وابسته به  Server Side Scripting مثل php, coldfusion, jsp, cgi (c, perl, python, tcl, ...), asp, asp.net  اولین مطلب مهم این است که سرورهای لینوکس asp و asp.net را که جزو فناوریهای مایکروسافت هستند پشتیبانی نمی‌کنند. البته برای پشتیبانی از asp در لینوکس اقداماتی انجام شده ولی فعلا بیشتر در حد پروژه های در دست اجرا میباشد. پس اگر می‌خواهید سایتی با این دو تکنولوژی راه‌اندازی کنید، اصولا بی معنی است که بخواهید لینوکس و ویندوز را با هم مقایسه کنید چون حتما باید وب سرور شما ویندوز باشد. در مورد بقیه موارد گفته شده می‌ توان گفت که هر دو سرور لینوکس و ویندوز از پشتیبانی خوبی در این زمینه برخوردارند . اگر بخواهیم با یک مقایسه کلی بگوئیم که از بین ویندوز و لینوکس کدامیک کارائیperformance   بهتری برای هر یک این زبان‌ها دارند،‌ باید اذعان کرد که لینوکس در این زمینه بهتر عمل می‌کند.

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

در یک جمع بندی کلی باید بگویم که اگر asp , asp.net استفاده می‌کنید، فقط میتوانید سرور ویندوز را انتخاب کنید،ولی در سایر موارد لینوکس گزینه بهتر خواهد بود .
در خصوص پایگاه‌های داده  و بانکهای اطلاعاتی بایدگفت که بجز بانکهای اطلاعاتی  access

که خیلی ساده و کم اهمیت هستند و فقط مختص سیستم عامل ویندوز میباشند مابقی تکنولوژیهای رایج در ایجاد و مدیریت پایگاههای داده معمول شاملSQL server   مختص سرورهای ویندوز، و  MySQL  مخصوص سرورهای لینوکس میباشند. بهترین و موفق‌ترین پایگاه داده بدون شک محصولات شرکت Oracle است که به دلیل قیمت بالا فقط در سایت‌ها و سرورهایی استفاده میشود که نیاز به دیتابیس هائی با کارائی و حجم بسیار بالا وجود داردو در مورد وب سایتهای معمولی یا متوسط بدلیل گرانی بیش از حد قابل استفاده نخواهد بود . البته ناگفته پیداست که SQL Server فقط در سرورهای ویندوز قابل استفاده میباشد و بقیه database ها معمولا در هر دو نوع سرور لینوکس و ویندوز قابل استفاده هستند .

مباحث پیشرفته در خصوص کارائی و  مقایسه MySQL با SQL-Server  نیاز به کار کارشناسی زیادی دارد ولی در مجموع در هر دو نوع سرور لینوکس و ویندوز بانکهای اطلاعاتی مورد بررسی دارای کارائی مشابهی میباشند .

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

 یکی از دلایل ضعف ویندوز یکپارچه‌تر بودن این سیستم‌عامل نسبت به لینوکس و open source نبودن این سیستم عامل میباشد. و یک نکته بسیار ظریف در این زمینه این است که وقتی یک مشکل امنیتی یا به اصطلاح باگBUG در ویندوز کشف میشود معمولا کاربران و مدیران سرور باید مدتی منتظر بمانند تا  service pack یا patch برای این ضعف امنیتی از طرف مایکروسافت ارائه شود (چون کارشناسان نمی توانند خودشان مشکل را حل کنند) و این موضوع یک محدوده زمانی مناسب برای هکرها بوجود می آورد تا ازنقطه ضعفهای کشف شده کمال استفاده را برده و یک  سرور را هر طوریکه بخواهند مورد تاخت و تاز و هجوم خود قرار دهند . ولی در سیستم‌عامل‌های Open-Source مثل لینوکس در صورت داشتن دانش کافی با کمی تغییر در کد ها ی منبع سیستم عامل و کامپایل کردن مجدد آن معمولا میتوان مشکل را حل کرد .

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

اصولا برای هر نسخه منتشر شده ویندوز معمولا حداقل یک باگ پیدا میشود که معمولا باآن میتوان به سیستم نفوذ کرد و به منابع آن دست‌یافت و این باعث شده  که مایکروسافت هم گاهی یک سری از نسخه‌های ویندوز را به صورت رسمی از رده خارج کند (مثلا ویندوز nt 4.0 که نسخه قبل از ویندوز ۲۰۰۰ بوده و ‌ عملا دیگر برای آن service pack  ارائه نمی‌شود و اصولا اگر سروری از نسخه ۴.۰ ویندوز ان تی NT4.0  استفاده کند قطعا به راحتی قابل نفوذ خواهد بود .

 مشکلات امنیتی لینوکس معمولا از اسکریپت‌هائی ناشی میشود که به صورت پیش‌فرض توسط خیلی از سرور‌ها نصب میشوند . البته این مشکلات را میتوان براحتی و با disable کردن یا uninstall نمودن برنامه های غیر ضروری از روی سرور یا نصب آخرین ورژن برنامه ها حل نمود .

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