تجربیات حاصل شده از قطعی اینترنت

یادم میاد توی یکی از روزهای قطعی اینترنت، برای دانلود آخرین نسخه اپ یکی از تاکسی های اینترنتی که شنیده بودم با اینترنت ملی! (نام غلطی که اوایل برای شبکه ملی اطلاعات گذاشته بودند) کار می‌کنه سعی کردم اسم سایتش رو حدس بزنم و دانلود کنم (به دلیل مباحث امنیتی، کافه بازار رو در گوشی نصب ندارم!). موفق شدم که نام سایت رو حدس بزنم (چقدر خوب بود اگه نام سایت‌های تجاری معتبر در ایران چیزی شبیه websiteName.com.ir می‌بود. این نوع نامگذاری رو در استرالیا دیده بودم که به صورت com.au. بود). در سایت گفته بود می تونید شماره موبایل بدید و لینک دانلود بگیرید. خیلی خوشحال شدم که نیاز به نصب از مارکت خاصی نیست و امکان دانلود مستقیم هم وجود داره. شماره تلفنم رو وارد کردم و لینک دانلود پیامک شد. اما لینکی که پیامک شده بود از سایت کوتاه کننده لینکbit.ly استفاده کرده بود! که طبیعتاً خارجی بود و در دسترس نبود! این حلقه کوچک کجا و حلقه های دیگر زنجیره تاکسی های اینترنتی کجا! اما امنیتی ها میگین: قدرت یک سیستم به اندازه ضعیف ترین لینک (حلقه) اش است.https://www.clearswift.de/node/919جدای از نیازمندی های سخت‌افزاری در IXPها و حتی الزامات و مدل های اقتصادی peering، مواردی هرچند پیش پا افتاده! اما به مثابه حلقه های یک زنجیر وجود دارند که در نظر گرفتن آن‌ها قابلیت اطمینان و دسترس پذیری شبکه ملی اطلاعات را افزایش می‌دهد. در این نوشته به صورت مختصر به برخی از این حلقه ها که به نوعی نیازمندی های شبکه ملی اطلاعات در لایه خدمات هستند اشاره می‌شود (برگرفته از تجربیات حاصل از قطعی اینترنت). این نوشته از دو منظر قابل بهره برداری است:‌ منظر اول یک نگاه پدافندی است تا بتوان دفاع متناسب در مواجهه با تهدیدات سایبری را فراهم آورد. منظر دوم، ایجاد زیست بوم کارآمد، ایمن و مطمئن (مورد اعتماد) برای بازیگران و مخاطبان گوناگون فضای مجازی است از استفاده کنندگان این فضا تا صاحبان کسب و کار.در ادامه برخی از سرویس هایی که ظاهراً به صورت جدی باید در شبکه ملی اطلاعات در نظر گرفته شوند آورده شده است. این سرویس ها در سه دسته سرویس های محتوایی، سرویس های توسعه ای و سرویس های زیرساختی طبقه بندی شده اند. البته این فقط یک لیست اولیه و کوتاه است که در روزهای قطعی اینترنت بیشتر به چشم می خورد!سرویس های محتواییسرویس ویکی (Online encyclopedias): این سرویس و سرویس های مشابه (Quora و Stackoverflow) نقش بسیار زیادی را در ایجاد آگاهی عمومی در فضای مجازی بر عهده دارند. در ایجاد سامانه های داخلی مشابه باید این نکته لحاظ شود که جامعه محور بودن (Community-based) ویکی ها عامل بسیار مهمی در پیشرفت آن است. البته ویکی های تخصصی زیادی به صورت پراکنده توسط کاربران ایرانی شکل گرفته است که مشکل اینجاست که شناسانده نشده اند.سرویس ترجمه: با افزایش نیامندی های ارتباطاتی بین المللی، و از طرف دیگر وجود لغات فرنگی در استفاده از تجهیزات هوشمند، باعث می‌شود نه تنها پژوهشگران بلکهکاربران عادی نیز وابستگی زیادی به سرویس های ترجمه ای داشته باشند. سرویس داخلی ترجمه ترگمان در حال حاضر عمل‌کرد مناسبی دارد.پیش‌بینی آب و هوا: با توجه به اهمیت آگاهی از آب و هوا در بخش‌های مختلف کشور نیاز به API داخلی برای ارائه اطلاعات پیش‌بینی آب و هوا ضروری به نظر می‌رسد.سرویس اشتراک ویدئو:‌ با وجود سرویس آپارات اما همچنان نیاز به سرویس های ویدئو بر تقاضا (VoD) ویدئوهای بین‌المللی وجود دارد. این نیاز تا حدی با بالاآمدن سایت دیدئو برآورده شده بود که متأسفانه این سایت در زمان اختلال اینترنت عمل‌کردی نداشت (بالا نمی‌آمد) اسکرین شاتی از سایت دیدئو در روزهای قطعی اینترنت. این سایت به طور کامل up نمی شدسرویس موتور جستجو: بدیهی است حوزه طراحی و پیاده‌سازی موتور جستجو یک حوزه بسیار پیچیده و دشوار است؛ اما از آنجایی که آغازگر دسترسی کاربران به وبسایت ها است بنابراین ضروری است مدلی ساده اما کاربردی از آن وجود داشته باشد. لازم به ذکر است در زمان قطعی اینترنت، موتورهای جستجوی یوز و سلام عمل‌کردی نداشتند. همچنین پارسی جو هم عمل‌کرد مناسبی در جستجوی صفحات نداشت. البته احتمالاً تیم هایی در حال توسعه چیزی شبیه irgoogle باشند!نمایی از خروجی موتور جستجوی پارسی جو در نتیجه جستجوی عبارت اپ بلهسرویس رهیابی و یافتن آدرس: یکی از ضروریات جامعه الکترونیکی سیستم‌های رهیابی (Navigation) هستند. با توجه به اینکه OSM وجود دارد، راه اندازی یک سیستم رهیابی، مسیر سهل الوصول تری را فراهم می‌کند. هر چند ابزارهایی مانند نشان، اخیراً مسیریابی حمل و نقل عمومی را هم اضافه کرده‌اند اما یک ضعف رهیاب های داخلی جستجوی آدرس‌ها است که نیاز به تقویت دارد. همچنین وجود یک وبسایت مستقل و امکانات API می‌تواند هم برای کاربران عادی و هم برای توسعه دهندگان مفید باشد. ظاهراً یکی از معضلات ایام قطعی اینترنت پیدا کردن مکان هایی ضروری مانند بیمارستان، داروخانه و مواردی از این دست بوده است.سرویس ثبت شکایات و پاسخگویی: در بروز یک حادثه/سانحه/فاجعه، یکی از مهمترین مولفه ها اطلاع رسانی در مورد وضعیت فعلی و وضعیت بعدی به افراد تحت تأثیر (Affected) و دیگر افراد است. لازم به ذکر است که نیازمندی های محتوایی این دو دسته از افراد متفاوت است. بنابراین حفظ کانال‌های ارتباطی متناسب، برای دریافت مشکلات و ارائه راهکار، امری ضروری است. مباحثی مانند بازگشت از بحران (Disaster Recovery) و تداوم حیات کسب و کار (Business Continuity)‌ دو فاکتور مهمی است که مستنداتی از این دست، در دستیابی آن‌ها نقش موثری را ایفا می نمایند. برای مثال در نظر بگیرید موردی را که فردی قرار است دامنه سایت خود [که چندین سال است بر روی آن کسب و کار داشته است] را تمدید کند اما اینترنت قطع است! چه راه حلی دارد؟ و یا افرادی که ددلاین های حیاتی دارند. این افراد چه باید بکنند.سرویس جستجوی سرویس ها: یکی از نیازمندیها، سرویسی برای جستجوی سرویس های بومی است. این سرویس می‌تواند با ارائه دسته بندی با توجه به نوع سرویس به معرفی وب سایت‌های مهم/کلیدی/حیاتی بپردازد. در این زمینه وب سایت http://peyvandha.irوجود دارد که متأسفانه بروز نیست و نمی‌تواند این هدف را ارضاء نماید (اطلاعات بروز، کامل و صحیح در آن وجود ندارد). حتی آدرس موتورهای جستجوی موقتِفراهم شده برای پاسخگویی در شرایط بحران و یا موتورهای جستجوی دائمی نیز در این وبسایت قرار گیرد. آدرس پلیس فتا، سایت‌های خبری، رسانه‌های معتبر، VoD ها و… همگی در این وبسایت قرار می‌گیرد. لازم به ذکر است سرویس Catalogue Database Service اطلاعات کاربران، اطلاعات آدرس‌های وب (URL)، شماره ای.اس.ها و نام دامنه ها را نگهداری می نماید.سرویس های توسعه ایسرویس ها و کتابخانه‌های خارجی (External): در حال حاضر مشاهده می‌شود که برخی از وبسایت‌ها از کتابخانه‌هایی/سرویس هایی استفاده می‌کنند که این کتابخانه‌ها/سرویسها به صورت آنلاین لود می‌شوند (مثلاً cdnjs.cloudflare.com). در زیر برخی از این موارد آورده شده است.cdnjs.comgoogleanalyticsgoogletagmanagermaps.googleapifonts.googleapiconnectivitycheck.gstatic.comسرویس های ابری: اخیراً بویژه تیم های استارتاپی به منظور کاهش هزینه‌های CapEx از معماری نرم‌افزار به عنوان سرویس و پلتفرم به عنوان سرویس استفاده می‌کنند (از جمله نمونه‌های خارجی محبوب Amazon AWS و Microsoft Azure است). با توجه به اینکه فناوری رایانش ابری در دنیا در حال فراگیر شدن است مناسب است که بر روی این فناوری کار بیشتری انجام شود.سرویس های کنترل نسخه و اشتراک کد: یکی از این سرویس های محبوب (github.com) است. قابلیت‌های گیت هاب مواردی مانند ساخت مخزن، مدیریت و کنترل ورژن، انشعاب گیری، قرار دادن سریع کدها (قابلیت gist در گیت ها) است.بررسی URLها از جهت آلوده بودن (نمونه خارجی سایت https://www.mimecast.com/): برای جلوگیری از انتشار لینک های مخرب و یا رخداد حمله بر روی سیستم قربانی، قبل از باز کردن لینک ها می‌توان بدخواه بودن آن را از طریق یک API بررسی کرد.سرویس های فراوان دیگری برای توسعه‌دهندگان اندرویدی و بازی سازان مورد نیاز است که در حال حاضر APIهای گوگل راه حل رفع نیازهای آنان است. با فراهم آمدن سرویس های توسعه ای مورد نیاز، ارائه یک سری الزامات قانونی و یا توصیه نامه به توسعه دهندگان، جهت انتقال به بستر داخلی (استفاده از سرویس های داخلی) از طریق فراهم کننده های سرویس (در زمان هاست کردن وبسایت ها و فروش هاست مجازی) و یا مارکت ها (در زمان قرار دادن اپلیکیشن ها)، می‌تواند باعث تشویق/ترغیب توسعه دهندگان شود.سرویس های زیرساختیسی.دی.ان (CDN):‌ یکی از ویژگی‌های مهم برای افزایش سرعت لود شدن وب سایت‌ها استفاده از شبکه توزیع/تحویل محتوا (Content Delivery Network) است. کاربرد دیگر استفاده از CDN هم مقابله با حملات منع سرویس (DoS) است. از جمله CDNهای محبوب در دنیا cloudflare است که برای افزایش عمل‌کرد و امنیت سایت از آن استفاده می‌کنند.سرویس های زیرساختی ابری: در زیرساخت به عنوان سرویس (PaaS)، امکان بالا آوردن یک OS و در سناریوهای بروزتر یک کانتینر به منظور پاسخگویی به درخواستهای رسیده فراهم است. این سرویس ها با قابلیت pay-as-you-go با انعطاف پذیری بالا می‌تواند سطح پردازش، حافظه و فضای ذخیره سازی دلخواه را ارائه می‌دهند.فعال کردن امکان MMS در بستر موبایل (این قابلیت که در ایران فعال نمی‌شود! در برخی از کشورهای دیگر کاملاً فعال است): این قابلیت حتی تا حد قابل قبولی جایگزینی موقت برای نرم افرارهای پیام رسان هم می‌تواند در نظر گرفته شود؛ با این تفاوت که داده‌ها در شبکه داخلی هستند.سرویس های ایمیل: بارها مشاهده شده است که حتی کارمندان هم برای استفاده از سیستم‌های داخلی که نیاز به ایمیل برای ثبت نام دارند (مثل سامانه تدارکات) از ایمیل خارجی استفاده می‌کنند که این فلسفه استفاده از سامانه های بومی را زیر سؤال می‌برد (طبیعتاً باعث نشت اطلاعات سازمان بدلیل جریان یافتن داده‌ها از سامانه های داخلی به سرورهای خارجی می‌شود). همچنین در رخداد اخیر، مشاهده شد ایمیل از طرف mail server های خارجی قابل دریافت توسط mail server های داخلی برخی از دانشگاه‌ها (مثل دانشگاه علم و صنعت ایران)‌ نبود. ضرورت الزام به استفاده از ایمیل‌های بومی برای دستگاه های اداری کاملاً احساس می‌شود.سرویس کوتاه کننده نام دامنه: در تجربه‌ای مشاهده کردیم که اسنپ برای ارسال لینک دانلود نرم‌افزارش از یک سیستم کوتاه کننده لینکی استفاده می‌کند که در زمان قطعی اینترنت، این سیستم کار نمی‌کرد (و در نتیجه نرم‌افزار دانلود نمی‌شد). عملاً اهمیت توجه به زیست بوم از این مثال ساده نمایان می‌شود که چگونه یک جز ساده می‌تواند استفاده از یک سرویس یا نرم افراز را مختل نماید.نیازمندی بروزرسانی (Update): یکی از نیازمندی های سیستم‌های نرم افزاری بحث بروزرسانی منظم و به‌موقع است. این بروزرسانی مورد توجه نرم افزارهای کاربردی (آنتی ویروس ها) و سامانه های عامل لینوکسی (مخازن لینوکس ir archive)، ویندوزی (Update server)، اندرویدی و غیره است.سامانه های مانیتورینگ (Network Monitoring Tools): در حال حاضر برخی از سازمان ها در ایران از سامانه های مانیتورینگِ شبکه‌های خارجی مانند shodan استفاده می‌کنند. راه اندازی سامانه های مانیتورینگ بومی می‌تواند از نشت اطلاعات جلوگیری نماید. همچنین می‌تواند از خروج ارز (بابت خرید لایسنس ها) جلوگیری نماید.سرویس های مرتبط با DNS. مدیریت و نظم دهی دامنه های تجاری مثلاً به صورت com.ir. از جمله کارهایی است که می‌تواند باعث بهبود سازماندهی وبسایت هایی که کار تجاری در ایران انجام می‌دهند شود (چرا که برای دریافت اینگونه دامنه ها می توان شرایطی قرار داد که به کاربر تضمین دهد آن کسب و کار دارای درجه ای از اعتبار است. یه مکملی برای ای.نماد). همچنین خدماتی نظیر سرویس DNS Forwarding می‌تواند ارائه شود.گواهی دیجیتال و بررسی زنجیره گواهی ها، سرویس OCSP (بررسی گواهی های منقضی نشده اما باطل شده) که به صورت آنلاین انجام می‌شود نیز از مواردی است که در صورت در نظر گرفتن ارتباطات داخلی باید برای آن‌ها راه حل‌هایی در نظر گرفت.یک سرویس بسیار ضروری دیگر هم سرویس ویدیوکنفرانس است که سرویس «روبرو» (https://www.rubru.me/) گزینه مناسب داخلی است.بدیهی است این سرویس های زیرساختی به موارد بالا ختم نمی‌شوند و مواردی مانند سرویس نگهداری کلمات عبور (Lastpass, Keypass)، سرویس مکالمه صوتی/تصویری، سرویس برگزاری ویدئو کنفرانس و سرویس برگزاری کلاس درس آنلاین موارد دیگری است که نمونه‌های داخلی کمتری دارد. نکته بسیار مهم اینکه، در توسعه برخی از موارد ذکر شده در بالا، استفاده از بسته های نرم افزاری متن باز قطعاً به توسعه از صفر (from scratch) ارجح است.جمع بندیدر این نوشته تلاش شد تا به صورت مختصر برخی از مشاهدات خودمان و کاربران دیگر در زمان قطعی اینترنت را جمع آوری کرده و گزارش دهیم. در این داکیومنت علاوه بر بررسی معضلات، به راه حل‌هایی اولیه برای رفع این مشکلات نیز اشاره شد. به عنوان کار آینده، پیشنهاد می‌گردد نیازمندی های سازمان ها/اصناف/کسب و کارهای مختلف از طریق جلسات رو در رو و یا طرق دیگر احصا شود. از جمله این کسب و کارها می‌توان به مواردی همچون شرکت های بیمه ای، آژانس های مسافرتی و دفاتر گردشگری ارائه خدمات به گردشگران خارجی، صرافی ها، دانشگاه‌ها، سرویس دهنده های خدمات ابری، سرویس دهنده های اینترنت، هاستینگ ها و دیتاسنترها، بازرگانی (صادرات و واردات و امکان ارائه خدمات به مشتریان بین الملل)، کسب و کارهای فروش اینترنتی (بویژه کسب و کارهای کمتر شناخته شده و کسب و کارهای خرد و خانگی)، توسعه دهندگان اپلیکیشن و بازهای آنلاین اشاره کرد. همچنین بررسی موضوع از منظر مباحث قانونی (بندهای قانونی بر طبق SLA) و حریم خصوصی نیز به عنوان یک چالش می‌تواند در کار بعدی مورد بررسی قرار گیرد.بازنشر و تغییر این نوشته تحت لایسنس GNU Free Documentation License (GFDL) فراهم است.و اینکه اگه این نوشته رو دوست داشتید لایکککک یادتون نره