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


جمعه  ۱۷ فروردین، سه محصول کافه‌بازار، دیوار و رسید حدود ۶ ساعت، از حدود ۱۰ شب تا ۴ صبح، در دسترس نبودند. مشکل ناشی از یک حمله سایبری به مراکز داده بود. این موضوع و اختلال دیگری در دیتاسنتر در هفته گذشته ( که طی آن، سرویس‌هایمان حدود ۲ ساعت دچار مشکلاتی شد)، باعث شد از این فرصت استفاده کنیم که هم از کاربرانمان عذرخواهی کنیم، هم در مورد راه‌حل‌هایی که به پیشگیری از این اختلال‌ها کمک می‌کنند صحبت کنیم و هم برنامه‌های خود را برای حل این مشکلات شرح بدهیم.


مشکل چه بود؟

حدود ساعت ۱۰ شب متوجه شدیم که سرویس‌های کافه‌بازار، دیوار و رسید به صورت کامل از دسترس کاربران خارج شده‌اند. بنا بر تجربه‌های گذشته، وقتی به مشکلات مشابهی برمی‌خوردیم، اولین حدس ما اختلال در زیرساخت‌های مشترکمان مثل کوبرنتیز، لود‌بالانسرها و یا دیتاسنتر بود. پس نخستین قدم این بود که سراغ زیرساخت مانیتورینگ محصولات و سرویس‌ها برویم.

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


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


حدود ساعت ۱۲:۳۰، از توییت وزیر ارتباطات و سایت‌های خبری از حمله سایبری خبردار شدیم و حدس زدیم که این حملات ممکن هست که تجهیزات ما را هم دچار مشکل کرده باشد. (برای آشنایی با این مشکل امنیتی به این لینک مراجعه کنید). پس از هماهنگی‌های اولیه به سمت دیتاسنتر رفتیم و دیدیم که یکی از سوئیچ‌های ما هم دچار مشکل شده است. حدود ساعت ۱:۲۰ شروع به کار کردیم. پس از ساعتی، تیم NOC دیتاسنتر به ما خبر داد که مشکل آنها حل شده و ما هم پس از یک ساعت توانستیم سوئیچ‌ خود را به حالت عادی برگردانیم.

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


درس‌هایی که گرفتیم و ادامه راه

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

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

از چندماه پیش اقدام اولیه نسبت به چند-دیتاسنتر(Multi-Datacenter) شدن را آغاز کرده بودیم که پس از اتفاقات اخیر به اصلی‌ترین اولویتمان تبدیل شد.

در حال حاضر در حال مذاکره با چند دیتاسنتر هستیم. طراحی شبکه و رک‌های‌مان انجام شده. یکی از مسائل سخت چند-دیتاسنتر شدن مساله Replication دیتابیس است و به همین دلیل تیم تخصصی دیتابیس را هم راه‌اندازی کرده‌ایم که قصد دارد زیرساخت مشترکی برای تیم‌ها طراحی کند که با Consistency Modelهای مختلف بتوانیم نیازهای مجموعه را برطرف کنیم. ولی به نتیجه رسیدن کارهای این تیم ممکن است مدتی طول بکشد. به همین دلیل، همزمان موضوع  Replication  دیتابیس‌های فعلی را با روش‌های ساده‌تری در نقاط مختلف پی‌گیری خواهیم کرد.

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