NDCTL-FREEZE-SECURITY(1) ndctl Manual NDCTL-FREEZE-SECURITY(1)

ndctl-freeze-security - انجماد و مسدودسازی عملیات امنیتی روی ماژول‌های DIMM تا بوت بعدی

ndctl freeze-security <nmem0> [<nmem1>..<nmemN>] [<گزینه‌ها>]

جلوگیری از انجام هرگونه عملیات امنیتی بیشتر بر روی ماژول‌های DIMM تعیین‌شده تا زمان راه‌اندازی (بوت) بعدی سیستم. این ابزار در شرایطی کاربرد دارد که مدیر سیستم تمامی اقدامات امنیتی مورد انتظار را برای اجرای جاری انجام داده و قصد دارد وضعیت امنیتی فعلی DIMM را تثبیت و قفل نماید.

$ ndctl list -d nmem0
[
  {
    "dev":"nmem0",
    "id":"cdab-0a-07e0-ffffffff",
    "handle":0,
    "phys_id":0,
    "security":"unlocked"
  }
]
$ ndctl freeze-security  nmem0
security froze 1 nmem.
$ ndctl list -d nmem0
[
  {
    "dev":"nmem0",
    "id":"cdab-0a-07e0-ffffffff",
    "handle":0,
    "phys_id":0,
    "security":"unlocked",
    "security_frozen":true
  }
]

<dimm>

نام دستگاه nmemX یا شماره شناسه dimm. عملیات را به dimm(های) مشخص‌شده محدود می‌کند. کلمه کلیدی all می‌تواند نشان‌دهنده عدم وجود محدودیت باشد.

-b, --bus=

شماره شناسه گذرگاه، یا رشته ارائه‌دهنده (مانند "ACPI.NFIT"). عملیات را به گذرگاه‌های مشخص‌شده محدود می‌کند.

-v, --verbose

انتشار پیام‌های اشکال‌زدایی با جزئیات کامل.

مشخصات نگارش‌های ۱.۷ و ۱.۸ روش‌های اختصاصی دستگاه اینتل (Intel DSM) عملیات مدیریت امنیتی را معرفی کردند: فعال‌سازی گذرواژه، به‌روزرسانی گذرواژه، بازگشایی قفل DIMM، غیرفعال‌سازی امنیت، انجماد امنیت، پاک‌سازی امن (رمزنگاری‌شده)، رونویسی و امحاء، و عملیات گذرواژه ارشد (master).

مدیریت امنیت برای حافظه‌های NVDIMM از دو بخش تشکیل شده است: بخش فرانت‌اند از چارچوب مدیریت کلیدهای هسته لینوکس برای ذخیره‌سازی گذرواژه‌های رمزگذاری‌شده در جاکلیدی (keyring) کرنل استفاده می‌کند. بخش بک‌اند محموله رمزگشایی‌شده (گذرواژه DIMM) را تحویل حافظه DIMM می‌دهد.

فرایند امنیتی با تولید یک کلید ارشد (master key) آغاز می‌شود که برای مهر و موم کردن (رمزگذاری) عبارت عبور DIMM به کار می‌رود که به آن key-encryption-key (kek) نیز می‌گویند. این کلید می‌تواند توسط تراشه TPM یا کلید اصلی سیستم ایجاد شود.

پیش از اجرای هرگونه عملیات امنیتی، تمامی نواحی (regions) مرتبط با DIMM مورد نظر باید غیرفعال شوند. برای عملیات رونویسی و پاک‌سازی کامل (overwrite)، خود dimm نیز باید غیرفعال گردد.

بازگشایی قفل توسط کرنل لینوکس انجام می‌شود، اما پیش از آن باید دستور مقدماتی در initramfs (مانند ndctl load-keys) اجرا شده باشد تا کلیدها در جاکلیدی کاربر هسته قرار گیرند.

برای تنظیم گذرواژه یک DIMM، باید کلید kek در جاکلیدی کرنل موجود باشد. عبارت عبور متنی ساده هرگز توسط کاربر دیده نمی‌شود، بلکه به صورت تصادفی توسط هسته تولید شده و محموله باینری رمزگذاری‌شده آن در مسیر /etc/ndctl/keys ذخیره می‌گردد.

عملیات به‌روزرسانی گذرواژه از همان دستور DSM فعال‌سازی استفاده می‌کند و عبارت عبور قبلی و جدید را در جاکلیدی مدیریت می‌نماید.

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

این عملیات شبیه به حذف گذرواژه است اما هسته پیش و پس از عملیات دستور WBINVD پردازنده را اجرا می‌کند تا از عدم وجود داده‌های کهنه در کَش CPU اطمینان حاصل شود.

این عملیات تمام داده‌های حافظه NVDIMM را به طور کامل پاک و رونویسی می‌کند و ممکن است زمان قابل توجهی ببرد.

این عملیات نیازی به گذرواژه ندارد و باعث می‌شود هرگونه دستور امنیتی به جز پرس‌وجوی وضعیت (status) تا راه‌اندازی بعدی سیستم مسدود و رد شود.

حق نشر (C) 2016 - 2022 متعلق به Intel Corporation تحت مجوز GPLv2.

این نرم‌افزار آزاد است و هیچ‌گونه ضمانتی در حد مجاز قانون ارائه نمی‌شود.

2026-06-30 ndctl