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

اینم قسمت دوم ابتدا قسمت اول را بخوانید: https://www.freecodecamp.org/news/introduction-to-linux/

فصل 18: اصول امنیت محلی

اهداف یادگیری

در پایان این فصل، شما باید بتوانید:

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

حساب های کاربری

هسته لینوکس به کاربرانی که به درستی احراز هویت شده اند اجازه دسترسی به فایل ها و برنامه ها را می دهد. در حالی که هر کاربر با یک عدد صحیح منحصر به فرد (شناسه کاربر یا UID) شناسایی می شود، یک پایگاه داده جداگانه یک نام کاربری را با هر UID مرتبط می کند. پس از ایجاد حساب، اطلاعات کاربر جدید به پایگاه داده کاربر اضافه می شود و فهرست اصلی کاربر باید ایجاد و با برخی از فایل های ضروری پر شود. برنامه های خط فرمان مانند useradd و userdel همچنین ابزارهای رابط کاربری گرافیکی برای ایجاد و حذف حساب ها استفاده می شوند.

حساب های کاربری: /etc/passwd

برای هر کاربر، هفت فیلد زیر در قسمت نگهداری می شود /etc/passwd فایل:

نام زمینه جزئیات ملاحظات
نام کاربری نام ورود کاربر باید بین 1 تا 32 کاراکتر باشد
کلمه عبور رمز عبور کاربر (یا کاراکتر ایکس اگر رمز عبور در /etc/shadow فایل) در قالب رمزگذاری شده هرگز در لینوکس در هنگام تایپ نشان داده نمی شود. این چشم کنجکاو را متوقف می کند
شناسه کاربری (UID) هر کاربر باید یک شناسه کاربری (UID) داشته باشد.
  • UID 0 برای کاربر ریشه رزرو شده است
  • محدوده UID از 1 تا 99 برای سایر حساب های از پیش تعریف شده رزرو شده است
  • محدوده UID از 100 تا 999 برای حساب های سیستم و گروه ها رزرو شده است
  • کاربران عادی دارای UID 1000 یا بیشتر هستند
شناسه گروه (GID) شناسه گروه اولیه (GID)؛ شماره شناسایی گروه ذخیره شده در /etc/group فایل به طور مفصل در فصل مربوط به آن پرداخته شده است فرآیندها
اطلاعات کاربر این فیلد اختیاری است و اجازه درج اطلاعات اضافی در مورد کاربر مانند نام آنها را می دهد مثلا: روفوس تی فایرفلای
فهرست خانه مکان مسیر مطلق دایرکتوری اصلی کاربر مثلا: /home/rtfirefly
پوسته مکان مطلق پوسته پیش فرض کاربر مثلا:/bin/bash

انواع حساب ها

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

  • ریشه
  • سیستم
  • طبیعی
  • شبکه

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

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

آخرین ابزار
آخرین ابزار

آشنایی با اکانت ریشه

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

پینگوئن را با تاج و عصا تاکس کنید

هنگامی که به عنوان root وارد می شوید یا به عنوان root عمل می کنید، درخواست پوسته ” را نشان می دهد#(اگر استفاده می کنید ضربه شدید و همانطور که قبلاً در مورد آن صحبت کردیم، درخواست را سفارشی نکرده اید). این کنوانسیون به عنوان هشداری برای شما در مورد قدرت مطلق این حساب در نظر گرفته شده است.

عملیاتی که به حقوق ریشه نیاز دارد

ریشه برای انجام عملیاتی مانند:

  • ایجاد، حذف و مدیریت حساب های کاربری
  • مدیریت بسته های نرم افزاری
  • حذف یا تغییر فایل های سیستم
  • راه اندازی مجدد خدمات سیستم

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

LFS01_ch018_screen8
عملیاتی که به حقوق ریشه نیاز دارد

عملیاتی که به امتیازات روت نیاز ندارد

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

SUID (اسمالک et User شناسه پس از اجرا – شبیه به ویژگی “اجرا به عنوان” ویندوز) نوع خاصی از مجوز فایل است که به یک فایل داده می شود. استفاده از SUID مجوزهای موقتی را برای کاربر فراهم می کند تا برنامه ای را با مجوزهای فایل اجرا کند مالک (که ممکن است ریشه باشد) به جای مجوزهایی که توسط the کاربر.

جدول نمونه هایی از عملیاتی را ارائه می دهد که به حقوق ریشه نیاز ندارند:

