مدیریت سرور توسط زاگریو

12 مزیت برون سپاری مدیریت سرور

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

در این مطلب قصد داریم به شما کمک کنیم که تصمیم بگیرید که آیا تامین خدمات مدیریت سرور توسط یک مجموعه تخصصی تاثیر و مزایایی برای کسب و کار شما خواهد داشت یا خیر

سپردن مدیریت سرور به یک شرکت تخصصی، به‌ویژه برای کسب‌وکارهایی که به خدمات آنلاین و میزبانی وب وابسته‌اند، می‌تواند تصمیمی هوشمندانه باشد. در ادامه، دلایلی را از جنبه‌های مختلف بررسی می‌کنیم.

یک سرویس مدیریت شده از زبان PCMagazine بصورت خلاصه به معنای انجام زحمت کار بصورت حرفه ای و با تجهیزات و سامانه های به روز توسط مجموعه ای تخصصی در خارج از سازمان شماست.


1. صرفه‌جویی در زمان

مدیریت سرور نیازمند زمان زیادی برای نصب، پیکربندی، نظارت و رفع اشکال است. اگر بخواهید خودتان این کار را انجام دهید:

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

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


2. بهینه‌سازی هزینه‌ها

اگرچه در نگاه اول هزینه پرداخت به شرکت‌های تخصصی ممکن است زیاد به‌نظر برسد، اما در بلندمدت هزینه کمتری برای کسب‌وکار شما دارد:

  • استخدام یک مدیر سرور داخلی هزینه بیشتری دارد (حقوق ثابت، مزایا و غیره).
  • ابزارها و نرم‌افزارهای نظارتی و امنیتی گران‌قیمت هستند، اما شرکت‌های تخصصی به‌صورت اشتراکی از این ابزارها استفاده می‌کنند و هزینه آن‌ها در بین مشتریان تقسیم می‌شود.
  • هزینه‌های ناشی از خرابی سرور یا از دست رفتن داده‌ها به‌مراتب بیشتر از هزینه خدمات مدیریت سرور است.

3. دسترسی به دانش و تخصص پیشرفته

مدیریت سرور شامل موارد پیچیده‌ای مانند امنیت، بهینه‌سازی عملکرد، تنظیمات پیشرفته، و نظارت 24/7 است. شرکت‌های تخصصی تیم‌هایی دارند که:

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

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


4. امنیت بالاتر

امنیت داده‌ها و سرور از حیاتی‌ترین دغدغه‌های هر کسب‌وکاری است. شرکت‌های مدیریت سرور:

  • نظارت مداوم بر سرور دارند و به‌سرعت تهدیدات را شناسایی می‌کنند.
  • از ابزارهای پیشرفته امنیتی استفاده می‌کنند که ممکن است هزینه خرید آن‌ها برای شما به‌صرفه نباشد.
  • به‌طور منظم به‌روزرسانی‌ها و پچ‌های امنیتی را اعمال می‌کنند.

اگر امنیت سرور خود را به‌درستی مدیریت نکنید، ممکن است قربانی هک، سرقت داده‌ها یا حملات سایبری شوید که می‌تواند خسارات مالی و اعتباری سنگینی به همراه داشته باشد.


5. پشتیبانی 24/7

سرورها ممکن است در هر لحظه از شبانه‌روز دچار مشکل شوند. شرکت‌های مدیریت سرور معمولاً تیم‌های پشتیبانی 24/7 دارند که:

  • به‌صورت دائمی سرور شما را زیر نظر دارند.
  • در صورت بروز مشکل به‌سرعت وارد عمل می‌شوند.
  • اطمینان می‌دهند که حداکثر زمان آپتایم (Uptime) برای سرور شما فراهم باشد.

اگر بخواهید خودتان این کار را انجام دهید، باید دائماً آماده باشید و حتی در نیمه‌شب نیز احتمالاً مجبور به رفع مشکلات خواهید شد.


6. بهبود عملکرد و کارایی

شرکت‌های مدیریت سرور به دلیل تجربه و تخصص خود می‌توانند سرور شما را به‌گونه‌ای پیکربندی کنند که بهترین عملکرد را داشته باشد:

  • بهینه‌سازی منابع سرور (CPU، RAM و فضای دیسک).
  • کاهش زمان بارگذاری (Load Time) که تأثیر مستقیم بر تجربه کاربری و سئو دارد.
  • ارائه پیشنهاداتی برای ارتقاء یا تغییر منابع در صورت رشد کسب‌وکار شما.

