چرا در لینوکس به آنتی ویروس نیاز دارم؟

بر طبق روال عصرهای پنجشنبه‌ در جنگل ما یک بحث تئوری و یا عملی رو در این روز دنبال می‌کنیم. بحث این هفته ما در خصوص «برنامه‌های جایگزین لینوکسی» است و من در این جلسه مایلم که در خصوص نرم افزارهای آنتی ویروس در لینوکس صحبت کنم. خلاصه‌ای از صحبتم که برداشتی آزادی از مقاله Antivirus از سایت رسمی اوبونتو هست رو در اینجا با شما نیز به اشتراک می‌ذارم.

لینوکس طوری مهندسی شده که امکان اجرا شدن ویروس در آن سخت است، ولی به هر حال به دلایل زیادی ممکنه که شما یک آنتی ویروس رو برای کامپیوتر لینوکسی‌تون بخواین:

  • از شما خواسته شده که یک آنتی ویروس بر روی سیستم‌تون داشته باشید! این ممکنه قانون اداره، دانشگاه و… شما باشه.
  • برای اینکه بتونید درایو ویندوز و یا درایوهایی که ویندوز با اون کار ‌می‌کنه رو اسکن کنید.
  • برای اینکه بتونید یک شبکه مبتنی بر ویندوز رو اسکن کنید.
  • برای اینکه بتونید یک دستگاه ویندوزی رو از طریق شبکه اسکن کنید.
  • برای اینکه بتونید از ماشین مجازی ویندوزی‌تون که در درون لینوکس نصب شده محافظت کنید.
  • برای اینکه بتونید فایل‌ها رو قبل از ارسال به دیگران (که از سیستم عاملی غیر از لینوکس استفاده می‌کنند.) اسکن کنید. (تا آن‌ها ویروسی نشوند.)
  • برای اسکن ایمیل‌هایی که برای دیگران فوروارد می‌کنید. (ایمیل‌هایی که خودتون از شخصی گرفتید و می‌خواهید برای شخص ثالث ارسال کنید.)
  • تعدادی از ویروس‌های ویندوزی از طریق نرم افزار Wine اجرا می‌شوند. (واین برنامه اجرا کنند نرم افزارهای ویندوز در گنو/لینوکس است.)
  • از نظر تئوری ویروسی شدن لینوکس نیز امکان‌پذیر است.

دلیلی دیگه:
آنتی ویروس‌ها فقط برای محافظت در مقابل ویروس‌ها ساخته نشدند. آنتی ویروس‌ها جلوی برخی از آسیب‌های دیگر امنیتی را می‌گیرد.

شناخته شده‌ترین آنتی ویروس منبع باز معرفی شده توسط سایت اوبونتو:

  • ClamAV Antivirus

برخی از آنتی ویروس‌های رایگان معرفی شده توسط سایت ابونتو:

  • Comodo Anti-Virus for Linux
  • Avast! Linux Home Edition
  • AVG Antivirus
  • Avira Antivirus
  • BitDefender Antivirus
  • Panda Antivirus
  • F-PROT Antivirus for Workstations (home users)

دلایلی که لینوکس در مقابل بدافزارها کمتر آسیب‌پذیر است:

  • برنامه‌ها معمولاً با نام کاربری معمولی اجرا می‌شن و دسترسی root ندارند.
  • برنامه‌ها منبع باز هستند و در نتیجه افراد بیشتری اون‌ها رو کنترل می‌کنن.
  • کاربر نهایی نقش مؤثری در تنظیم (سیستم عامل و برنامه‌ها) دارد.
  • برنامه‌های سیستمی به طور مداوم آپدیت می‌شن.
  • برنامه‌ها معمولاً از منابع معتبر نصب می‌شن.

نوروزبل ۱۵۹۰

خب مراسم جشن نوروزبل امسال (سال ۱۵۹۰) هم دیروز در هالی دشت لنگرود برگزار شد و مفترخم که منم در این رویداد شرکت داشتم. فردا روزیه که ما وارد سال جدید می‌شیم و من برای تمام دوستانم و ملت کاسپین آرزوی خوشی‌ها در این سال جدید رو دارم.