عملیاتی که نیازی به دسترسی روت ندارند نمونه هایی از این عملیات
اجرای یک کلاینت شبکه اشتراک گذاری فایل از طریق شبکه
استفاده از دستگاه هایی مانند چاپگر چاپ از طریق شبکه
عملیات روی فایل هایی که کاربر دارای مجوزهای مناسب برای دسترسی است دسترسی به فایل هایی که به آنها دسترسی دارید یا داده ها را از طریق شبکه به اشتراک می گذارید
اجرای برنامه های SUID-root اجرای برنامه هایی مانند passwd

مقایسه sudo و su

در لینوکس می توانید از هر دو استفاده کنید سو یا سودو برای اعطای موقت دسترسی روت به یک کاربر عادی. با این حال، این روش ها در واقع کاملا متفاوت هستند. در زیر تفاوت بین این دو دستور ذکر شده است:

پیشنهاد می‌کنیم بخوانید:  روش لیست کردن بسته های نصب شده CentOS
سو سودو
هنگام بالا بردن امتیاز، باید رمز عبور root را وارد کنید. دادن رمز عبور root به یک کاربر معمولی هرگز و هرگز نباید انجام شود. هنگام بالا بردن امتیاز، باید رمز عبور کاربر را وارد کنید نه رمز عبور root.
زمانی که کاربر با استفاده از آن به اکانت روت ارتقا پیدا کرد سو، کاربر می تواند هر کاری را که کاربر root می تواند تا زمانی که کاربر بخواهد انجام دهد، بدون اینکه دوباره از او رمز عبور خواسته شود. ویژگی های بیشتری ارائه می دهد و ایمن تر و قابل تنظیم تر در نظر گرفته می شود. دقیقاً آنچه کاربر مجاز به انجام آن است را می توان دقیقاً کنترل و محدود کرد. به‌طور پیش‌فرض، کاربر یا همیشه باید رمز عبور خود را برای انجام عملیات‌های بیشتر به او بدهد سودو، یا می تواند از انجام این کار برای یک بازه زمانی قابل تنظیم اجتناب کند.
این فرمان دارای ویژگی‌های ثبت محدود است. این دستور دارای ویژگی های گزارش دقیق است.

ویژگی های sudo

سودو توانایی پیگیری تلاش های ناموفق برای دستیابی به دسترسی روت را دارد. مجوز کاربران برای استفاده سودو بر اساس اطلاعات پیکربندی ذخیره شده در /etc/sudoers فایل و در /etc/sudoers.d فهرست راهنما.

پیامی مانند زیر در یک فایل گزارش سیستم ظاهر می شود (معمولا /var/log/secure) هنگام تلاش برای اجرا سودو برای شخص بد بدون احراز هویت با موفقیت کاربر:

badperson : کاربر نه در sudoers . TTY=pts/4 ; PWD=/var/log ; USER=root ; COMMAND=/usr/bin/tail امن است

ویژگی های sudo
ویژگی های sudo

فایل sudoers

هر زمان که سودو فراخوانی می شود، یک ماشه به آن نگاه می کند /etc/sudoers و فایل های موجود در /etc/sudoers.d برای تعیین اینکه آیا کاربر حق استفاده دارد یا خیر سودو و دامنه امتیاز آنها چقدر است. درخواست‌های کاربر ناشناس و درخواست‌های انجام عملیات حتی با آن به کاربر مجاز نیست سودو گزارش می شوند. ساختار اصلی ورودی ها در این فایل ها به صورت زیر است:

چه کسی کجا = (as_whom) چه

/etc/sudoers حاوی اسناد زیادی در مورد نحوه سفارشی کردن در آن است. اکنون اکثر توزیع‌های لینوکس ترجیح می‌دهند که شما یک فایل را در دایرکتوری اضافه کنید /etc/sudoers.d با نامی مشابه کاربر این فایل حاوی اطلاعات هر کاربر است سودو پیکربندی، و باید فایل پیکربندی اصلی را دست نخورده رها کرد، به جز تغییراتی که بر همه کاربران تأثیر می گذارد.

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

# visudo /etc/sudoers
# visudo -f /etc/sudoers.d/student

ویرایشگر خاص واقعی که فراخوانی می شود به تنظیمات شما بستگی دارد ویرایشگر متغیر محیطی.

فایل sudoers
فایل sudoers

ثبت فرمان