اگر خودتان این کار را انجام دهید، ممکن است پیکربندی نادرستی انجام دهید که باعث هدررفت منابع یا کاهش کارایی شود.


7. تمرکز بر کسب‌وکار اصلی

وقتی مدیریت سرور را به یک شرکت تخصصی بسپارید:

  • می‌توانید وقت و انرژی خود را صرف رشد و توسعه کسب‌وکار خود کنید.
  • از نگرانی‌های مربوط به نگهداری و مدیریت سرور خلاص می‌شوید.
  • تیم شما می‌تواند بر اهداف اصلی تمرکز کند، نه مسائل فنی پیچیده.

8. دسترسی به SLA (توافق‌نامه سطح خدمات)

بیشتر شرکت‌های مدیریت سرور SLA ارائه می‌دهند که در آن تعهد می‌کنند خدمات باکیفیت ارائه دهند. این شامل:

  • تضمین زمان پاسخ‌گویی.
  • تعهد به حل مشکلات در زمان معین.
  • جبران خسارت در صورت عدم رعایت SLA.

در مقابل، اگر خودتان مدیریت را بر عهده داشته باشید، هیچ ضمانتی برای رفع سریع مشکلات وجود ندارد.


9. مقایسه در سناریوهای واقعی

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

10. کاهش ریسک و خطا

انجام تنظیمات و مدیریت سرور توسط افراد غیرمتخصص می‌تواند منجر به:

  • خرابی‌های غیرمنتظره.
  • از دست رفتن داده‌ها.
  • تنظیمات امنیتی ضعیف و آسیب‌پذیری در برابر حملات.

شرکت‌های تخصصی با داشتن فرآیندها و پروتکل‌های استاندارد، این ریسک‌ها را به حداقل می‌رسانند.


11. ارتقای سئو

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

12. دریافت مشاوره تخصصی:

  • با حضور یک تیم تخصصی در کنار خود، در زمان های ضروری می توانید از تخصص ایشان برای استفاده در توسعه کسب و کار خود مشاوره بگیرید.
  • در دسترس بودن مشاور متخصص در حوزه فن آوری اطلاعات به شما کمک شایانی در تصمیم گیری های مهم برای سایت و یا برنامه شما خواهد بود.

نتیجه‌گیری:

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

نصب مخزن EPEL داخل کشور بدون تحریم

341views

رفع مشکل مخزن EPEL با سرور داخلی بدون تحریم و کاهش سرعت

مخزن EPEL (Extra Packages for Enterprise Linux) یک مخزن نرم‌افزاری متن‌باز است که توسط پروژه Fedora برای توزیع‌های لینوکسی Enterprise مانند RHEL (Red Hat Enterprise Linux)، CentOS، راکی لینوکس Rocky Linux و آلمالینوکس AlmaLinux ارائه شده است. هدف اصلی این مخزن، فراهم کردن بسته‌های اضافی و کاربردی برای این توزیع‌هاست که در مخازن رسمی وجود ندارند.


EPEL چیست؟

EPEL یک منبع گسترده از نرم‌افزارها و ابزارهایی است که برای استفاده در محیط‌های لینوکسی سازمانی طراحی شده‌اند. این مخزن، بسته‌هایی را که توسط جامعه کاربری Fedora توسعه یافته‌اند، در دسترس کاربران توزیع‌های RHEL و مبتنی بر آن قرار می‌دهد. بسته‌های موجود در EPEL با استانداردهای بالا ساخته شده‌اند و با سیستم‌های لینوکسی سازگار هستند.


چه کاربردی دارد؟

  • افزایش امکانات پیش‌فرض لینوکس سازمانی:
    توزیع‌های RHEL و مشابه‌های آن برای استفاده در محیط‌های تجاری و سازمانی طراحی شده‌اند و فقط ابزارها و بسته‌های ضروری در مخازن رسمی آن‌ها وجود دارد. EPEL به کاربران اجازه می‌دهد ابزارها و بسته‌های اضافی موردنیاز خود را بدون ایجاد مشکل در پایداری سیستم، نصب کنند.
  • دسترسی به نرم‌افزارهای متن‌باز محبوب:
    بسیاری از ابزارهای متن‌باز که به‌طور گسترده توسط توسعه‌دهندگان، مدیران سیستم و کاربران استفاده می‌شوند، مانند htop، nginx، fail2ban، ansible و غیره، از طریق EPEL در دسترس هستند.
  • رفع نیاز به کامپایل دستی نرم‌افزارها:
    بدون استفاده از EPEL، کاربران باید بسیاری از نرم‌افزارها را به‌صورت دستی کامپایل کنند، که زمان‌بر است و ممکن است به مشکلات وابستگی‌ها (dependencies) برخورد کنند.