عیدی من و شرکت جنگل برای سال جدید بستر نرم افزاری تقویم گیلکی هست. من و همکارانم در جنگل در تلاشیم تا به زودی تقویم گیلکی را به صورت دیجیتال به کلیه پلتفرم‌های رایج بیاریم. در ضمن کلیه تقویم‌ها به صورت کاملا اپن سورس (منبع باز) عرضه خواهند شد و به همین خاطر سایر توسعه دهندگان نرم افزار گیلک نیز در آینده خواهند توانست که از کدهای ما استفاده کنند.

در ادامه تعدادی از تصاویر من با بچه‌های داماشی موجود است.

شبکه تعاملی جنگل (jIn)

شبکه تعاملی جنگل یا همان jIn سامانه‌ای تبلیغاتی – اطلاع رسانی است. این اپلیکیشن در نسخه‌های اولیه خود در حدود ۲ سال پیش توسط شرکت جنگل ساخته شد.

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

خوشبختانه در روزهای اخیر این سامانه به ورژن ۱.۵ خود ارتقا یافته است. با تاکید من به عنوان مدیر عامل آپدیت به ورژن تازه برای مشتریان قدیمی به صورت کاملا رایگان صورت گرفت. من فکر می‌کنم که ما باید سعی کنیم که کیفیت محصولات خود را هم زمان با رضایت مشتریان قدیمی بالا ببریم. بالا بردن کیفیت به تنهایی به صورت ناخواسته بر ذهن مشتریان قدیمی تاثیر منفی خواهد گذاشت زیرا آن‌ها فکر خواهند کرد که هزینه‌ای که کرده‌اند بیهوده بوده است.

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

ساخت کورکورانه اپ محاسبه اضافه کاری پرستاران

من از حدود ۷ سالکی این امکان رو داشتم که به کامپیوتر دسترسی داشته باشم. البته اولین کامپیوتر شخصی‌ام زمانی که ۱۵ سال داشتم برام خریداری شد و این به این معناست که تا قبل از از ۱۵ سالگی این حق رو نداشتم که هر بلایی که دوست دارم به سر کامپیوتر بیارم.

اعتراف می‌کنم که وقتی به این فکر می‌کنم که آقایان بیل گیتس و مارک زاکربرگ در سنین ۱۳ – ۱۴ سالگی اولین برنامه تجاریشون رو نوشتن حسابی بهشون حسودیم میشه ولی چیزی که باعث غمگین شدنم میشه اینه که با توجه به شناختی که از خودم دارم مثلا اگر از همان ۷ سالگی یک کامپیوتر متعلق به خودم داشتم شاید من هم می‌تونستم در همون سنین برنامه‌های تجاریم رو عرضه کنم.

چیزی که این حس رو در من تقویت می‌کنه تجربه «ساخت کورکورانه اپ محاسبه اضافه کاری پرستاران» هست!

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

باید اعتراف کنم که چیزی که عامل نخریدن کامپیوتر در ۷ سالگی و همینطور عدم خرید یک گوشی اندرویدی در اوایل ظهور اندروید بود مسئله ساده‌ای به اسم «پول» بود. خب من جوانی بودم که هیچ منبع درآمدی نداشتم و قطعا خونوادم با درآمد بازنشستگی هم چندان براشون مهم نبود…

باری! چیزی که می‌خوام در این مطلب بهش اشاره کنم افتخار کردن به بی پولی نیست. من با بیل گیتس کاملا موافقم که میگه: «اگر پولدار به دنیا نیای تفصیر تو نیست ولی اگر بی پول بمیری تقصیر توئه!»

به هر حال زمانی بود که من گوشی اندرویدی نداشتم ولی این باعث نشد که نخوام به سراغ برنامه نویسی اندروید برم. به سراغ کتاب‌ها و ویدیوهای آموزشی رفتم و در محیط مجازی شروع به یادگیری برنامه نویسی اندروید بدون داشتن دستگاهی برای تست کردن!

