چند نکته درباره سرورهای مجازی
تاریخ نشر:باسمه تعالی
همین وبسایتی که در حال ملاحظه آن هستید تا چند روز گذشته روی یک سرور مشترک، و یا به اصطلاح Shared Hosting، بود. اما اکنون به یک سرور مجازی خصوصی، یا VPS، منتقل شده است. دلیل این انتقال امکانات بیشتری است که استفاده از سرورهای مجازی آن را ممکن میکند. شاید نقل مختصری از آن برای دوستان مفید باشد.
بسیاری از وبسایتهای موجود روزانه در حد چند ده بازدیدکننده دارند و حجم واقعی مراجعه به آنها بالا نیست. اگر قرار باشد برای هر کدام از این سایتها یک سرور اختصاصی در نظر بگیریم، توان بالایی را تلف کرده ایم. حتی یک کامپیوتر قدیمی و کند هم میتواند یک بازدید در هر ثانیه را جوابگو باشد و حدود ۳۶۰۰ بازدید در ساعت و یا ۱۰۰ هزار بازدید در روز را مدیریت کند. حال اگر قرار باشد این کامپیوتر فقط یک وبسایت را، که روزی ۳۰ بازدید کننده دارد، پشتیبانی کند حجم عمده توانش تلف شده است. بنابراین استفاده از سرورهای مشترک قابل توجیه است. بعضی از این سرورها حدود ۴ تا ۵ هزار وبسایت را همزمان نگهداری میکنند.
سرور مشترکی که تا بحال از آن استفاده میکردم امکانات خوبی را عرضه میکرد. پهنای باند نامحدود، حجم هارددیسک نامحدود، تعداد سایت و دیتابیس نامحدود به ازای حدود ماهی ۹ دلار جزء لیست امکانات این سرویس بود. البته منظور از کلمه نامحدود این است که شرکت هاستینگ (Hosting) این موارد را اندازهگیری نمیکند. حالا اگر اتفاقاً مراجعه به چند سایت از چند هزار سایت روی سرور بطور مقطعی زیاد شود، ممکن است سرور زمان کافی برای پاسخگویی به دیگر سایتها را نداشته باشد. هر از چند گاهی بعضی از این سایتها هک میشوند و هکرها آنچه را نمیخواهند مستقیماً به دیگران منتقل کنند را بر روی فضای این سایتها میگذارند و از طریق آنها پخش میکنند. ممکن است هکرها با اطلاعات وبسایت کاری نداشته باشند و فقط از امکانات وبسایت برای پخش محتویات مستهجن و غیر قانونی استفاده کنند تا کسی نتواند به هویت آنها پی ببرد. اگر هم ویروس های کامپیوتری و یا عکسهای پورن پخش شده ردیابی شود، در نهایت به این سایتها میرسد و صاحبان سایتها از چنین مطلبی بیخبر هستند. همین اتفاقات باعث میشود هر از چندگاهی آدرس این سرورها جزء لیست سیاه ایمیل سرویسهای ایمیلی مانند یاهو و هاتمیل قرار گیرد.
نقطه ضعف دیگر سرور مشترک این است که برنامههای نصب شده بر روی آن را نمیشود تغییر داد. این برنامهها، علیرغم پایداری و تنوع آنها، بین همه سایتها مشترک است و نمیشود چیزی خارج از لیست برنامههای موجود را در سرور اجرا کرد. مثلاً سرور اجازه نمیدهد که جدیدترین نسخه PHP را استفاده کنیم، چون ممکن است یکی از هزاران سایت موجود بهروز نشده باشد و با نصب جدیدترین نسخه PHP دچار مشکل شود.
در کل سرور مشترک برای کسی که خود دستی در نرمافزار دارد و بخواهد سرور را مطابق سلیقه خود تنظیم کند و به کار گیرد، گزینه خوبی نیست. بنابراین شرکتهای هاستینگ سرویس دیگری را عرضه کردهاند که برای این قبیل افراد مناسبتر است. آنها بطور مجازی بخشی از هارد و حافظه RAM و پردازندههای سرور را به یک مشتری اختصاص میدهند و به او اجازه میدهند سیستم عامل خود را روی آن نصب کند و نحوه کار و برنامههای آن را خود مدیریت کند. این سرویس به (VPS (Virtual Private Server و یا (VDS (Virtual Dedicated Server معروف است. در حال حاضر قیمت یک سرور مجازی با 1GB RAM و 30GB SSD Disk و یک پردازنده سریع و ۲ ترابایت (هزار گیگابایت) پهنای باند در ماه حدود ۱۰ دلار است و شرکتهای بیشماری را میتوانید پیدا کنید که این سرویس را عرضه میکنند.
البته سرویس بعضی از این شرکتها بهتر از دیگران است و مثلاً زمان راه اندازی سرور آنها از لحظه سفارش تا زمان شروع بهرهبرداری حدود ۲ دقیقه است. هر زمان هم که بطور مقطعی به امکانات بیشتری احتیاج داشته باشید، میتوانند امکانات سرور مجازی را از ۲ برابر تا ۳۲ برابر بالا ببرند. بعد از گذر دوره بحرانی نیز میشود سرور را به سایز اولیه برگرداند و در هزینهها صرفهجویی کرد. بعضی از این سرویس ها بطور ساعتی محاسبه میشود و در مجموع امکان صرفهجویی بالایی را فراهم میآورد. فرض کنید به مناسبت یک مراسم خاص قرار باشد دهها میلیون نفر همزمان در یک ساعت به یک سایت مراجعه کنند. طبیعتاً اگر بخواهیم دیتاسنتری را داشته باشیم که بتواند این حجم مراجعه در هر ساعت را پاسخگو باشد، باید هزینه زیادی را متقبل شویم. اما راه حل موجود این است که چند ساعت قبل از شروع ترافیک سنگین، تعدادی سرور مجازی ایجاد کنیم و بار ترافیک را بین آنها تقسیم کنیم. متناسب با سنگینتر شدن ترافیک میتوانیم تعداد سرورها را بالا ببریم. راهاندازی هر سرور از زمان سفارش تا نصب همه نرمافزارها و آمادهسازی برای کار، حدود ۱۵ دقیقه زمان لازم دارد. هر زمان که ترافیک شروع به کم شدن کرد، میتوانیم از تعداد و سایز سرورها بکاهیم. در نهایت کل عملیات را میشود با حداکثر چند صد دلار به پایان رساند. هر زمان دیگر هم که ترافیک بخواهد بالا رود، میشود همین کار را تکرار کرد.
در جستجوی مختصری که در سایتهای شرکتهای ایرانی داشتم یافتم که این سرویس در ایران هم عرضه میشود. البته با این تفاوت که سروری با همان سختافزار فوقالذکر حدود ۳ برابر قیمت دارد و پهنای باند مجاز ماهانه هم به شدت پایین است. به علاوه زمان راهاندازی سرور از لحظه سفارش تا تحویل دادن به مشتری چند روز است. در ایران دیتاسنترهای متعددی وجود دارد که ظرفیتهای خالی زیادی دارند. اکثر نرمافزارهای لازم برای مدیریت سرورهای مجازی نیز بصورت نسخه باز و یا Open Source است و سرمایهگذاری چندانی برای استفاده از این دیتاسنترها بصورت سرور مجازی لازم نیست. بنابراین استفاده از این ظرفیتهای خالی و ارائه سرویس مناسب در درجه اول نیاز به این دارد که عموم مردم با نحوه استفاده از چنین سرویسی آشنا شوند و تقاضای عمومی بالا رود. در درجه دوم نیز یک همت و همکاری جمعی لازم است تا چنین سرویسهایی بیشتر در اختیار عموم قرار گیرد.
چه استفادههای دیگری از این سرویسها میشود کرد؟
چند کاربرد است که بیشتر از دیگر کاربردها رایج است. مثلاً استفاده از سرورهای مجازی برای مدیریت بازیهای آنلاین گروهی، بکارگیری آنها به عنوان VPN، و یا ارائه خدمات به نرمافزارهای موبایل را همه میشناسند. اما کاربردهای دیگری هست که کمتر شناخته شده است.
شبیه سازی های کامپیوتری بزرگ که به پردازش موازی نیاز دارد
در حال حاضر شرکتهایی مانند آمازون و Azure میکروسافت سرورهایی را در اختیار میگذارند که علاوه بر پردازنده عادی دارای پردازنده گرافیکی، به اصطلاح GPU، است که امکان پردازش موازی را فراهم میکنند. از این امکانات میشود برای شبیهسازی های بزرگ کامپیوتری، حل مسائل علمی، پردازشهای تصویری و انیمیشن استفاده کرد. حتی روی سرورهای مجازی EC2-P2 آمازون میتوانید نسخه لینوکس Kali را برای عملیات رمزگشایی و هک پسوردها نصب کنید. اگر به هزینه ساعتی این سرورها نگاه بفرمایید، خواهید یافت که هزینه استفاده ساعتی آن کاملاً مقرون به صرفه است.
سرور ایمیل
مورد استفاده دیگر راهاندازی سرور ایمیل است. به عنوان نمونه یک سرور با هزینه ۵ دلار در ماه میتواند به راحتی ایمیلهای یک شرکت با چند ده کارمند را مدیریت کند.
تحقیقات در بازار و یا جاسوسی
به سادگی میتوان با جاوااسکریپت و یا پایتون برنامهای نوشت که در موتورهای جستجوی مختلف دنبال یک موضوع بگردد و همه لینکهای موجود که آنها نشان میدهند را در دیتابیس خود ذخیره کند. بعد یکبهیک آن وبسایتها را مرور کند و تمام اسامی افراد آن شرکتها و اطلاعات تماسشان را ذخیره کند. بعد به تدریج دامنه جستجو درباره موضوعات مختلف را زیاد کند و در نهایت اطلاعات پردازش شده و خلاصه شده را تحویل دهد. با این کار به راحتی میشود اطلاعات جامع و بهروزی از وضعیت فنی و تجاری کشورهای مختلف جمع کرد.
نکتهای درباره قوانین مالکیت اطلاعات کشورهای مختلف
اساساً اینترنت برای سهولت کار جاسوسی سرویسهای اطلاعاتی غربی ایجاد شده است. بنابراین بحث درباره نقض حریم خصوصی و مالکیت اطلاعات شخصی بیمعنی است و همیشه هم چنین بوده است. اما اخیراً، علی الخصوص پس از روی کارآمدن ترامپ این مطلب واضحتر و بیپرده تر شده است. ترامپ در شروع کار خود در یک دستور اجرایی دسترسی به اطلاعات افراد غیر آمریکایی که در دیتاسنترهای آمریکایی قرار دارد را مجاز اعلام کرد و همین اخیراً هم فروش اطلاعات خصوصی آنلاین افراد را برای شرکتهای اینترنتی آزاد کرد. همین مطلب باعث شد که حتی شرکتها و مؤسسات کانادایی هم بخواهند اطلاعات خود را از آمریکا خارج کنند و آنها را در سرورهای مستقر در خاک کانادا ذخیره کنند. حتی در دانشگاههای کانادا هم به دانشجویان اعلام کردند که اطلاعات خود را به داخل کانادا منتقل کنند.
چند ماه پیش هم دولت آلمان به همه شرکتهای آلمانی دستور داد که تمام اطلاعات خود را در داخل خاک آلمان ذخیره کنند، تا بشود قوانین جاری در آلمان را بر آنها اعمال کرد. قبل از آن به این دلیل که اطلاعات بعضی شرکتها داخل خاک آلمان نبود، دولت نمیتوانست از شرکتها بخواهد که اطلاعات محرمانه خود را که در داخل آلمان نیست به دولت گزارش کند.
هدف از ذکر این مطالب این بود که یادآور شوم که هرگونه اطلاعاتی که در سرورهای دیگر کشورها ذخیره شود، باید چنین فرض کرد که سرویس های اطلاعاتی آن کشورها، و یا احتمالا هکرهای آزاد، در صورت تمایل به آن دسترسی خواهند داشت. بنابراین باید در انتخاب محل سرور دقت کرد و جنبههای قانونی آن را در نظر داشت. به همین دلیل شرکتهایی که چنین خدماتی را ارائه میدهند، معمولاً چند دیتاسنتر در کشورهای مختلف دارند تا مطابق نیاز، مشتری بتواند محل آن را انتخاب کند.
از نظر عملی این موضوع مانع مهمی در استفاده از این سرویسها نیست.
سالها است که ایده گذاشتن سرور در یک اتاق امن و محدود کردن دستیابی فیزیکی به آن کنار گذاشته شده است، چون این کار فقط یک اطمینان کاذب در ذهن مدیران ایجاد میکند و جلوی کار هکرها را هم نمی گیرد. هکرها راه نفوذ به امن ترین سرورها را در امنترین مکان های حفاظت شده بلدند. نمونه آن هم نفوذ هکرهای چینی به سرورهای پنتاگون و شرکت های مدعی پیشرفته ترین تکنولوژیها، مانند لاکهید مارتین، بود که توانستند تمام اطلاعات سری هواپیمای F22 و F35 را بدزدند و به کمک آن چین توانست هواپیمای J20 را تولید کند.
بعد از آن پنتاگون از شگردهای دیگری برای بالا بردن امنیت اطلاعات استفاده میکند که یکی از آنها پخش کردن اطلاعات در گوشه وکنار عالم است، بطوریکه هیچکس همه آن را یکجا پیدا نکند و آنچه را هم که به دست می آورد، بدون دانستن اینکه بقیه اجزاء اطلاعات کجا مخفی شده به درد نخورد. چون تجمیع اطلاعات در یک سرور فقط طمع هکرها را برای حمله زیاد میکند. چون میدانند که با غلبه بر موانع خواهند توانست به آنچه میخواهند برسند
اگر شما هم اطلاعاتی دارید که ترجیح میدهید هیچکس نتواند به آن دسترسی داشته باشد، میتوانید به نحوی اطلاعات را به دو یا سه قسمت تقسیم کنید و در سرورهای مجزا در دو یا سه کشور مختلف قرار دهید که هر قسمت از آن به تنهایی قابل استفاده نباشد. بلکه ترکیب اطلاعات آنها به نحوی که فقط خودتان از آن خبر دارید، بتواند اطلاعات مفید را در اختیارتان قرار دهد.