زیرساخت ها و نرم افزاهایی که در EPEL وجود دارد:

  • ابزارهای توسعه‌دهنده: مانند git ،vim-enhanced و build-essential
  • نرم‌افزارهای مانیتورینگ و مدیریت سیستم: مانند nagios ،zabbix-agent و net-tools
  • کتابخانه‌های برنامه‌نویسی و ماژول‌ها: مانند python-pip ،perl-modules و nodejs
  • سرورها و ابزارهای تحت وب: مانند nginx ،haproxy و phpMyAdmin
  • ابزارهای شبکه: مانند iperf3 ،tcpdump و wireshark

دلایل نیاز به EPEL:

  1. گستره وسیع بسته‌ها:
    مخازن رسمی RHEL، CentOS یا AlmaLinux شامل بسته‌های محدود و پایه‌ای هستند. برای دسترسی به ابزارهای اضافی، EPEL ضروری است.
  2. پایداری و سازگاری:
    تمام بسته‌های موجود در EPEL مطابق با استانداردهای Fedora ساخته شده‌اند، بنابراین قابل اعتماد بوده و با سیستم‌های لینوکسی Enterprise سازگارند.
  3. مدیریت وابستگی‌ها:
    با استفاده از EPEL، مشکلات مربوط به وابستگی نرم‌افزارها به حداقل می‌رسد زیرا تمام نیازمندی‌های یک بسته به‌صورت خودکار از مخزن نصب می‌شوند.
  4. به‌روزرسانی منظم:
    بسته‌های موجود در EPEL به‌طور مرتب به‌روزرسانی می‌شوند و آخرین نسخه‌های پایدار نرم‌افزارها را ارائه می‌دهند.

برخی از برنامه‌های ضروری داخل EPEL:

  • Ansible: ابزاری برای اتوماسیون مدیریت سیستم.
  • Htop: ابزار مانیتورینگ و مشاهده منابع سیستم.
  • Fail2ban: برای محافظت از سرور در برابر حملات brute force.
  • Nginx: به‌عنوان یک وب‌سرور یا پروکسی معکوس.
  • Certbot: برای دریافت و مدیریت گواهی‌های SSL از LetsEncrypt.

چگونه EPEL را فعال کنیم؟

فعال‌سازی EPEL بسیار ساده است. برای فعال کردن این مخزن در سیستم‌های لینوکسی مبتنی بر RHEL (مانند CentOS و AlmaLinux)، می‌توانید دستور زیر را اجرا کنید اما پس از اجرای این دستور در سرورهای داخل کشور ، اقدام به نصب و با به روزرسانی از این مخزن با خطا مواجه خواهد شد زیرا Fedora آدرسهای IP ایران را تحریم کرده است و باید با استفاده از ابزارهایی که برای دور زدن تحریم طراحی شده اند این موارد را دور بزنید که متاسافانه دارای سرعت بسیار پائینی هستند و بهره وری و سرعت انجام کار را بسیار زیاد می کند.

در همین راستا زاگریو به منظور رفاه حال همکاران و استفاده کنندگان سیستم ها و سرورهای لینوکسی؛ اقدام به راه اندازی مخازن متن باز لینوکس در ایران کرده است و همچنین یک کپی از مخزن epel در داخل کشور بر روی شبکه نیم‌بها با سرعت 100Gbit/s نموده است.


مشخصات سرور EPEL در ایران بدون تحریم:

آدرس اصلی مخزن که در اصل یک رونوشت از مخزن اصلی به آدرس ذیل است:

این مخزن بر روی آدرس‌ها و پروتکل‌های HTTP, rsync و FTP نیز در دسترس است:

یکی از مهمترین مزایای استفاده از این محزن، نیم بها بودن تعرفه اینترنت شما خواهد بود.

به دلیل محدودیت فضا، صرفا برنامه های مربوط به نسخه 7 به بالا در این مخزن وجود دارد و نسخ 4، 5 و 6 در این مخزن وجود نداند.

نحوه نصب مخزن EPEL زاگریو

نصب کلید GPG

ابتدا باید کلید مربوط به نسخه سرور خود را نصب کنید، نسخه سرور خود را با دستور cat /etc/redhat-release پیدا کنید.

