🐧 چگونه می توان از سیستم خود در برابر خاموش کردن تصادفی محافظت کرد – تیم امنیت اطلاعات

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

نصب

بسته را نصب کنید Molly-Guard.

 $ sudo apt installly molly guard 

اساساً خدمات زیر را لغو می کند: ] توقف خاموش poweroff راه اندازی مجدد

همچنین می توانید ابزارهای پیاده روی pm-hibernate ، pm-suspend و pm-suspend-hybrid را لغو کنید ، اما این کار به تنظیمات اضافی

نیاز دارد. ذخیره شده در فهرست / etc / molly-guard / .

تست در حالت آزمایشی

تنظیمات پیش فرض از عملیات تصادفی محافظت می کند.

 itsecforu @ مثال: ~ $ su راه اندازی مجدد  - مولی نگهبان-کاری نکنید 
من: حالت آزمایشی؛ مولی گارد به دلیل - مولتی نگهبان - کاری - کاری انجام نمی دهد.
W: molly-guard: جلسه SSH شناسایی شد!
لطفاً برای راه اندازی مجدد نام میزبان دستگاه را تایپ کنید: به عنوان مثال
مولی گارد: اجرا می شود: / lib / molly-guard / reboot
 itsecforu @ مثال: ~ $ sudo reboot  - molly-guard-do-asgjë 
من: حالت آزمایشی؛ مولی گارد به دلیل - مولتی نگهبان - کاری - کاری انجام نمی دهد.
W: molly-guard: جلسه SSH شناسایی شد!
لطفاً برای راه اندازی مجدد ، نام میزبان دستگاه را تایپ کنید: x
چیز خوبی که پرسیدم؛ من مثال را دوباره راه اندازی نمی کنم ...
W: قطع مجدد راه اندازی مجدد به دلیل خروجی نام query-host 30 از کد 1.

با احتیاط ، می توانید از یک رویکرد مستقیم تر برای راه اندازی مجدد سرور استفاده کنید.

 $ ssh itsecforu @ مثال sudo reboot  - molly-guard-do-asgjë 
من: حالت آزمایشی؛ مولی گارد به دلیل - مولتی نگهبان - کاری - کاری انجام نمی دهد.
molly-guard: run:: / lib / molly-guard / reboot 

ایجاد پیام های اضافی

می توانید برای برخی عملیات پیام ایجاد کنید و آنها را در فهرست /etc/molly-guard/messages.d ذخیره کنید.

برای عملیات راه اندازی مجدد یک پیام را تعیین کنید.

 $ echo -e " n شما به چیزی فکر کردید ، قدیمی است ...  n" | sudo tee /etc/molly-guard/messages.d/rebootociation19659005-05 هر عملیاتی بدون پیام خاص در صورت وجود از پرونده پیش فرض استفاده می کند. 

 $ echo -e " n دستور DevSecOps را بگویید.  n" | sudo tee /etc/molly-guard/messages.d/defaultociation19659013† نمونه های زیر این رفتار را نشان می دهد. 

 itsecforu @ مثال: ~ $ sudo reboot  - molly-guard-do-asgjë 
من: حالت آزمایشی؛ مولی گارد به دلیل - مولتی نگهبان - کاری - کاری انجام نمی دهد.

 فکر می کنید آنجا ، قدیمی است ... 

W: molly-guard: جلسه SSH شناسایی شد!
لطفاً برای راه اندازی مجدد نام میزبان دستگاه را تایپ کنید: به عنوان مثال
مولی گارد: اجرا می شود: / lib / molly-guard / reboot
 itsecforu @ مثال: ~ $ sudo shutdown  - molly-guard-do-asgjë 
من: حالت آزمایشی؛ مولی گارد به دلیل - مولتی نگهبان - کاری - کاری انجام نمی دهد.

 به تیم DevSecOps بگویید 

W: molly-guard: جلسه SSH شناسایی شد!
لطفاً برای راه اندازی مجدد نام میزبان دستگاه را تایپ کنید: به عنوان مثال
مولی گارد: اجرا می شود: / lib / molly-guard / shutdown

ایجاد چک های اضافی

لازم است stdin در ترمینال باز شود تا از انجام هر گونه کار با استفاده از SSH به صورت تعاملی جلوگیری کند.

یک چک 20-نیاز-استین را در فهرست / etc / molly-guard ایجاد کنید. /run.d/.ross19659027-03#!/bin/sh
#
# 20-need-stdin - به stdin در ترمینال احتیاج دارید
#
تنظیم کردن

# نیاز به یک ترمینال تعاملی دارد که به stdin وصل شده است
اگر [ ! -t 0 ]؛ پس از آن
  echo "STDIN در یک ترمینال باز نمی شود ؛ من $ MOLLYGUARD_CMD نمی گیرم ..." & gt؛ & amp؛ 2
  خروج از 1
fi

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

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

 $ ssh ansible @ مثال sudo reboot  - molly-guard- انجام-هیچ کاری 
من: حالت آزمایشی؛ مولی گارد به دلیل - مولتی نگهبان - کاری - کاری انجام نمی دهد.

 فکر می کنید آنجا ، قدیمی است ... 

 STDIN در ترمینال باز نمی شود. راه اندازی مجدد نمی شود ... 
W: قطع مجدد راه اندازی مجدد به دلیل خروج 20-نیاز-استدین با کد 1.
 ansible @ مثال: ~ $ sudo reboot  - molly-guard-do-asgjë 
من: حالت آزمایشی؛ مولی گارد به دلیل - مولتی نگهبان - کاری - کاری انجام نمی دهد.

 فکر می کنید آنجا ، قدیمی است ... 

W: molly-guard: جلسه SSH شناسایی شد!
لطفاً برای راه اندازی مجدد نام میزبان دستگاه را تایپ کنید: به عنوان مثال
مولی گارد: اجرا می شود: / lib / molly-guard / reboot

یادداشت های اضافی

من از پارامتر —molly-guard-do-asgjë در هر مثال که در اینجا شرح داده شد ، استفاده کردم ، آن را حذف کنید تا یک عملیات خاص (خاموش ، راه اندازی مجدد) انجام شود.