به صورت پیش فرض، سودو دستورات و هر گونه خرابی وارد سیستم می شوند /var/log/auth.log تحت خانواده توزیع دبیان، و در /var/log/messages و/یا /var/log/secure در سیستم های دیگر این یک حفاظت مهم برای ردیابی و پاسخگویی است سودو استفاده کنید. یک ورودی معمولی پیام شامل:

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

اجرای دستوری مانند سودو هوامی منجر به ورود یک فایل log مانند:

دسامبر 8 14:20:47 سرور 1 sudo: op : TTY=pts/6 PWD=/var/log USER=root COMMAND=/usr/bin/whoami

varlogsecure
ثبت فرمان

جداسازی فرآیند

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

مکانیسم های امنیتی اضافی جدیدتر که خطرات را حتی بیشتر محدود می کند عبارتند از:

  • گروه های کنترل (cgroups)
    به مدیران سیستم اجازه می دهد تا فرآیندها را گروه بندی کنند و منابع محدود را به هر cgroup مرتبط کنند.
  • ظروف
    اجرای چندین سیستم لینوکس (کانتینر) ایزوله را بر روی یک سیستم واحد با تکیه بر cgroup ها ممکن می سازد.
  • مجازی سازی
    سخت افزار به گونه ای شبیه سازی می شود که نه تنها فرآیندها را می توان ایزوله کرد، بلکه کل سیستم ها به طور همزمان به عنوان مهمانان ایزوله و عایق بندی شده (ماشین های مجازی) روی یک میزبان فیزیکی اجرا می شوند.
جداسازی فرآیند
جداسازی فرآیند

دسترسی به دستگاه سخت افزاری

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

برای مثال هارد دیسک ها به صورت نمایش داده می شوند /dev/sd*. در حالی که یک کاربر ریشه می تواند به صورت خام روی دیسک بخواند و بنویسد، برای مثال، با انجام کاری مانند:

# echo hello world > /dev/sda1

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

دسترسی به دستگاه سخت افزاری
دسترسی به دستگاه سخت افزاری

حفظ جریان

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

به روز رسانی سیستم به موقع

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

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

نحوه ذخیره رمزهای عبور

این سیستم اصالت و هویت را با استفاده از اعتبار کاربر تأیید می کند.

در ابتدا، رمزهای عبور رمزگذاری شده در آن ذخیره می شد /etc/passwd فایلی که برای همه قابل خواندن بود. این باعث شد که رمزهای عبور به راحتی شکسته شوند.

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

نحوه ذخیره رمزهای عبور

در سیستم های مدرن، رمزهای عبور در واقع در یک فرمت رمزگذاری شده در یک فایل ثانویه به نام ذخیره می شوند /etc/shadow. فقط کسانی که دسترسی ریشه دارند می توانند این فایل را بخوانند یا تغییر دهند.

الگوریتم رمز عبور

حفاظت از رمزهای عبور به یک عنصر حیاتی امنیت تبدیل شده است. اکثر توزیع‌های لینوکس به یک الگوریتم رمزگذاری رمز عبور مدرن به نام SHA-512 (الگوریتم هش ایمن 512 بیت) متکی هستند که توسط آژانس امنیت ملی ایالات متحده (NSA) برای رمزگذاری رمزهای عبور ایجاد شده است.

الگوریتم SHA-512 به طور گسترده برای برنامه ها و پروتکل های امنیتی استفاده می شود. این برنامه ها و پروتکل های امنیتی عبارتند از TLS، SSL، PHP، SSH، S/MIME و IPSec. SHA-512 یکی از آزمایش شده ترین الگوریتم های هش است.

به عنوان مثال، اگر می خواهید رمزگذاری SHA-512 را آزمایش کنید، کلمه “test” را می توان با استفاده از برنامه رمزگذاری کرد. sha512sum برای تولید فرم SHA-512 (به نمودار مراجعه کنید):

رمزگذاری رمز عبور: sha512sum
رمزگذاری رمز عبور: sha512sum