نصب کلید برای سرورهای نسخه 7

نصب کلید برای سرورهای نسخه 8

نصب کلید برای سرورهای نسخه 9

نصب کلید برای سرورهای نسخه 10

تغییر فایلهای Repository (برای REHL9)

حالا باید فایلهایی که مربوط به مسیردهی مخزن هست را تغییر داد. برای انجام این کار چندین روش وجود دارد. این فایلهای در مسیر etc/yum.repos.d/ قرار دارند و در این فایلهای مقداری برای مسیر اتصال به مخزن ها تعریف شده است که metalink نام دارد. این مسیر لیستی از مخازن هستند که بر اساس موقعیت جغرافیایی و سرعت شبکه شما، به بهترین آنها متصل می شوید و عملیات دانلود از آن سرور انجام می شود.

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

نمونه تنظیم شده فایل epel.repo برای مخزن زاگریو در داخل کشور

با استفاده از یکی از روشهای ذیل این تغییر را می توانید انجام دهید:

  • بصورت دستی با ویرایشگر دلخواه خود مانند nano فایلهای etc/yum.repos.d/epel.repo/ و etc/yum.repos.d/epel-testing.repo/ را ویرایش کنید و یک # در ابتدای خطوطی که داری metalink هستند اضافه کنید و # را از ابتدای baseurl حذف کنید و مقدار ذیل را بجای آن تنظیم کنید:

  • با استفاده از دستورات ذیل، فایلهای مخزن را حذف و نسخه تنظیم شده توسط ما را جایگزین آنها کنید: (روش پیشنهادی)

  • محتوای فایلهای epel.repo و epel-testing.repo را با دستورات ذیل حذف و بصورت دستی جایگزین کنید:

غیرفعال کردن مخزن epel-cisco

در نهایت باید دستور زیر را در هر یک از روش فوق بزنید تا مخزن epel-cisco-openh264 را که از طرف سیسکو برای توزیع Codec H264 پیاده سازی شده است را غیرفعال کنید:

جمع‌بندی:

مخزن EPEL یک ابزار حیاتی برای مدیران سیستم‌ها و توسعه‌دهندگان است که نیازمند دسترسی به بسته‌های اضافی بدون به خطر انداختن پایداری سیستم هستند. این مخزن شامل طیف وسیعی از ابزارها و کتابخانه‌های متن‌باز است و به دلیل سازگاری بالا و مدیریت ساده، استفاده از آن برای هر سیستم لینوکسی سازمانی توصیه می‌شود.

معرفی EPEL در سایت RedHat

تامین امنیت سرورهای لینوکسی به واسطه به‌روزرسانی خودکار

به‌روزرسانی خودکار سرور برای تامین امنیت

تامین امنیت سرورهای لینوکسی از طریق به‌روزرسانی اتوماتیک


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

یک قانون عمومی اغلب برای استفاده از به روزرسانی خودکار وجود دارد:

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

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

 

نحوه راه اندازی به‌روزرسانی خودکار


شما میتوانید از این سرویس برای دانلود و نصب خودکار هر نوع به روزرسانی استفاده کنید (مثلا به روزرسانی های امنیتی)

بسته dnf-automatic مبنی بر RPM به عنوان یک افزونه به DNF اضافه می شود سرویسی برای به روزرسانی خودکار فراهم می کند.

 

نصب و تنظیم dnf-automatic

بر روی سیستم عامل خود بسته مذکور را به روش ذیل نصب کنید:

 

بصورت پیشفرض فایل تنظیمات خود را در مسیر etc/dnf/automatic.conf/ ایجاد می کند. این تنظیمات بصورتی است که فقط بسته ها را دانلود می کند و آنها را نصب نمی کند. برای تغییر و یا افزودن هر نوع تنظیماتی، فایل مذکور را با کاربر دارای دسترسی root توسط ویرایشگر دلخواهتان باز کنید.

 

نصب و راه اندازی dnf-automatic

پس از نصب دستور زیر را برای فعالسازی وارد کنید:

سپس با دستور ذیل وضعیت سرویس را بررسی کنید:

در نسخ فعلی سه تایمر برای این سرویس وجود دارد:

dnf-automatic-download.timer که فقط دانلود را انجام می دهد.

dnf-automatic-install.timer که عملیات دانلود و نصب را انجام میدهد.

dnf-automatic-notifyonly.timer که فقط برا اساس تنظیمات فایل فوق؛ اطلاع رسانی را انجام می دهد.