در همین دوران یادگیری بود که دوستی که خودش در بیمارستان کار می‌کند با من در مورد مشکل پرستاران در خصوص محاسبه اضافه کاریشون صحبت کرد. راه حل ساده بود! کافی بود که برنامه‌ای برای اندروید بنویسم که پرستاران به راحتی بتونن توسط اون اضافه کاریشون رو محاسبه کنن… ولی این وسط یک چیزی می‌لنگید!

مشکل کار این بود که من هیچ تجربه‌ای در خصوص کار با اندروید نداشتم! اگر بخوام کمی فنی‌تر صحبت کنم من هیچ درکی نداشتم که UX در اندروید به چه شکل است!

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

اپلیکیشن محاسبه اضافه کاری پرستاران رو پس از مدتی وارد کافه بازار کردم و چندین ماه بعد از این ماجرا اولین گوشی اندرویدیم رو خریدم…

امروزه این اپ بیش از ۳۰۰ بار دانلود شده. وقتی به ظاهر این برنامه نگاه می‌کنم حالم بهم می‌خوره که سازنده‌اش هستم! چیزی که باعث شده که تا حالا این برنامه رو از کافه بازار حذف نکنم یادآوری این درس بهم بوده که با تلاش میشه غیر ممکن‌ها رو هم ممکن کرد. درسته که احتمالا حال من و بقیه همکارانم در سراسر دنیا از همچین ظاهری بهم میخوره ولی چیزی که مهمه اینه که این اپ در چند سال گذشته تونسته به چند صد نفر پرستار کمک کنه و چه چیزی از این بهتر؟! 🙂

باگ صده شمسی در همین نزدیکی‌ها

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

در اون دوران برنامه‌نویس‌ها عادت داشتند که برای صرفه‌جویی در حافظه فقط دو رقم آخر سال رو ذخیره می‌کردند. (البته امروزه نیز چنین کاری با الگوریتم‌های پیشرفته‌تر رایج است.) مثلا به جای ذخیره ۴ رقم  ۱۹۸۴ برای ذخیره این سال فقط ۸۴ رو ذخیره می‌کردند و نهایتا هر وقت به این عدد نیاز داشتند ۱۹ رو به اولش اضافه می‌کردند.

همین مسئله باعث به وجود اومدن باگ سال ۲۰۰۰ شد. برخی برنامه‌ها تصور می‌کردند که ۲۰۰۰ همان ۱۹۰۰ هست و بلعکس! و اینطوری شد که مشکلات زیادی در سراسر دنیا به وجود اومد.

حالا پس از گذشت حدود ۱۶ سال از این اتفاق اولین نشانه‌های ظهور باگی که من اون رو «باگ صده شمسی» نام گذاری کردم در حال رخ دادن است.

باگ صده شمسی در همین نزدیکی‌ها 1400 bug

کارت بانک ملی که در تصویر مشاهده می‌کنید متعلق به یکی از دوستان من در جنگل است. همونطوری که می‌بینید تاریخ انقضاء این کارت شتاب برابر با سال ۱۳۰۰ است! ظاهرا برنامه‌نویس‌های دستگاه صادر کننده این کارت هم مثل برنامه‌نویس‌های باگ هزاره خواستند که در حافظه صرفه‌جویی کنند و فقط دو رقم آخر از سال‌های مورد نیازشون رو ذخیره کردند.

کسی دقیقا نمی‌دونه که در سال ۱۴۰۰ چه اتفاقی برای ما میفته و چند درصد از برنامه‌های ایرانی به طور کامل و یا موقت از کار می‌افتند. چیزی که ما می‌دونیم اینه که از همین حالا باید به فکر بود و جلوی اتفاقات فجیعی رو که ممکنه در تاریخ ۱ فروردین ۱۴۰۰ بیفته رو گرفت.

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