روش های رمز عبور خوب

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

  • قدیمی کردن رمز عبور روشی است برای اطمینان از اینکه کاربران پیام هایی دریافت می کنند که به آنها یادآوری می کند پس از یک دوره خاص رمز عبور جدید ایجاد کنند. این می تواند تضمین کند که رمزهای عبور، در صورت شکسته شدن، فقط برای مدت زمان محدودی قابل استفاده خواهند بود. این ویژگی با استفاده از تغییر دادن، که اطلاعات انقضای رمز عبور را برای یک کاربر پیکربندی می کند.
  • روش دیگر این است که کاربران را مجبور به تنظیم رمزهای عبور قوی با استفاده از آن کنید پقابل حمل آاحراز هویت ماودول ها (PAM). PAM را می توان به گونه ای پیکربندی کرد که به طور خودکار تأیید کند که یک رمز عبور با استفاده از ایجاد یا اصلاح شده است passwd ابزار به اندازه کافی قوی است. پیکربندی PAM با استفاده از کتابخانه ای به نام پیاده سازی می شود pam_cracklib.so، که می تواند جایگزین شود pam_passwdqc.so برای استفاده از گزینه های بیشتر
  • همچنین می توان برنامه های شکستن رمز عبور مانند John The Ripper را برای ایمن کردن فایل رمز عبور و شناسایی ورودی های رمز عبور ضعیف نصب کرد. توصیه می شود قبل از نصب چنین ابزارهایی در هر سیستمی که متعلق به شما نیست، مجوز کتبی دریافت کنید.
با استفاده از chage
با استفاده از chage

نیاز به رمز عبور بوت لودر

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

علامتی که می گوید: رمز عبور الزامی است

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

علاوه بر این، شما هرگز ویرایش نمی کنید grub.cfg به طور مستقیم؛ در عوض، می توانید فایل های پیکربندی را در آن تغییر دهید /etc/grub.d و /etc/defaults/grub، و سپس اجرا کنید به روز رسانی-گراب، یا grub2-mkconfig و فایل پیکربندی جدید را ذخیره کنید.

برای کسب اطلاعات بیشتر، پست زیر را بخوانید: “محافظت با رمز عبور GRUB 2”.

آسیب پذیری سخت افزار

هنگامی که سخت افزار از نظر فیزیکی در دسترس است، امنیت می تواند به خطر بیفتد:

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

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

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

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

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

آسیب پذیری سخت افزار
آسیب پذیری سخت افزار

آسیب پذیری نرم افزار

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

پنگوئن کارتونی که در را باز می کند

خلاصه ی فصل

شما فصل 18 را کامل کرده اید. بیایید مفاهیم کلیدی تحت پوشش را خلاصه کنیم:

  • حساب ریشه بر کل سیستم قدرت دارد.
  • ممکن است برای کارهایی مانند راه‌اندازی مجدد سرویس‌ها، نصب دستی بسته‌ها و مدیریت بخش‌هایی از سیستم فایل که خارج از فهرست اصلی شما هستند، به امتیازات ریشه نیاز باشد.
  • برای انجام هرگونه عملیات ممتاز مانند تغییرات در سراسر سیستم، باید از یکی از آنها استفاده کنید سو یا سودو.
  • تماس می گیرد به سودو باعث جستجو در /etc/sudoers فایل، یا در /etc/sudoers.d دایرکتوری، که ابتدا تأیید می کند که کاربر تماس گیرنده مجاز به استفاده از آن است سودو و اینکه در محدوده مجاز مورد استفاده قرار می گیرد.
  • یکی از قدرتمندترین ویژگی های سودو توانایی آن در ثبت تلاش های ناموفق برای دستیابی به دسترسی ریشه است. به صورت پیش فرض، سودو دستورات و خرابی ها وارد سیستم می شوند /var/log/auth.log تحت خانواده دبیان و /var/log/messages در سایر خانواده های توزیع
  • یک فرآیند نمی تواند به منابع یک فرآیند دیگر دسترسی داشته باشد، حتی زمانی که آن فرآیند با همان امتیازات کاربر در حال اجرا باشد.
  • سیستم با استفاده از اعتبار کاربری، اصالت و هویت را تأیید می کند.
  • الگوریتم SHA-512 معمولاً برای رمزگذاری رمزهای عبور استفاده می شود. آنها را می توان رمزگذاری کرد، اما نه رمزگشایی.
  • ماژول‌های احراز هویت قابل اتصال (PAM) را می‌توان به گونه‌ای پیکربندی کرد که به‌طور خودکار تأیید کند که گذرواژه‌های ایجاد یا اصلاح شده با استفاده از passwd ابزار به اندازه کافی قوی هستند (آنچه به اندازه کافی قوی در نظر گرفته می شود را می توان پیکربندی کرد).
  • خط مشی امنیت فناوری اطلاعات شما باید با الزاماتی در مورد نحوه ایمن سازی صحیح دسترسی فیزیکی به سرورها و ایستگاه های کاری شروع شود.
  • به روز نگه داشتن سیستم های شما گام مهمی برای جلوگیری از حملات امنیتی است