شما می توانید از download_updates و apply_updates در داخل etc/dnf/automatic.conf/ بهره ببرید.

 

آیا بروزرسانی های DNF قابل اطمینان هستند؟


در سیستم های مبتنی بر Fedora و REHL بررسی کلید های GPG بصورت پیشفرض فعال هستند. با فرض اینکه شما کلید صحیح را در سیستم خودتان تعریف کرده باشید و مقدار gpgcheck=1 را در فایل dnf.conf وارد کرده باشید، میتوان اینگونه تصور کرد که فایلهای به روزرسانی خراب و یا تغییر داده شده نیستند و اصالت آنها را تایید کرد. در صورت فعال بودن این گزینه، یک خرابکار به هیچ وجه نمیتواند بسته ای را تولید و برای سرور شما ارسال کند که سیستم شما آن را قبول کند (مگر اینکه آنها کلید خصوصی متناظر با آنچه شما نصب کرده اید را داشته باشند) و در زمان دانلود سیستم فایلهای معیوب را شناسایی خواهد کرد.

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

 

چرا از به‌روزرسانی خودکار استفاده کنیم؟


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

در عین حال که می‌بایست در استفاده از به روزرسانی های خودکار، خصوصا در محیط های Production محتاط باشید، بررسی این موضوع حداقل در برخی شرایط ارزش بررسی دارد.

دلایل استفاده از به‌روزرسانی خودکار

هر چند کسی نمی تواند بصورت تضمینی این اطمینان را به شما بدهد که سرور شما کاندید مناسبی برای دریافت به روزرسانی های خودکار هست یا نه، بررسی چندین مورد می تواند در تصمیم گیری به شما کمک کند.

برخی از مواردی که در این خصوص می تواند به شما کمک کند به شرح ذیل است:

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

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

 

دلایل عدم استفاده از به‌روزرسانی خودکار

همانطور که در بالا گفتیم، کسی نیز نمیتواند بگوید که سیستم شما کاندید خوبی برای عدم به روزرسانی خودکار نیست، با این حال موارد زیر در تصمیم گیری به شما کمک می کند:

  • عملکرد دائمی سیستم شما به قدری حیاتی است که شما و یا سازمان نمیتوانید لحظه ای قطعی سرویس را تحمل کنید.
  • شما برنامه های دست نویس را استفاده می کنید، از سورس یک برنامه را compile کرده اید و یا عملکرد سرویس شما نیازمند یک نسخه خاص از یک پیش نیاز نرم افزاری است.
  • شما از یک kernel خاص و یا یک ماژول اختصاصی در kernel خود بهره می برید و یا برنامه شما از یک ویژگی منحصر به نسخه خاصی از kernel بهره می برد. (شما می توانید آپدیت های kernel را محدود کنید)
  • محیط کاری و نرم افزاری شما نیازمند بررسی دقیق هرگونه تغییر و یا نظارت بر عملکرد هر بخش از سرویس می باشد.
  • از یک مخزن (Repository) غیر استاندارد استفاده می کنید که ممکن است با برنامه هایی که در مخزن اصلی وجود دارند تداخل نسخه ای داشته باشند.

همچنین برخی موارد هستند که بررسی به روزرسانی ها قبل از نصب آنها قطعا روش درستی برای کار نیست که چند نمونه مثال خواهیم زد:

  • نیاز به بکاپ گیری قبل از اعمال به‌روزرسانی: حتی بهترین برنامه ها می‌تواند دارای ایراد باشند. ممکن است تنظیماتی داخل یک فایل داشته باشید که با آپدیت، آن تغییرات از دست بروند. یا ممکن است نسخه جدید یک برنامه نحوه تنظیمات آن فرق کرده باشد و یا برخی از flag ها در آن حذف و یا اضافه شده باشد که عدم وجود و یا وجود آنها منجر به خطا در سرویس شما بشود. بهتر است قبل از به روزرسانی سرویس هایی مانند وب سرور، بانک اطلاعاتی و پست الکترونیکی؛ حتما از فایلهای تنظیمات خود یک نسخه پشتیبان تهیه کنید.
  • عوارض پیش بینی نشده: برخی از برنامه ها ممکن است دارای عوارضی جانبی باشند مانند برنامه هایی که از ویژگی cron jobs بهره می‌برند. به روزرسانی بسته هایی مانند openssl، openldap و sql به روزرسانی های متعددی برای برنامه هایی که به نظر بی ربط می‌رسند دارند.
  • باگ: برخی از بسته ها ممکن است اسکریپت آپدیت کننده آن دارای ایراد باشد که بعد از نصب ممکن است با خطاهای ناشناخته و یا عجیب روبرو شوید. نمونه ای از این خطا ها قبلا در Mozilla مشاهده شده است که بعضا آیکن ها حذف شده و برای کاربران دچار اعصاب خوردی و یا مشکلات کاربری ایجاد کرده است.
  • به روزرسانی خودکار ممکن است تمامی مراحل لازم برای ارتقای امنیت سیستم را انجام ندهد. برای مثال DNF می تواند آپدیت های kernel را نصب کند اما تغییرات اعمال نمی شوند. بسیاری از اینگونه تغییرات نیازمند ریستارت شدن سرویس (daemon) و یا ریستارت سرور است. این موارد ممکن است برای کاربر شائبه این را ایجاد کند که سیستم امن شده است در صورتی که به‌روزرسانی اصلا اعمال نشده است.

 

