چگونه سرویس هاستینگ امنی داشته باشیم؟

 

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

 ایجاد امنیت یک محیط هاستینگ

شما بسته به نیازی که دارید ممکن است از سرویس های هاستینگ Cloud ، VPS یا سرور مجازی ، سرور اختصاصی یا Dedicated Server و یا سرویس های هاست اشتراکی یا Shared Hosting استفاده کنید. در میان تمامی این سرویس های وب هاستینگ ، سرویس هاست اشتراکی یا Shared Hosting از کمترین درجه امنیتی برخوردار است زیرا همانطور که از اسمش هم پیداست در یک محیط اشتراکی مورد استفاده قرار می گیرد که بر روی یک سرور میزبان ممکن است صدها یا شاید هزاران وب سایت قرار داشته باشد. قبلا در خصوص سیستم هایShared Hosting در انجمن تخصصی فناوری اطلاعات ایران بصورت مفصل صحبت کرده ایم. در چنین سیستم هایی زمانیکه حساب کاربری یک مشتری یا حتی وب سایت یک مشتری دچار خطر شود این احتمال بسیار وجود دارد که سایر وب سایت های موجود بر روی همان سرور نیز دچار همان آسیب پذیری شوند و در نتیجه با خطر مواجه شوند. علاوه بر اینها در محیط های هاستینگ اشتراکی همه کاربران از یک پایگاه داده استفاده می کنند ، تصور کنید اگر نقطه ضعف امنیتی بتواند پایگاه داده را دچار اختلال کند تمامی وب سایت هایی که از این پایگاه داده استفاده کرده اند بصورت همزمان تهدید خواهند شد.

از بحث انتخاب کردن سرویس هاستینگ اگر بگذریم ، شما باید اطمینان حاصل کنید که سرویس دهنده هاستینگ شما به شما یک سیستم عامل امن در حد مطلوب ارائه می کند ، طبیعی است که هیچوقت نمی توانیم ادعا کنیم یک سیستم عامل صد در صد امن داریم و بحث امنیت یک بحث کاملا نسبی است ، بنابراین سرویس دهنده باید حداقل ها را رعایت کرده باشد. همیشه مطمئن شوید که سرویس دهنده هاستینگ شما قابلیت مقابله با حملات Denial Of Service یا DOS را دارد و حداقل یک سیستم تشخیص نفوذ تحت شبکه یا NIDS در شبکه هاستینگ خود راه اندازی و استفاده کرده است. بیشتر وب سایت های داینامیکی که امروزه طراحی می شوند از زبان های برنامه نویسی Server Side استفاده می کنند به این معنی که کد اصلی برنامه در سرور اجرا و نتیجه برای کلاینت ارسال می شوند.

زبان های برنامه نویسی وبی مثل PHP ، Python و Perl از این دسته هستند که این زبان ها به خودی خود دچار آسیب پذیری های خاص خود هستند که بایستی از نظر امنیتی حتما دیده شود. Webmaster ها خیلی دوست دارند که از ایمیلی استفاده کنند که دارای پسوند نام دامین خودشان است برای مثال من کاربر unity در ITPRO دوست دارم ایمیلی به شکل unity@itpro.ir داشته باشم ، به همین دلیل است که اکثر سرویس دهندگان هاستینگ این قابلیت را به شما می دهند که از سرویس های ایمیل رایگانی استفاده کنید و بتوانید ایمیلی با نام دامین اینترنتی خود ایجاد کنید. اما نکته مهم در خصوص امنیت این سرویس های ایمیل این است که باید توجه کنید که محل نصب و راه اندازی این نرم افزارهای ایمیل بسیار مهم است ، ترجیحا به هیچ عنوان نرم افزار ایمیل را که درون سرویس های هاست اشتراکی است استفاده نکنید و یک سرور جداگانه برای نرم افزار ایمیل خود استفاده کنید ، قبلا در انجمن تخصصی فناوری اطلاعات ایران در خصوص سرویس های ایمیل رایگان صحبت کرده ایم.

1-قابل اعتماد بودن یا Reliability در سرویس های هاستینگ وب

قابل اعتماد بودن یا Reliability یک سرویس هاستینگ زمانی مشخص می شود که وب سایت شما توجه هزاران یا شاید میلیون ها نفر در ماه یا در سال به خود جلب کند. همانند هر چیزی که در دنیا وجود دارد سخت افزارها هم برای خودشان محدودیت هایی دارند. شما به هیچ عنوان نمی دانید که در چه زمانی و به چه دلیل و یا چگونه سخت افزار سرور شما ممکن است Crash کرده و از کار بیوفتد. به این نکته همیشه توجه داشته باشید که سخت افزار شما چه یک PC معمولی باشد و یا یک سرور سخت افزاری بسیار گرانقیمت و بزرگ به هر حال مستعد این است که دچار مشکل شود و از کار بیوفتد. برای اطمینان از اینکه وب سایت شما همیشه در حال کار و فعالیت است ، باید همیشه به فکر استفاده از سرویس های هاستینگی باشید که قابلیت های hot standby را به شما می دهند که یعنی اینکه زمانیکه سرور اصلی شما دچار مشکل شد سرور جانبی بتواند بلافاصله عملیات سرور اصلی را بر عهده گرفته و شروع به سرویس دهی کند. زمانیکه صحبت از قابل اعتماد بودن یا Reliability می شود ، سرویس های Cloud Hosting هم از نظر قابل اعتماد بودن و هم از نظر هزینه کاملا مناسب هستند. اما همیشه هم Cloud Hostingدارای مزیت نیست و علاوه بر این مزین هایی که به آن اشاره کردیم در حوزه Cloud Computing ما حریم خصوصی داده ها یا Data Privacy را خواهیم داشت که مشکلات خاص خودش را ایجاد می کند ، قبلا در خصوص Cloud Computing و Cloud Hosting در انجمن تخصصی فناوری اطلاعات ایران مطالبی را نوشته ایم که بد نیست سری به آنها بزنید.
گام بعدی بعد از اطمینان پیدا کردن از بحث دسترسی پذیری یا Availability در وب سرورها این است که مطمئن شویم که در صورتیکه ترافیک سرور به شدت افزایش پیدا کرد ، این قابلیت را داشته باشیم که ترافیک را بین سرورهای مختلف تقسیم کنیم و در اصطلاح بتوانیم ترافیک را بین سرورهای موجود Load Balance کنیم. زمانیکه وب سایت شما ترافیک به شدت زیادی را تجربه کرد شما باید منابع کافی را در اختیار داشته باشید تا بتوانید به درخواست های کاربرانتان پاسخ دهید. بنابراین با سرویس دهنده وب هاستینگ خود تماس بگیرید و از آنها در خصوص طرح هایLoad Balancing ای که دارند پرس و جو کنید. اگر زیاد درگیر مسائل حریم خصوصی داده ها و مشکلات مربوط به آن نیستید می توانید از سرویس های Cloud Hosting استفاده کنید تا قابلیت Load Sharing را براحتی در این سرویس ها تجربه کنید ، راهکار هاستینگ ابری یکی از به صرفه ترین راهکارها در زمانی است که می خواهید ترافیک بسیار بالایی را در وب سایت خود داشته باشید. 

 

2- حفاظت در برابر حملات کدهای مخرب در سرویس های هاستینگ وب

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

 

3-امنیت فیزیکی در سرویس های هاستینگ وب

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

4-سرویس Backup یا تهیه نسخه پشتیبان در سرویس های هاستینگ وب

مهمترین رکن در احساس اطمینان و امنیت در یک وب سایت داشتن یک برنامه دقیق Backup گیری است. Backup گیری هم می تواند بصورت On-Site یعنی داخل همان مرکز داده ، بصورت Off-Site یعنی خارج از مرکز داده اصلی ، بصورت cloud backup و یا ترکیبی از آنها انجام شود.شما می توانید یک کپی از اطلاعات وب سایت خود به همراه پایگاه داده آن را بصورت Local در سیستم خود بصورت زمانبندی شده نگهداری کنید ، این روش Backup گیری هر چند چندان قابل اعتماد نیست اما به هر حال برای خودش یک راهکار ساده برای رفع کوتی است ( واژه بهتری به نظرم نرسید به خدااا D: ) زمانیکه حجم پایگاه داده وب سایت شما حداکثر به چند صد مگابایت می رسد استفاده از این روش Backup گیری مشکلی ندارد و بعضا می تواند راهکار خوبی هم باشد اما زمانیکه صحبت از چندین گیگابایت یا بعضا چندین ترابایت داده برای Backup گیری به میان می آید این خیلی مهم است که یک راهکار انلاین قابل اعتماد برای Backup گیری داشته باشید.در چنین شرایطی شما بهتر است که یک سرور جداگانه به عنوان سرور Backup داشته باشید که بصورت متناوب و زمانبندی شده اطلاعات شما را Backup گیری و در سرور جانبی ذخیره سازی کند. اما بهترین راهکار Backup گیری این است که Backup خود را در چند منطقه جغرافیایی مختلف نگهداری کنید تا درجه Reliability ساختار Backup خود را افزایش دهید. در ضمن همیشه به بحث فشرده سازی و رمزنگاری Backup های خود دقت کنید ممکن است با افشاء شدن یک فایل Backup افراد غیر مجاز به اطلاعات زیادی در خصوص وب سایت شما دست پیدا کنند.

5-کنترل های دسترسی در سرویس های هاستینگ وب

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