روش استاندارد برای انجام به‌روزرسانی خودکار


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

بسته هایی به روزرسانی را کنترل کنید که آیا بصورت کامل نصب شده اند و یا نیازمند انجام عملیات دستی هستند و یا خیر، که برای این مهم میتوانید لاگ را در مسیر var/log/dnf.log/ بررسی کنید.

شما می توانید موجودیت بسته به روزرسانی را به واسطه ایمیل اطلاع رسانی دریافت و بررسی کنید. با اعمال تنظیمات در فایل etc/dnf/automatic.conf/

 

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

تنظیمات فوق به این معناست که به محض اجرا شدن عملیات به روزرسانی؛ اطلاعات بسته های به روزرسانی موجود و همچنین لاگ بسته های دانلود شده و یا نصب شده مطابق تنظیمات فایل automatic.conf برای شما ارسال خواهد شد.

 

راهکارهای جایگزین


بجای استفاده از dnf-automatic می توانید از auter نیز استفاده کنید. عملکرد آن بسیار مشابه به dnf-automatic است اما انعطافپذیری بیشتری برای تنظیمات زمانبندی اجرا دارد و همچنین امکانات اضافه ای برای تنظیمات اجرای اسکریپ هایی قبل و بعد از اجرای به روزرسانی ها دارد که شامل ریستارت سرور نیز می شود. با این حال پیاده سازی این ویژگی ها نیازمند تنظیمات پیچیده تری می باشد.

پس از نصب می بایست فایل تنظیمات آن در مسیر etc/auter/auter.conf/ را ویرایش کنید.

Auter بصورت پیشفرض هیچگونه عملیاتی انجام نمی دهد و برای تنظیم باید از کد prep-- (برای دانلود) و همچنین apply-- (برای نصب) استفاده کنید. تنظیمات اجرای آن درون فایلهای cron که در مسیر etc/cron.d/auter/ وجود دارد که شامل تعداد بسیاری از مثال های قابل انجام می باشد.

برای تست فوری عملکرد آن می توانید از دستور زیر استفاده کنید:

برای غیرفعال سازی آن می توانید از دستور زیر استفاده کنید. این دستور برای Cron Job ها نیز عمل میکند:

 

راهکار جایگزین استفاده از به‌روزرسانی خودکار برای تامین امنیت


اطلاع رسانی

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

زمانبندی به روزرسانی ها

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

روش‌های دیگر تامین امنیت

اگر انجام این به روزرسانی ها را در دستور کار خود ندارید میتوانید از روش های دیگری به منظور تامین امنیت سرور اختصاصی و یا سرور ابری خودتان نیز استفاده کنید تا در مقابله با تهدیدات سایبری، نفوذ هکر ها و نشت داده های خود آسوده خاطر باشید. از جمله این موارد می‌توان به نصب دیوار آتش سخت افزاری و یا نرم افزاری (iptables, ipchains, tcp wrappers) اشاره نمود، همچنین عدم نصب برنامه های اضافی و عدم انجام کارهای پرخطر توسط سیستم سرور (استفاده از اینترنت، کنترل ایمیل و ..) به همراه کنترل و نظارت ورود غیرمجاز (بررسی لاگ های ورود، استفاده از سیستم های IDS و..) از جمله راه کار هایی است که می توانید برای افزایش امنیت و حفاظت از ماشین کاری خود انجام دهید.

 

منبع: مقالات آموزشی فدورا